2011-07-14 58 views
0

我想在谷歌地图上创建一个可点击的多边形,并且点击后只会点击多边形将突出显示。它遵循自上而下的平衡仪式,从选择州,然后选择乡镇和最后一节。我只有shp文件与不同县的乡镇信息。我能够将shp文件转换为kml并将它们导入到Google地图中,但不可编辑。我也无法从由kml创建的多边形中提取任何信息,以便我可以使用lat,lon对进一步向下钻取谷歌地图多边形可点击和缩放

回答

0

KML叠加层的Onclick事件仅传递KML的KmlFeatureData部分中的属性。因此,如果您想从KML获取任何参数,则需要将它们放入该部分。多边形点不可访问!单击事件返回以下JSON结构是从您的代码,以及位置接近这通常是多边形/功能中心:

{ 
    author: { 
    email: "[email protected]", 
    name: "Mr Nobody", 
    uri: "http://example.com" 
    }, 
    description: "description", 
    id: "id", 
    infoWindowHtml: "html", 
    name: "name", 
    snippet: "snippet" 
} 

看到http://code.google.com/apis/maps/documentation/javascript/overlays.html#KMLLayers了解更多详情。

您可以使用这些字段之一作为较低级别KML的名称进行深入查看。

或者,您可以读取KML作为XML文件,并阅读并处理其内容客户端,并从获得的数据中绘制多边形....只要您的多边形不详细,此方法就可以。