Si të përcaktoni zonën e një poligoni në OpenLayers 3

Përmbajtje:

Si të përcaktoni zonën e një poligoni në OpenLayers 3
Si të përcaktoni zonën e një poligoni në OpenLayers 3

Video: Si të përcaktoni zonën e një poligoni në OpenLayers 3

Video: Si të përcaktoni zonën e një poligoni në OpenLayers 3
Video: Si të ndryshoni një Printer nga Offline në Online 2024, Mund
Anonim

Shumëkëndëshat janë një mënyrë e shkëlqyeshme për të përfaqësuar sipërfaqen e përafërt të tokës në një hartë, dhe shpesh është e dobishme të njihni zonën e poligonit që keni përcaktuar. Kjo është e mundur në OpenLayers 3; një mjet i fuqishëm i hartës JavaScript.

Ky artikull do t'ju udhëzojë në shtimin e një poligoni, pastaj llogaritjen e sipërfaqes duke përdorur një sferë.

Ju lutemi vini re se ju duhet të keni një hartë të hapur të OpenLayers të instaluar në një faqe në internet për të ndjekur këtë artikull. Nëse nuk keni një të tillë, Si të bëni një hartë duke përdorur OpenLayers 3.

Hapa

7151572 1
7151572 1

Hapi 1. Krijoni një veçori poligoni

Funksioni i konstruktorit të Poligonit ka nevojë për një grup vargjesh koordinative; përcaktoni këtë grup në një ndryshore së pari në mënyrë që ta përdorni më vonë. Thjesht kopjoni rreshtin e mëposhtëm të kodit në tuaj

element:

koordinatat var =

7151572 2
7151572 2

Hapi 2. Shtoni veçorinë në një shtresë vektoriale

Për të shtuar poligonin në hartë, duhet ta shtoni në një burim, të cilin e shtoni në një shtresë vektoriale, të cilën më pas mund ta shtoni në hartë:

var vector_layer = ol.layer. Vector i ri ({burimi: ol.source. Vector i ri ({veçoritë: [polygon_feature]}))}) map.addLayer (vector_layer);

7151572 3
7151572 3

Hapi 3. Transformoni gjeometrinë e veçorisë për të përdorur koordinatat

var current_projection = ol.proj. Projection i ri ({kodi: "EPSG: 4326"}); var new_projection = tile_layer.getSource (). getProjection (); polygon_feature.getGeometry (). transformo (projeksioni aktual, projekti i ri);

7151572 4
7151572 4

Hapi 4. Krijo një sferë për të kryer llogaritjen

Sfera duhet të jetë madhësia e Tokës (duhet të ketë një rreze prej 6.3m metra). Teknikisht, sfera ka një rreze është e barabartë me boshtin gjysmë të madh të elipsoidit WGS84.

var sfera = ol e re. Sfera (6378137);

7151572 5
7151572 5

Hapi 5. Përdorni sferën për të llogaritur zonën duke përdorur metodën gjeodezikeArea ()

Meqenëse metoda siguron një vlerë në metra katrorë, ndajeni me një milion për të marrë kilometra katrorë.

var area_m = sfera.geodezikeZona (koordinatat); var zona_km = zona_m / 1000 /1000; console.log ('zona:', zona_km, 'km²'); // KONSOL: zona: 2317133.7166773956 km²

7151572 6
7151572 6

Hapi 6. Kontrolloni që përgjigjja e zonës të ketë kuptim

Ne e dimë se është e saktë sepse duket se është përafërsisht e njëjta madhësi me Algjerinë, e cila ka një sipërfaqe prej 2, 381, 741 km² (nga Wikipedia).

Recommended: