使用高德地图

使用高德地图的步骤为:

1、将地图控件的地图来源设置为"Custom"。

2、将地图控件的GetMapTile事件的代码设置为:

Dim style As Integer = 8 '地图类型,可选值为6到10,其中6为卫星图
Dim
size As Integer = 1
Dim
scale As Integer = 1
Dim
server As Integer = Rand.Next(1, 5) '随机使用14号服务器
Dim
scl As Integer = 1 '设置为2可以隐藏地图的文字标注,且分辨率更好
Dim
Language As String = "zh_cn" '中文地图,如果需要英文可设置为"en",我 测试只有style为8的时候才支持英文
Dim
url As String
If
style = 7 OrElse style = 8 Then
    url =
"https://webrd0{0}.is.autonavi.com/appmaptile?lang={1}&size={2}&scale={3}&style={4}&x={5}&y={6}&z={7}&scl={8}"
Else

    url =
"https://webst0{0}.is.autonavi.com/appmaptile?lang={1}&size={2}&scale={3}&style={4}&x={5}&y={6}&z={7}&scl={8}"
End
If
e.URI = CExp(url, server, Language, Size, scale, style, e.X, e.Y, e.Z, scl)

GetMapTile事件用于获取第三方地图,其e参数属性有:
 

属性 说明
X 水平位置
Y 垂直位置
Z 缩放(Zoom)倍数
URI 一个WEB地址,用于从第三方地图服务获取指定位置的地图瓦片
Image 用于直接设置该位置的地图瓦片

工作原理:

大部分在线地图都会将整幅地图分解成多个小块(瓦片)传送,每个瓦片的大小为256*256个像素,X和Y分别用于指定瓦片的位置,假定合成的URI为:

https://webrd04.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x=5&y=2&z=3&scl=1

表示要获取第5行第2列的瓦片,Map控件获得这个瓦片后,将其绘制在对应的位置。


本页地址:http://www.foxtable.com/webhelp/topics/6133.htm