全国高分辨率土地利用数据服务 土地利用数据服务 土地覆盖数据服务 坡度数据服务 土壤侵蚀数据服务 全国各省市DEM数据服务 耕地资源空间分布数据服务 草地资源空间分布数据服务 林地资源空间分布数据服务 水域资源空间分布数据服务 建设用地空间分布数据服务 地形、地貌、土壤数据服务 分坡度耕地数据服务 全国大宗农作物种植范围空间分布数据服务
多种卫星遥感数据反演植被覆盖度数据服务 地表反照率数据服务 比辐射率数据服务 地表温度数据服务 地表蒸腾与蒸散数据服务 归一化植被指数数据服务 叶面积指数数据服务 净初级生产力数据服务 净生态系统生产力数据服务 生态系统总初级生产力数据服务 生态系统类型分布数据服务 土壤类型质地养分数据服务 生态系统空间分布数据服务 增强型植被指数数据服务
多年平均气温空间分布数据服务 多年平均降水量空间分布数据服务 湿润指数数据服务 大于0℃积温空间分布数据服务 光合有效辐射分量数据服务 显热/潜热信息数据服务 波文比信息数据服务 地表净辐射通量数据服务 光合有效辐射数据服务 温度带分区数据服务 山区小气候因子精细数据服务
全国夜间灯光指数数据服务 全国GDP公里格网数据服务 全国建筑物总面积公里格网数据服务 全国人口密度数据服务 全国县级医院分布数据服务 人口调查空间分布数据服务 收入统计空间分布数据服务 矿山面积统计及分布数据服务 载畜量及空间分布数据服务 农作物种植面积统计数据服务 农田分类面积统计数据服务 农作物长势遥感监测数据服务 医疗资源统计数据服务 教育资源统计数据服务 行政辖区信息数据服务
Landsat 8 高分二号 高分一号 SPOT-6卫星影像 法国Pleiades高分卫星 资源三号卫星 风云3号 中巴资源卫星 NOAA/AVHRR MODIS Landsat TM 环境小卫星 Landsat MSS 天绘一号卫星影像
本文不仅讨论了地图配置文件,地图服务,请求和响应之间的关系,而且介绍了它们与ArcIMS 空间服务器之间是如何相互作用的。ArcIMS 空间服务器是ArcIMS的支柱。空间服务器能将地图和数据打包成适当的格式,然后在将它发送给客户端浏览器。
ArcIMS地图配置文件,地图服务,请求和响应之间的关系
本文不仅讨论了地图配置文件,地图服务,请求和响应之间的关系,而且介绍了它们与ArcIMS 空间服务器之间是如何相互作用的。ArcIMS 空间服务器是ArcIMS的支柱。空间服务器能将地图和数据打包成适当的格式,然后在将它发送给客户端浏览器。
与空间服务器之间的所有的交流都是使用ArcXML,图1显示了空间服务器和地图配置文件,地图服务,请求和响应之间的相互关系。图表中的数字反映了与空间服务器交流的不同步骤。
第1步,使用Author工具,文本编辑器或XML编辑器来创建一个地图配置文件。该地图配置文件是用ArcXML写的。
第2步,使用Administrator在Spatial Server上发布一个地图服务,第1步产生的地图配置文件是针对这个地图服务的。
第3步,空间服务器收到一个ArcXML格式的请求。
第4步,空间服务器生成一个ArcXML格式的响应。
第1步 创建一个地图配置文件
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<CONFIG>
<ENVIRONMENT>
<LOCALE country="CN" language="zh" variant="" />
<UIFONT color="0,0,0" name="sansserif.plain" size="12" style="regular" />
<SCREEN dpi="96" />
</ENVIRONMENT>
<MAP>
<PROPERTIES>
<ENVELOPE minx="-128.86515248134154" miny="18.924781799316406" maxx="-66.96927103600244" maxy="58.38488352301343" name="Initial_Extent" />
<MAPUNITS units="decimal_degrees" />
</PROPERTIES>
<WORKSPACES>
<SHAPEWORKSPACE name="shp_ws-0" directory="C:\student\arcims\Data" />
</WORKSPACES>
<LAYER type="featureclass" name="States_dd" visible="true" id="0">
<DATASET name="States_dd" type="polygon" workspace="shp_ws-0" />
<SIMPLERENDERER>
<SIMPLEPOLYGONSYMBOL boundarytransparency="1.0" filltransparency="1.0" fillcolor="0,0,255" boundarycaptype="round" />
</SIMPLERENDERER>
</LAYER>
<LAYER type="featureclass" name="US_Cities" visible="true" id="1">
<DATASET name="US_Cities" type="point" workspace="shp_ws-0" />
<SIMPLERENDERER>
<SIMPLEMARKERSYMBOL color="255,0,0" width="6" />
</SIMPLERENDERER>
</LAYER>
</MAP>
</CONFIG>
</ARCXML>
地图配置文件区别请求或响应的标志就是CONFIG元素。CONFIG元素的子元素是用于辅助定义地图的特征,如PROPERTIES,WORKSPACE,和LAYER等子元素。
步骤2:发布一个地图服务
地图服务是运行在ArcIMS空间服务器上的一个应用程序。你可以将地图服务作为空间服务器的一个入口来看待。空间服务器只对运行在其上的地图服务提供相应的服务。
对于一个地图服务而言,一个地图配置文件是必要的(图1第2步)。当发布一个地图服务的时候,你必须指派地图服务给FeatureServer或ImageServer,在本文中的例子是发布成影象地图服务。无论哪种情况,地图配置文件都给地图服务中的每一层提供了绘制的规则。这些规则是地图服务的默认选项。比如,如果地图服务采用图3所示的地图配置文件,那么地图服务将给States_dd层以蓝色的多边形填充显示,US_Cities层以红色的标记符号显示。
第3步:客户端发送请求
地图服务一旦运行在空间服务器上,客户端就能够向地图服务发送请求(图1中的第3步)。请求由ArcIMS HTML客户端浏览器、Java客户端浏览器和ColdFusion 及 ActiveX 连接器产生。
客户端请求与其它类型的ArcXML文件区别的标志是REQUEST元素。图4是客户端请求的典型的一个例子。
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<REQUEST>
<GET_IMAGE>
<PROPERTIES>
<ENVELOPE minx="-125" miny="25" maxx="-67" maxy="50" />
<IMAGESIZE width="700" height="500" />
</PROPERTIES>
</GET_IMAGE>
</REQUEST>
</ARCXML>
当上述的请求发送到图3的地图服务,其结果看起来与Author中初始定义的地图一样。使用的地图服务定义范围和图层符号。
客户端的请求也可以通过请求不同比例尺,改变图层的颜色,显示或隐藏图层,请求属性数据的子集或改变投影,来覆盖掉地图服务的一些信息。图6,客户端给同一个地图服务发出请求,获取新的缩放比例并将 US_Cities层的要素符号改成星形,颜色从蓝色改变为绿色。
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<REQUEST>
<GET_IMAGE>
<PROPERTIES>
<ENVELOPE minx="-88" miny="30" maxx="-67" maxy="50.0" />
<IMAGESIZE width="500" height="350" />
<LAYERLIST>
<LAYERDEF id="1" visible="true" >
<SIMPLERENDERER>
<SIMPLEMARKERSYMBOL type="star" color="0,255,0" width="6"/>
</SIMPLERENDERER>
</LAYERDEF>
</LAYERLIST>
</PROPERTIES>
</GET_IMAGE>
</REQUEST>
</ARCXML>
第4步:客户端接受服务器的响应
<?xml version="1.0" encoding="UTF8"?>
<ARCXML version="1.1">
<RESPONSE>
<IMAGE>
<ENVELOPE minx="-91.7857142857143" miny="30" maxx="-63.2142857142857" maxy="50" />
<OUTPUT url="http://zhuanghy/output/actc_ZHUANGHY1208107213.jpg" />
</IMAGE>
</RESPONSE>
</ARCXML>