Com es determina l'àrea d'un polígon a OpenLayers 3

Taula de continguts:

Com es determina l'àrea d'un polígon a OpenLayers 3
Com es determina l'àrea d'un polígon a OpenLayers 3

Vídeo: Com es determina l'àrea d'un polígon a OpenLayers 3

Vídeo: Com es determina l'àrea d'un polígon a OpenLayers 3
Vídeo: Сад снедаемого короля ► 12 Прохождение Dark Souls 3 2024, Maig
Anonim

Els polígons són una manera excel·lent de representar l’àrea aproximada de la terra en un mapa i, sovint, és útil conèixer l’àrea del polígon que heu definit. Això és possible a OpenLayers 3; una potent eina de mapatge de JavaScript.

Aquest article us guiarà a afegir un polígon i després calcular l'àrea mitjançant una esfera.

Tingueu en compte que heu de tenir instal·lat un mapa OpenLayers que funcioni en una pàgina web per seguir aquest article. Si no en teniu, Com fer un mapa amb OpenLayers 3.

Passos

7151572 1
7151572 1

Pas 1. Creeu una característica de polígon

La funció constructor de polígons necessita una matriu de matrius de coordenades; primer definiu aquesta matriu en una variable perquè pugueu utilitzar-la més tard. Simplement copieu la següent línia de codi al vostre

element:

coordenades var =

7151572 2
7151572 2

Pas 2. Afegiu la característica a una capa vectorial

Per afegir el polígon al mapa, cal afegir-lo a una font, que afegiu a una capa vectorial, que podeu afegir al mapa:

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

7151572 3
7151572 3

Pas 3. Transformeu la geometria de la característica per utilitzar coordenades

var current_projection = new ol.proj. Projection ({codi: "EPSG: 4326"}); var new_projection = tile_layer.getSource (). getProjection (); polygon_feature.getGeometry (). transform (projecció_actual, nova_projecció);

7151572 4
7151572 4

Pas 4. Creeu una esfera per realitzar el càlcul

L’esfera hauria de tenir la mida de la Terra (hauria de tenir un radi de 6,3 m de metres). Tècnicament, l’esfera té un radi igual al semieix major de l’el·lipsoide WGS84.

var esfera = new ol. Sphere (6378137);

7151572 5
7151572 5

Pas 5. Utilitzeu l'esfera per calcular l'àrea mitjançant el mètode geodesicArea ()

Com que el mètode proporciona un valor en metres quadrats, dividiu-lo per un milió per obtenir quilòmetres quadrats.

var area_m = area.geodesicArea (coordenades); var area_km = area_m / 1000/1000; console.log ('area:', area_km, 'km²'); // CONSOLA: àrea: 2317133.7166773956 km²

7151572 6
7151572 6

Pas 6. Comproveu que la resposta de l'àrea tingui sentit

Sabem que és correcte perquè sembla que té aproximadament la mateixa mida que Algèria, que té una superfície de 2, 381, 741 km² (de Wikipedia).

Recomanat: