2017-07-20 5 views
1

Ich brauche Funktion zu speichern, nachdem sie ohne Klicken auf eine Schaltfläche „Speichern“ gezogen werden ...Save Funktion als WKT

ich ausgewählt habe den „drawend“ Hörer zu verwenden, um dies zu tun ...

Dieser Teil meines „drawend“ Code ...

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(); 

          }) 
         } 

Wie Sie mir versuche, viele Dinge sehen können, will ich nicht nur, um die Koordinaten des Merkmals erhältst ich möchte die schreiben, tatsächliches Merkmal, das in "e" an WKT übergeben wird

Nichts, was ich bis jetzt versucht habe, hat geklappt ... kurz, ALLE Features zu ergreifen, was mir nicht hilft.

So bekomme ich ALLE Funktionen ... wie kann ich das für e.feature in 'drawend' tun?

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()); 

Jede Hilfe wird sehr geschätzt !!

Antwort

1

WKT ist eine Textauszeichnungssprache zum Darstellen der Vektorgeometrie und nicht der Features. So versuchen Sie den folgenden Ausschnitt

var format = new ol.format.WKT(); var wktfeaturegeom = format.writeGeometry(e.feature.getGeometry());