Paano Natutukoy ang Lugar ng isang Polygon sa OpenLayers 3

Talaan ng mga Nilalaman:

Paano Natutukoy ang Lugar ng isang Polygon sa OpenLayers 3
Paano Natutukoy ang Lugar ng isang Polygon sa OpenLayers 3

Video: Paano Natutukoy ang Lugar ng isang Polygon sa OpenLayers 3

Video: Paano Natutukoy ang Lugar ng isang Polygon sa OpenLayers 3
Video: how to install VirtualBox and Linux | linux tagalog 2024, Mayo
Anonim

Ang mga polygon ay isang mahusay na paraan upang kumatawan sa tinatayang lugar ng lupa sa isang mapa, at madalas na kapaki-pakinabang na malaman ang lugar ng polygon na iyong tinukoy. Posible ito sa OpenLayers 3; isang malakas na tool sa pagmamapa ng JavaScript.

Gagabayan ka ng artikulong ito sa pagdaragdag ng isang polygon, pagkatapos makalkula ang lugar gamit ang isang globo.

Mangyaring tandaan na kailangan mong magkaroon ng isang gumaganang mapa ng OpenLayers na naka-install sa isang webpage upang sundin ang artikulong ito. Kung wala kang isa, Paano Gumawa ng Mapa Gamit ang OpenLayers 3.

Mga hakbang

7151572 1
7151572 1

Hakbang 1. Lumikha ng tampok na polygon

Ang pagpapaandar ng Polygon konstruktor ay nangangailangan ng isang hanay ng mga coordinate arrays; tukuyin muna ang array na ito sa isang variable upang magamit mo ito sa paglaon. Kopyahin lamang ang sumusunod na linya ng code sa iyong

elemento:

var coordin =

7151572 2
7151572 2

Hakbang 2. Idagdag ang tampok sa isang layer ng vector

Upang idagdag ang polygon sa mapa, kailangan mong idagdag ito sa isang mapagkukunan, na idaragdag mo sa isang layer ng vector, na maaari mong idagdag sa mapa:

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

7151572 3
7151572 3

Hakbang 3. Baguhin ang geometry ng tampok upang magamit ang mga coordinate

var current_projection = bagong ol.proj. Projection ({code: "EPSG: 4326"}); var new_proaction = tile_layer.getSource (). getProjection (); polygon_feature.getGeometry (). ibahin ang anyo (kasalukuyang_project, bagong_project);

7151572 4
7151572 4

Hakbang 4. Lumikha ng isang globo upang maisagawa ang pagkalkula

Ang globo ay dapat na laki ng Earth (dapat mayroong isang radius na 6.3m metro). Technically, ang globo ay may radius ay katumbas ng semi-major axis ng WGS84 ellipsoid.

var sphere = bagong ol. Sphere (6378137);

7151572 5
7151572 5

Hakbang 5. Gamitin ang globo upang makalkula ang lugar gamit ang geodesicArea () na pamamaraan

Dahil ang pamamaraan ay nagbibigay ng isang halaga sa mga square meter, hatiin ng isang milyon upang makakuha ng mga square square.

var area_m = sphere.geodesicArea (coordinate); var area_km = area_m / 1000/1000; console.log ('area:', area_km, 'km²'); // CONSOLE: area: 2317133.7166773956 km²

7151572 6
7151572 6

Hakbang 6. Suriin na ang kahulugan ng lugar ay may katuturan

Alam namin na tama ito sapagkat mukhang humigit-kumulang sa parehong laki ng Algeria, na may sukat na 2, 381, 741 km² (mula sa Wikipedia).

Inirerekumendang: