Poligoni su odličan način za predstavljanje približne površine zemljišta na karti, a često je korisno znati i područje poligona koji ste definirali. To je moguće u OpenLayers 3; moćan JavaScript alat za mapiranje.
Ovaj članak će vas uputiti u dodavanje poligona, a zatim izračunavanje površine pomoću sfere.
Imajte na umu da za praćenje ovog članka trebate imati radnu OpenLayers kartu instaliranu na web stranici. Ako ga nemate, Kako napraviti kartu koristeći OpenLayers 3.
Koraci
Korak 1. Kreirajte poligonsko obilježje
Konstruktorska funkcija poligona treba niz koordinatnih nizova; prvo definirajte ovaj niz u varijabli kako biste ga kasnije mogli koristiti. Jednostavno kopirajte sljedeći red koda u svoj
element:
var koordinate =
Korak 2. Dodajte značajku vektorskom sloju
Da biste dodali poligon na mapu, morate ga dodati izvoru, koji dodate vektorskom sloju, koji zatim možete dodati na mapu:
var vector_layer = novi ol.layer. Vector ({izvor: novi ol.source. Vector ({karakteristike: [poligon_karakteristika]})}}) map.addLayer (vektorski sloj);
Korak 3. Pretvorite geometriju obilježja da biste koristili koordinate
var current_projection = new ol.proj. Projection ({kod: "EPSG: 4326"}); var new_projection = tile_layer.getSource (). getProjection (); polygon_feature.getGeometry (). transform (trenutna_projekcija, nova_projekcija);
Korak 4. Kreirajte sferu za izvođenje proračuna
Sfera bi trebala biti veličine Zemlje (trebala bi imati radijus od 6,3 m metara). Tehnički gledano, radijus sfere jednak je polu-velikoj osi elipsoida WGS84.
var sfera = nova ol. Sphere (6378137);
Korak 5. Pomoću sfere izračunajte površinu pomoću metode geodesicArea ()
Budući da metoda daje vrijednost u kvadratnim metrima, podijelite s milijunom da biste dobili kvadratne kilometre.
var area_m = sphere.geodesicArea (koordinate); var area_km = area_m / 1000 /1000; console.log ('area:', area_km, 'km²'); // KONZOLA: površina: 2317133.7166773956 km²
Korak 6. Provjerite ima li smisla odgovor na područje
Znamo da je to točno jer se čini da je otprilike iste veličine kao Alžir, koji ima površinu od 2, 381, 741 km² (iz Wikipedije).