【发布时间】:2014-12-25 08:53:24
【问题描述】:
我有一个 .kmz 文件,想在地图上显示数据。
如果我解压缩文件并提取 .kml 文件并使用它,我可以获得地图以显示数据。
但是,由于 .kmz 文件托管在其他地方,我需要读取该文件,理想情况下不必在每次更新时都在本地解析它。
我解析 .kml 文件的示例是
var phase1 = new OpenLayers.Layer.Vector("phase1", {
projection: new OpenLayers.Projection("EPSG:4326"),
strategies: [new OpenLayers.Strategy.Fixed()],
protocol: new OpenLayers.Protocol.HTTP({
url: "data.kml",
format: new OpenLayers.Format.KML({
extractStyles: true,
extractAttributes: true
})
})
});
以上内容是否需要更改才能读取 .kmz 文件?
我知道 Google 地图可以直接使用 .kmz 文件来显示数据,但是 OpenLayers 是否可以直接使用 .kmz 文件? 或者是否有必要以某种方式解析 .kmz 文件以提取 .kml 以显示?
【问题讨论】:
-
kmz 文件只是一个已压缩的 kml 文件。因此,您需要创建一个扩展 OpenLayers.Format.KML 的类,该类首先添加了解压缩文件的额外步骤。
标签: openlayers kml kmz