3

我有一个使用 OpenLayers 的地图站点,它使用以下代码导入和显示 GPX 数据:

var lgpx = new OpenLayers.Layer.GML(gpxtracktitle, gpxfileaddress, {

  format: OpenLayers.Format.GPX,

  style: {strokeColor: plmapvars.colourarray[i%7], strokeWidth: 5, strokeOpacity: 0.7},

  projection: new OpenLayers.Projection("EPSG:4326")
});

map.addLayer(lgpx);

我正在寻找一种方法来显示 gpx 数据,而不是将其存储为文件,而是将其保存为 javascript 变量中的字符串:

var gpxstring ="<?xml ... </gpx>"

我尝试将字符串作为数据 uri 传递到上面的代码中,但没有成功。OpenLayers 是否能够以我尝试的方式从字符串中解析 GPX?

提前感谢您的帮助。

4

1 回答 1

4

也许有一个更简单的方法,但你去:

您已经了解OpenLayers.format.GPX [docs]。它有一个read方法,该方法接受一个 XML 文档并返回一个特征数组。然后,您可以将这些功能添加到图层。

如何解析 XML 字符串并创建 XML 文档在考虑浏览器兼容性的如何正确创建和使用 XML 文档对象?

于 2012-01-10T09:17:18.820 回答