Javascript 如何获取经度&;开放层中的线纬度
我得到的线纬度和经度为 线串(1491215.4689647 6893983.20318261494163.0718675 6894785.7919795) 在看到这个解决方案之后。 现在我想做的是在我的网页上显示起点和终点。Javascript 如何获取经度&;开放层中的线纬度,javascript,openlayers,Javascript,Openlayers,我得到的线纬度和经度为 线串(1491215.4689647 6893983.20318261494163.0718675 6894785.7919795) 在看到这个解决方案之后。 现在我想做的是在我的网页上显示起点和终点。 那么,如何从这里提取纬度和经度,以便在我的页面中显示它。您正在查看的是WKT格式。如果这些坐标不在同一投影中,则可能需要将它们重新投影到目标投影。之后,您应该能够在功能上使用基础几何体向openlayers询问任何给定几何体的点。从linestring实例获取点数组并对
那么,如何从这里提取纬度和经度,以便在我的页面中显示它。您正在查看的是WKT格式。如果这些坐标不在同一投影中,则可能需要将它们重新投影到目标投影。之后,您应该能够在功能上使用基础几何体向openlayers询问任何给定几何体的点。从linestring实例获取点数组并对其进行迭代。确保您知道投影/数据模型的正确坐标顺序
希望有帮助 如果您的linestring已在OpenLayers中,则没有理由将其转换为WKT。线串几何图形包含点阵列。可以通过多种方式访问几何体的组件,例如:
drawControls[key].events.register('featureadded', drawControls[key], function(f) {
// First point
var firstPointGeom = f.feature.geometry.components[0].clone();
// Last point
var secondPointGeom = f.feature.geometry.components[f.feature.geometry.components.length - 1].clone();
// Now you got geometries, let's create features from them...
var firstPointFeat = new OpenLayers.Feature.Vector(firstPointGeom);
var secondPointGeom = new OpenLayers.Feature.Vector(secondPointGeom);
yourVectorLayer.addFeatures([firstPointFeat, secondPointGeom]);
});
注意-这适用于线字符串。可能不必详细讨论
clone()
,这取决于特定的用例,无论您是否需要它,或者您可以只使用var firstPointGeom=f.feature.geometry.components[0]代码>我对openlayers非常陌生,所以请您用示例解释一下。您在问题中所涉及的大部分内容实际上都不是特定于openlayers的。例如,确保输入多边形上的投影与目标贴图几何体相同。OpenLayers文档展示了一个在其文档中重新投影多边形的示例,您可以将字符串转换为OpenLayers.Geometry实例。