[英]Get LonLat from added feature in OpenLayers
Well, when I am testing this code 好吧,当我测试这段代码时
var map;
function mapInit(element){
map = new OpenLayers.Map(element);
var osm = new OpenLayers.Layer.OSM();
var vectors = new OpenLayers.Layer.Vector("Vector Layer", {renderers: renderer});
var renderer = OpenLayers.Util.getParameters(window.location.href).renderer;
renderer = (renderer) ? [renderer] : OpenLayers.Layer.Vector.prototype.renderers;
map.addLayers([osm, vectors]);
map.zoomToMaxExtent();
var add = new OpenLayers.Control.DrawFeature(vectors,OpenLayers.Handler.Point, {
featureAdded: getInfoFeature,
multi: false
});
map.addControl(add);
add.activate();
}
function getInfoFeature(event){
var coords = event.lonlat;
console.log(coords);
}
mapInit('siteMap');
It is working good to add features, but the coordinates is null. 添加功能很有用,但坐标为空。 And probably I've missed something?
可能我错过了什么? Is that also possible to set a maximum of addable features?
是否也可以设置最多可添加的功能?
lonlat is not always defined. lonlat并不总是被定义。 Try with :
试试:
function getInfoFeature(event){
var coords = event.geometry.getBounds().getCenterLonLat();
console.log(coords);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.