ArcGIS Viewer for Flex 配置文件解析

来源:互联网 发布:总裁高级研修班知乎 编辑:程序博客网 时间:2024/05/29 15:16

主配置文件config.xml   默认的应用程序配置文件,控制外观和功能,在查看其应用程序和数据内容。

分为四个主要部分:1.一般特性(如:应用程序的标题,样式颜色,字体)

     2.应用程序用户界面(如:部件构成部分浏览器UI)

                                     3.地图内容(如:地图和业务层)

                                     4.构件容器(如:在部件托盘部件)


下面 从概念上说明了浏览器的应用程序配置文件的主要部分:



文件开始和结束以<configuratiion>标签标识作为该查看器应用程序配置文件中。


(一)一般浏览器属性

<httpproxy>到代理服务器。将用于URL 标签有其属性 useproxy="true",以及小部件,支持在他们的配置文件将useproxy标签(DataExtract,GeoRSS,定位和查询部件)

<title>该查看器应用程序的标题文字显示在浏览器的左上角

<subtitle>该浏览器的字幕文本

<logo>位置路径标识图像在浏览器的用户界面显示。这是显示在标题立即离开。图像不超过48*48像素,否则将被调整到改大小。PNG和GIF文件的支持

<style>包含以下样式相关设置:

<colors>颜色集定义了浏览器的外观。有五个属性分别代表:文字颜色、背景颜色、过渡色、选择颜色、标题文字颜色(颜色值是RGB十六进制格式)

<alpha>为浏览器UI组件的透明程度,值的范围从0.0(透明)到1.0(不透明)

<font>主要字体用在用在应用程序(字幕)。

   属性:name:标题的字体名称;

       size:28的字体大小。如果去掉字幕,有一个更大的字体大小。

<geometryservice>一般几何服务要使用的一些部件,当重叠是真实的。

                           属性:url:URL的几何服务;

                                       token:访问ArcGIS Server服务安全使用;

                                       useproxy:是否使用代理与否。如果属实,将使用指定的代理页,布尔值默认值为“false”

<splashpage>引用了一个闪屏显示查看器应用程序时,第一次打开有以下属性

                           属性:label:名称为splashpage使用的部件;

                                       config:位置路径的初始页面部件的配置文件;

                                       url:URL的初始页面widget的.swf文件

<bing>如果使用地图或者地理编码,需要提供自己密钥Bing地图。

                           属性:key:your bing key.Required

一般属性子集实例:

<configurration>

<title>ArcGIS Viewer for Flex</title>

<subtitle>……using ArcGIS</subtitle>

<logo>assets/images/logo.png</logo>

<!-- <mce:style>
<colors>0xFFFFFF,0x333333,0x101010,0x000000,0xFFD700</colors>
<alpha>0.8</alpha>
--> <mce:style>   

<style>
<colors>0xFFFFFF,0x333333,0x101010,0x000000,0xFFD700</colors>
<alpha>0.8</alpha>
</style>

<bing key="your-bing-key"/>

<configuration>

(二)UI elements

这些都是独立的部件(外构件的容器内),通常的形式查看器应用程序的布局/UI的一部分。这些部件包括查看器应用程序的控制。四小部件表单的默认浏览器的用户界面:导航部件(Navigation widget),部件概述地图(Overview Map widget),地图切换器构件(Map Switcher widget),(HeaderController)部件。

<widget>对每个控件独立顶以标签,构成了浏览器的用户界面。

下为事例:

<widget  left="10"  top="50"  config="widgets/Navigation/NavigationWidget.xml"   url="widgets/Navigation/NavigationWidget.swf"/>

<widget right="-2" bottom="-2"   config="widgets/OverviewMap/OverviewMapWidget.xml" url="widgets/OverviewMap/OverviewMapWidget.swf"/>

<widget right="20" top="55"    config="widgets/MapSwitcher/MapSwitcherWidget.xml" url="widgets/MapSwitcher/MapSwitcherWidget.swf"/>

<widget left="0"   top="0"     config="widgets/HeaderController/HeaderControllerWidget.xml" url="widgets/HeaderController/HeaderControllerWidget.swf"/>

(三)Map content

这种查看器应用程序配置文件的部分定义了浏览器的地图内容。它开始和结束以<map>标签,他有第三个子标签<basemaps>,<operationallayers>和<lods>

地图的内容可以定义两种方法之一:

1.通过expliciting数据层定义在配置文件(如:底图和业务层)

2.通过访问,从ArcGIS.com发布的Web地图

<map>定义中的地图查看器组件

属性:initialextent 初始地图的额空间范围。在最小XY和最大XY应用程序的空间参考。应用程序的空间参考是您的第一个基础层空间参考。

fullextend 这个属性是使用导航控件进行放大,以“最大的空间范围”的地图。语法是为initalextent相同。

                  center 地图的初始中心点

  level 最初的水平,打开地图时。该级别的地图上检测而限定

  scale 地图的初始中心点

  top 从以应用程序的顶部边缘地图上边缘像素的垂直距离。默认为0个像素,而40是最好的做法时使用HeaderController部件

  bottom 从以应用程序的底部边缘图的底部边缘像素的垂直距离。默认为0像素

  left 从到应用程序的左边缘图做边缘像素的水平距离。默认为0像素

          right 从到应用程序的右边缘图做边缘像素的水平距离。默认为0像素

  itemid 指的是从ArcGIS.com网站地图项目的ID。该浏览器可以访问和查看ArcGIS.com发布的Web地图

  esrilogovisible 确定是否显示ESRI的标志,布尔值,默认为“true”

  openhandcursorvisible 确定是否使用在应用程序中打开手型光标,布尔值,默认为“false”

  paneasingfactor 调整后的地图平移“宽松”。有效值介于0和1。值1为关闭缓和。没有设置默认为0.2

  scalebarvisible 确认是否在应用程序中显示比例尺,布尔值,默认为“true”

  zoomslidervisible 决定是否在应用程序中显示映射缩放滑块,布尔值,默认为“false”

  wkid 指的是空间参考地图ID号,如果连个WKT和wkid指定,wkid将被使用

  wkt 指的是地图的空间参考文本

  wrapround180 是否启用连续跨越日界线平移,布尔值,默认值“false”

下为实例:

<map    initialextent="x  x   x   x "  fullextent="x  x  x  x "   top=" x ">

<basemaps>地图服务列表用做在浏览器的基础地图,只有一个基础地图可以看见的事件,但可以包含很多图层,创建混合地图,设置name属性要对所有在地图图层组。多图服务可用地图切换部件来使用。<layer>是一个地图服务,在浏览器显示的层,可重复多次使用。

<operationallayers>列出的地图是在浏览器中的基础地图数据之上叠加服务。业务层可以访问无论从地图切换更多按钮和图层列表小部件。<layer>是一个地图服务,在浏览器显示的层,可重复多次使用。

<lods>细节(检测限)或设置规模级别。默认情况为底图水平,也可指定自己的水平。属性包括分辨率和规模。

下为实例:

<map>

<lods><!-- only show few levels -->

<lod resolution="78271.5169639999" scale="295828763.795777"/>  

<lod resolution="9783.93962049996" scale="36978595.474472"/>

<lod resolution="1222.99245256249" scale="4622324.434309"/>

<lod resolution="152.874056570411" scale="577790.554289"/>

</lods>

……

</map>

下面为地图内容代码示例:

<map initialextent="x  x  x  x"  top="40"  wraparound180="true">

<basemaps>

<layer label="街道图" type="tiled" visible="true" url="http://server.arcgisonline.com/ArcGIS/rest/services/……/MapServer"/>

<layer label="航空图" type="tiled" visible="true" url="http://server.arcgisonline.com/ArcGIS/rest/services/……/MapServer"/>

<basemaps>

<operationallayers>

<layer label="边界和地点"  type=“tiled” visible=“false” url=“http://server.arcgisonline.com/ArcGIS/rest/services/……/MapServer”/>

<layer label="火灾"  type=“feature” visible=“false” popupconfig=“popups/PopUp_Fires.xml”url=“http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Fire/Sheep/FeatureServer/0”/>

<layer label="地震"  type=“dynamic” visible=“false” url=“http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Earthquakes/Since_1970/MapServer”/>

</operationallayers>

</map>

(四)Widget container

一个widget容器是一个概念结构,就是一个小部件,它通常存储在一个一个小部件的容器。

<widgetcontainer>定义为查看器应用程序部件的容器。

下面为书签和查找地址部件都存储在一个小部件容器代码:

<widgetcontainer layout="float">

<widget label=“书签” icon="assets/images/……" config="apps/zh_CN/BookmarkWidget.xml" url="widgets/GeoRSS/GeoRSSWidget.swf"/>

<widget label=“测量” icon="assets/images/……" config="apps/zh_CN/XXX.xml" url="widgets/XXX/XXX.swf"/>

<widgetgroup label="更多微件"/>

<widget label="查找地址"icon="assets/images/……" config="apps/zh_CN/XXX.xml" url="widgets/XXX/XXX.swf"/>

<widget label="查找数据"icon="assets/images/……" config="apps/zh_CN/XXX.xml" url="widgets/XXX/XXX.swf"/>

</widgetgroup>

</widgetcontainer>

1 0