ArcIMS中的投影参数:
(1) COORDSYS:
定义数据层的投影元数据。请注意该元素只用于申明数据层的投影, 而非对层的投影进行转换。如果没有申明该元素,则ArcIMS读取数据本身的投影信息,如shapefile的*.prj文件或ArcSDE中的空间参考信息等。
在地图配置文件中使用COORDSYS元素的例子1:
注:与COORDSYS元素配套的id是ArcIMS区别各种投影的编号。指定了投影的id,就指定了某种特定的投影。
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<CONFIG>
<ENVIRONMENT>
<LOCALE country="US" language="en" variant="" />
<UIFONT color="0,0,0" name="Arial" size="12" style="regular" />
</ENVIRONMENT>
<MAP>
<PROPERTIES>
<ENVELOPE minx="-14628440.851850007" miny="-9020047.848073646" maxx="15705351.712200116" maxy="8748562.401522137" name="Initial_Extent" />
<MAPUNITS units="meters" />
</PROPERTIES>
<WORKSPACES>
<SHAPEWORKSPACE name="shp_ws-12" directory="c:\data" />
</WORKSPACES>
<LAYER type="featureclass" name="Ocean" visible="true" id="22">
<DATASET name="WORLD30" type="polygon" workspace="shp_ws-12" />
<SIMPLERENDERER>
<SIMPLEPOLYGONSYMBOL fillcolor="240,255,255" />
</SIMPLERENDERER>
</LAYER>
<LAYER type="featureclass" name="Robinson" visible="true" id="0">
<DATASET name="cntry94_Robinson" type="polygon" workspace="shp_ws-12" />
<COORDSYS id="54030" />
<SIMPLERENDERER>
<SIMPLEPOLYGONSYMBOL filltype="solid" fillcolor="0,153,102" />
</SIMPLERENDERER>
</LAYER>
<LAYER type="featureclass" name="Mollweide" visible="true" id="1">
<DATASET name="Cntry94_Mollweide" type="polygon" workspace="shp_ws-12" />
<COORDSYS id="54009" />
<SIMPLERENDERER>
<SIMPLEPOLYGONSYMBOL filltransparency="0.0" boundarywidth="3" boundarycolor="27,27,127" />
</SIMPLERENDERER>
</LAYER>
</MAP>
</CONFIG>
</ARCXML>
发送普通的GET_IMAGE请求:
<?xml version="1.0" encoding="UTF-8" ?>
<ARCXML version="1.1">
<REQUEST>
<GET_IMAGE>
<PROPERTIES>
</PROPERTIES>
</GET_IMAGE>
</REQUEST>
</ARCXML>
服务器返回的图片(如图1)中,因为两图层各自的坐标系统不同,所以两幅图片没有重叠在一起。
(2) FEATURECOORDSYS,
要把数据转换成的投影坐标.
(3) FILTERCOORDSYS
当前客户端的投影坐标。
可以在地图配置文件中使用投影元素,但这时FILTERCOORDSYS和FEATURECOORDSYS的值必须相同,并且成为服务器端默认的投影方式。这时,MAPUNITS元素会被忽略。
在地图配置文件中使用FILTERCOORDSYS和FEATURECOORDSYS元素的例子2:
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<CONFIG>
<ENVIRONMENT>
<LOCALE country="US" language="en" variant=""/>
<UIFONT color="0,0,0" name="Arial" size="12" style="regular"/>
</ENVIRONMENT>
<MAP dynamic="true">
<PROPERTIES>
<MAPUNITS units="decimal_degrees"/>
<FEATURECOORDSYS id="54030" />
<FILTERCOORDSYS id="54030" />
<ENVELOPE minx="-16986727.8564406" miny="-12740045.8907383" maxx="16986727.8564406" maxy="12740045.8939226" />
<!–ENVELOPE minx="-173.83000907897946" miny="-90.0" maxx="180.0" maxy="90.0" name="Initial_Extent" /–>
</PROPERTIES>
<WORKSPACES>
<SHAPEWORKSPACE name="shp_ws-14" directory="E:\student\Custom_ArcXML\CAXL\Database\World"/>
</WORKSPACES>
<LAYER type="featureclass" name="World Grid" visible="true" id="Grid">
<DATASET name="grid" type="polygon" workspace="shp_ws-14"/>
<SIMPLERENDERER>
<SIMPLEPOLYGONSYMBOL boundarytransparency="1.0" filltransparency="1.0" fillcolor="69,138,195" boundarycaptype="round" boundarycolor="255,255,255"/>
</SIMPLERENDERER>
</LAYER>
<LAYER type="featureclass" name="Countries" visible="true" id="Countries">
<DATASET name="country" type="polygon" workspace="shp_ws-14"/>
<SIMPLERENDERER>
<SIMPLEPOLYGONSYMBOL boundarytransparency="1.0" filltransparency="1.0" fillcolor="148,172,151" boundarycaptype="round" boundarycolor="64,64,64"/>
</SIMPLERENDERER>
</LAYER>
</MAP>
</CONFIG>
</ARCXML>
(4) ENVELOPE(可选):在请求(request)中,ENVELOPE的值与FILTERCOORDSYS一致;在response(响应)中,ENVELOPE与FEATURECOORDSYS一致。
相关文章