我需要在绘制后保存功能而不点击“保存”按钮...
我选择使用“drawend”听众来做这件事......
这是我的“drawend”代码的一部分......
draw.on('drawend', function (e) {
if (webMapValues.drawType == 'Polygon') {
//var writer = new ol.format.GeoJSON();
//var geojsonStr = writer.writeFeatures(e.feature.getGeometry().getCoordinates());
var format = new ol.format.WKT();
var feature = format.readFeature(e.feature);
var justNowFeature = e.feature;
var featureGeom = justNowFeature.getGeometry();
})
}
正如你所看到的,我正在尝试很多东西,我不想只想得到我希望写出的实际特征的坐标“e”传递给WKT
到目前为止,我没有尝试过任何功能......没有抓住所有功能,这对我没有帮助。
这就是我获取所有功能的方法......我怎么能在'drawend'中为e.feature做这个?
var drawLayer = rcisMapService.getLayer("Draw");
var drawSource = drawLayer.getSource();
//Getsource
var features = drawSource.getFeatures();
var writer = new ol.format.GeoJSON();
var geojsonStr = writer.writeFeatures(drawSource.getFeatures());
非常感谢任何帮助!!
答案 0 :(得分:1)
WKT是一种文本标记语言,用于表示矢量几何而非特征。 所以试试以下片段
var format = new ol.format.WKT();
var wktfeaturegeom = format.writeGeometry(e.feature.getGeometry());