2009年4月3日星期五

浅谈ArcGIS Flex API使用非ArcGIS Server数据源问题

很多人问过我,ArcGIS Flex API能不能不使用ArcGIS Server,估计主要目标还是切片底图。中国免费开放的最详细的地图数据大概也就是1:400万的,对于有更详细地图需求的又不想自己架服务器的无疑是一个大问题,所以都想用Google或者Virtual Earth的图。

事实上,这是可以的。这里主要集中在两块问题,如果你搞明白了,那就水到渠成了。

1.你需要应用的数据源的切片方式,比如Google的数据,每个切片访问的URL是多少,你得清楚,在此基础上,你需要继承ArcGISTiledMapServiceLayer定义一个你自己的图层,并重写其getTileURL()方法。

2.在使用这个自定义图层的时候,一定要指定其url属性值,这个url“必须”是一个ArcGIS Server图层的地址,并且这个ArcGIS Server图层的空间参考和你的数据源(比如Google Map)必须相同。你可能会想,那不还是得需要ArcGIS Server么?其实不用,你可以将其指向其它url,但是这个url需要可以输出和ArcGIS Server图层一样的JSON信息。

说到这里,你应该明白怎么做了吧?

2 条评论:

菩提老王 说...

“需要继承TiledMapServiceLayer”
:)

Unknown 说...

贴个示例代码出来呗