我注意到,当您在谷歌地图中绘制折线时,您会设置它的宽度(以像素为单位)(笔画宽度)。有没有办法可以将其设置为米?
不幸的是,我不知道有什么简单的方法可以做到这一点。该 API 似乎没有这方面的文档,我认为该功能不受支持。
一个问题是,像素在 API 内的不同缩放级别代表不同的米数。因此,如果缩放级别发生变化,这将是一个动态量。
一种选择可能是计算宽度(以像素为单位),以表示给定缩放级别的给定米数。为此,您必须根据每个缩放级别的地图比例编写自己的函数。这些数据似乎可以在这里找到:
http://webhelp.esri.com/arcgisserver/9.3/java/index.htm#designing_overlay_gm_mve.htm http://webhelp.esri.com/arcgisserver/9.3/java/index.htm#designing_overlay_gm_mve.htm
20 : 1128.497220
19 : 2256.994440
18 : 4513.988880
17 : 9027.977761
16 : 18055.955520
15 : 36111.911040
14 : 72223.822090
13 : 144447.644200
12 : 288895.288400
11 : 577790.576700
10 : 1155581.153000
9 : 2311162.307000
8 : 4622324.614000
7 : 9244649.227000
6 : 18489298.450000
5 : 36978596.910000
4 : 73957193.820000
3 : 147914387.600000
2 : 295828775.300000
1 : 591657550.500000
然后,您可以根据您尝试表示的米和当前缩放级别动态设置像素值。
可能仍然存在问题,因为您生成的像素大小可能与屏幕像素大小不对应,具体取决于 API 如何处理屏幕 DPI 和分辨率
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)