[英]OpenLayers 2 - How to get coordinates for selected feature (point)
我想获取图层上选定点的坐标。
我找到了这样的解决方案:
myLayer.features[0].geometry.getVertices()[0]
但这不一定是我所需要的,因为它仅适用于一个具体点。
我想通过单击鼠标来选择点,然后获取有关此的信息。
我的问题有什么解决办法吗?
这可以帮助您:
new OpenLayers.Control.SelectFeature(layer,{
hover:true,
eventListeners:{
onSelect:function(e){
alert(e.feature.geometry.getVertices()[0].x);
alert(e.feature.geometry.getVertices()[0].y);
}
}
});
好的,我找到了适合我的解决方案:(我正在使用GeoExt)。 我刚刚在代码中添加了它:
new OpenLayers.Layer.Vector("warstwa", {
styleMap: new OpenLayers.StyleMap({
'default': styl
}),
protocol: new OpenLayers.Protocol.HTTP({
url: '',
format: new OpenLayers.Format.GeoJSON()
}),
strategies: [new OpenLayers.Strategy.Fixed()],
eventListeners: {
featureselected: function(e) {
var xValue = Ext.getCmp('xValue');
var yValue = Ext.getCmp('yValue');
xValue.setValue(e.feature.geometry.getVertices()[0].x);
yValue.setValue(e.feature.geometry.getVertices()[0].y);
}
});
...对我有用:)
您可以在http://acanimal.github.io/Openlayers-Cookbook/ (来源https://github.com/acanimal/Openlayers-Cookbook )找到OpenLayers Cookbook的样本,其中包含用于功能选择的样本。
干杯。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.