gpt4 book ai didi

polygon - OpenLayers 3获取WKT多边形字符串

转载 作者:行者123 更新时间:2023-12-02 04:13:30 25 4
gpt4 key购买 nike

我有一个 openlayers 3 map ,可以在其中绘制多边形。

我会返回代表绘制多边形的 WKT 字符串。

我该怎么做?

JSFiddle 代码 http://jsfiddle.net/michelejs/3zawt33b/7/

这是我的 map :

map = new ol.Map({
target: 'map',
layers: [raster,vector],
view: new ol.View({
center: ol.proj.fromLonLat([11.249367, 43.774298]),
zoom: 15
})
});

这里是帮助我绘制多边形的 intaractions:

function addInteraction() {

var ct = 0;
draw = new ol.interaction.Draw({
source: source,
type: 'Polygon',
geometryFunction: function (c, g) {
if (goog.isDef(g)) {
g.setCoordinates(c);
} else {
g = new ol.geom.Polygon(c);
}
if (c[0].length > ct) {
console.log('click coord : ' + c[0][c[0].length - 1]);
var coord = c[0][c[0].length - 1];
$('div#coordinate').html( $('div#coordinate').html() + "<p>" + ( Number(coord[0]).toFixed(2) ) + " - " + ( Number(coord[1]).toFixed(2) ) + "</p>" );
coordinates.push(coord);
ct = c[0].length;
} else {
console.log('move coord : ' + c[0][c[0].length - 1]);

}

return g;
}
});
draw.on('drawend', function(e) {
isin = e;
checkIfIn();
lastFeature = e.feature;

//write WKT Polygon Code in div#getAsWK
})

draw.on('drawstart', function (e) {
source.clear();
});


map.addInteraction(draw);

}
map.addInteraction(draw);

最佳答案

ol3 包含用于此目的的 ol.format.WKT 类。使用 writeGeometry() 方法,如下所示:

var format = new ol.format.WKT(),
wkt = format.writeGeometry(yourFeature.getGeometry());

请参阅 API 文档:http://openlayers.org/en/v3.0.0/apidoc/ol.format.WKT.html#writeGeometry

fiddle :http://jsfiddle.net/igor23/3zawt33b/9/

关于polygon - OpenLayers 3获取WKT多边形字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35232313/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com