首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >KML -> GPolygon -> MKPolyline?

KML -> GPolygon -> MKPolyline?
EN

Stack Overflow用户
提问于 2010-07-11 06:29:42
回答 1查看 683关注 0票数 1

所以我有几个(ginormous) KML,我已经成功地将它们转换为180多个Google-Maps编码的多边形/折线。谁有任何经验或想法,如何将这些转换成适合在ios4的MapKit上使用的MKPolyline对象?

这就是我现在看到的……

代码语言:javascript
复制
var sw = new GLatLng(25.8373770496571, -106.645646000733);
var ne = new GLatLng(36.50070452533, -93.50813136878951);
var bounds = new GLatLngBounds(sw, ne);
var mapZoomLevel = map.getBoundsZoomLevel(bounds);
var mapCenter = new GLatLng(31.16904078749355, -100.07688868476126)
map.setCenter(mapCenter, mapZoomLevel);

var polygon1 = new GPolygon.fromEncoded({
  polylines: [
    {points: "sxw}En~}dR@loC?puCAtt@[.......]@T^DE?z_@G^Jjw@G?",
     levels: "PBADDCCCDDACDDDDDDDBCB[.......]@EGFDEFDEDCCCDEDP",
     color: "#0000ff",
     opacity: 0.7,
     weight: 3,
     numLevels: 18,
     zoomFactor: 2}],
  fill: true,
  color: "#0000ff",
  opacity: 0.4,
  outline: true
});
map.addOverlay(polygon1);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-07-13 02:43:30

答案是不要进行这种类型的从KML到编码的GPolygon再到MKPolyline的转换。完全没有必要执行GPolygon步骤。只要有KML而不是压缩的KMZ,就可以解析XML来获得坐标字符串来填充MKPolyline。

如果你真的想从编码的GPolygon转到MKPolyline,你必须解码GPolygon。看起来Stefano Buliani看透了how to do this

我发现最有用的一些最适用的例子是Reluctant BloggerThe Navarra Group以及Mostly Harmless和(用于解析) SeismicXML

所有这些都是从尝试获取一个shapefile并使其在MapKit中运行开始的。虽然这不是一个简单的解决方案,但我现在已经有了一个可以工作的(仅限Mac的)进程。(提示: shapefile to kml让你失望了?使用GDAL框架的一部分ogr2ogr )。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3221061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档