当我们在用arcgis server 构建切片时,我们会发现在缓存生成的conf.xml中有这样的片段:
<TileOrigin xsi:type="typens:PointN">
<X>-5123200</X>
<Y>10002100</Y>
</TileOrigin>
<TileCols>512</TileCols>
<TileRows>512</TileRows>
<DPI>96</DPI>
<LODInfos xsi:type="typens:ArrayOFLODInfo">
<LODInfo xsi:type="typens:LODInfo">
<LevelID>0</LevelID>
<Scale>125000000</Scale>
<Resolution>33072.982812632297</Resolution>
</LODInfo>
<LODInfo xsi:type="typens:LODInfo">
<LevelID>1</LevelID>
<Scale>64000000</Scale>
<Resolution>16933.367200067736</Resolution>
</LODInfo>
</LODInfos>
在上述片段中<LODInfo>代表了每一级切片的信息,<LevelID>代表切片的级数。
在这里,<Scale>代表比例尺。比例尺是表示图上距离比实地距离缩小的程度,也叫缩尺。公式为:比例尺=图上距离/实地距离。用数字的比例式或分数式表示比例尺的大小。例如地图上1厘米代表实地距离500千米,可写成:1∶50,000,000或写成:1/50,000,000。
Resolution和Scale的转换算法:
Resolution跟dpi有关,跟地图的单位有关。(dpi代表每英寸的像素数)
举例:
再将米转换为度 16933.3672/111194.872221777 =0.1522855043731385度
因此当地图单位为度时,近似计算在1:64000000 对应的Resolution为0.1522855043731385度
验证结果:
<LODInfos xsi:type="typens:ArrayOFLODInfo">
<LODInfo xsi:type="typens:LODInfo">
<LevelID>0</LevelID>
<Scale>64000000</Scale>
<Resolution>0.1522855043731379</Resolution>
</LODInfo>
<LODInfo xsi:type="typens:LODInfo">
<LevelID>1</LevelID>
<Scale>32000000</Scale>
<Resolution>0.076142752186568949</Resolution>
</LODInfo>
</LODInfos>