Πώς να προσδιορίσετε την περιοχή ενός πολύγωνου στα OpenLayers 3

Πίνακας περιεχομένων:

Πώς να προσδιορίσετε την περιοχή ενός πολύγωνου στα OpenLayers 3
Πώς να προσδιορίσετε την περιοχή ενός πολύγωνου στα OpenLayers 3

Βίντεο: Πώς να προσδιορίσετε την περιοχή ενός πολύγωνου στα OpenLayers 3

Βίντεο: Πώς να προσδιορίσετε την περιοχή ενός πολύγωνου στα OpenLayers 3
Βίντεο: Πως να εγκαταστήσεις Windows 10 σε άλλον υπολογιστή βήμα - βήμα | Kordmeister 2024, Ενδέχεται
Anonim

Τα πολύγωνα είναι ένας πολύ καλός τρόπος για να αναπαραστήσετε την κατά προσέγγιση έκταση της γης σε έναν χάρτη και είναι συχνά χρήσιμο να γνωρίζετε την περιοχή του πολυγώνου που έχετε ορίσει. Αυτό είναι δυνατό στο OpenLayers 3. ένα ισχυρό εργαλείο χαρτογράφησης JavaScript.

Αυτό το άρθρο θα σας καθοδηγήσει στην προσθήκη ενός πολυγώνου και στη συνέχεια τον υπολογισμό της περιοχής χρησιμοποιώντας μια σφαίρα.

Λάβετε υπόψη ότι πρέπει να έχετε εγκατεστημένο έναν χάρτη OpenLayers σε μια ιστοσελίδα για να ακολουθήσετε αυτό το άρθρο. Εάν δεν διαθέτετε, Τρόπος δημιουργίας χάρτη χρησιμοποιώντας το OpenLayers 3.

Βήματα

7151572 1
7151572 1

Βήμα 1. Δημιουργήστε μια δυνατότητα πολυγώνου

Η συνάρτηση κατασκευής Polygon χρειάζεται έναν πίνακα συστοιχιών συντεταγμένων. καθορίστε πρώτα αυτόν τον πίνακα σε μια μεταβλητή, ώστε να μπορείτε να τον χρησιμοποιήσετε αργότερα. Απλώς αντιγράψτε την ακόλουθη γραμμή κώδικα στη δική σας

στοιχείο:

συντεταγμένες var =

7151572 2
7151572 2

Βήμα 2. Προσθέστε τη δυνατότητα σε ένα επίπεδο διανύσματος

Για να προσθέσετε το πολύγωνο στο χάρτη, πρέπει να το προσθέσετε σε μια πηγή, την οποία προσθέτετε σε ένα διανυσματικό επίπεδο, το οποίο μπορείτε στη συνέχεια να προσθέσετε στο χάρτη:

var vector_layer = new ol.layer. Vector ({source: new ol.source. Vector ({features: [polygon_feature]}))}) map.addLayer (vector_layer);

7151572 3
7151572 3

Βήμα 3. Μετατρέψτε τη γεωμετρία της λειτουργίας για να χρησιμοποιήσετε συντεταγμένες

var current_projection = new ol.proj. Projection ({code: "EPSG: 4326"}); var new_projection = tile_layer.getSource (). getProjection (); polygon_feature.getGeometry (). transform (τρέχουσα_προβολή, νέα_προβολή);

7151572 4
7151572 4

Βήμα 4. Δημιουργήστε μια σφαίρα για να εκτελέσετε τον υπολογισμό

Η σφαίρα πρέπει να έχει το μέγεθος της Γης (πρέπει να έχει ακτίνα 6,3 μέτρα). Τεχνικά, η σφαίρα έχει ακτίνα ίση με τον ημι-κύριο άξονα του ελλειψοειδούς WGS84.

var σφαίρα = νέα ol. Sphere (6378137);

7151572 5
7151572 5

Βήμα 5. Χρησιμοποιήστε τη σφαίρα για να υπολογίσετε την περιοχή χρησιμοποιώντας τη μέθοδο geodesicArea ()

Επειδή η μέθοδος παρέχει μια τιμή σε τετραγωνικά μέτρα, διαιρέστε με ένα εκατομμύριο για να πάρετε τετραγωνικά χιλιόμετρα.

var περιοχή_m = σφαίρα. geodesicArea (συντεταγμένες); var area_km = area_m / 1000 /1000; console.log ('area:', area_km, 'km²'); // ΚΟΝΣΟΛΑ: περιοχή: 2317133.7166773956 km²

7151572 6
7151572 6

Βήμα 6. Βεβαιωθείτε ότι η απάντηση περιοχής έχει νόημα

Γνωρίζουμε ότι είναι σωστό επειδή φαίνεται να έχει περίπου το ίδιο μέγεθος με την Αλγερία, η οποία έχει έκταση 2, 381, 741 km² (από τη Wikipedia).

Συνιστάται: