Cara mendapatkan lokasi fitur di OpenLayers v3


11

Setelah saya menggunakan interaksi menggambar atau memodifikasi interaksi saya memiliki pendengar yang mengembalikan fitur yang dimodifikasi atau ditambahkan.

Contoh

draw.on('drawend', function (event) {
    // get the feature
    var feature = event.element;
    // ...listen for changes on it
    logStatus(feature.getId());
});

Saya tahu cara mendapatkan id, tetapi saya memerlukan lokasi (lon lat) dari fitur tersebut karena saya perlu menyimpannya ke DB, bagaimana saya bisa melakukannya? Saya tidak menemukannya di API.

Jawaban:


27

Jika fitur poin gunakan

var coord = event.feature.getGeometry().getCoordinates();

Untuk geometri titik getCoordinatesmengembalikan array 2 angka. Angka pertama adalah xkoordinat. Angka kedua adalah ykoordinat.

Dan jika Anda ingin mengonversi coordke garis bujur dan garis lintang, gunakan:

coord = ol.proj.transform(coord, 'EPSG:3857', 'EPSG:4326');
var lon = coord[0];
var lat = coord[1];

Di atas mengasumsikan bahwa proyeksi tampilan peta Anda adalah Web Mercator (EPSG: 3857), yang merupakan default.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.