OpenLayers дахь олон өнцөгтийн талбайг хэрхэн тодорхойлох вэ 3

Агуулгын хүснэгт:

OpenLayers дахь олон өнцөгтийн талбайг хэрхэн тодорхойлох вэ 3
OpenLayers дахь олон өнцөгтийн талбайг хэрхэн тодорхойлох вэ 3

Видео: OpenLayers дахь олон өнцөгтийн талбайг хэрхэн тодорхойлох вэ 3

Видео: OpenLayers дахь олон өнцөгтийн талбайг хэрхэн тодорхойлох вэ 3
Видео: Солонгос хэлний хичээл | Анхан шат №01 2024, May
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 ({эх сурвалж: new ol.source. Vector ({онцлог: [polygon_feature]})}) map.addLayer (vector_layer);

7151572 3
7151572 3

Алхам 3. Онцгой байдлын геометрийг координатыг ашиглан өөрчилнө үү

var current_projection = new ol.proj. Projection ({код: "EPSG: 4326"}); var new_projection = tile_layer.getSource (). getProjection (); polygon_feature.getGeometry (). хувиргах (одоогийн_төсөл, шинэ_проекц);

7151572 4
7151572 4

Алхам 4. Тооцооллыг гүйцэтгэх бөмбөрцөг үүсгэнэ

Бөмбөрцөг нь дэлхийн хэмжээтэй байх ёстой (6.3 метр радиустай байх ёстой). Техникийн хувьд бөмбөрцөг нь WGS84 эллипсоидын хагас гол тэнхлэгтэй тэнцүү радиустай байдаг.

var kür = new ol. Sphere (6378137);

7151572 5
7151572 5

Алхам 5. ГеодезикАреа () аргыг ашиглан талбайг тооцоолохын тулд бөмбөрцөг ашиглана уу

Энэ арга нь квадрат метрээр утгыг өгдөг тул нэг саяд хувааж квадрат километр авах боломжтой.

var area_m = хүрээ.geodesicArea (координат); var area_km = area_m / 1000/1000; console.log ('талбай:', бүс_км, 'км²'); // КОНСОЛ: талбай: 2317133.7166773956 км²

7151572 6
7151572 6

Алхам 6. Талбайн хариулт нь утга учиртай эсэхийг шалгаарай

Энэ нь 2, 381, 741 км² талбайтай Алжиртай ойролцоогоор ижил хэмжээтэй юм шиг харагдаж байгаа тул энэ нь зөв гэдгийг бид мэднэ (Википедиагаас).

Зөвлөмж болгож буй: