Ko'pburchaklar - bu erning taxminiy maydonini xaritada aks ettirishning ajoyib usuli va ko'pincha siz aniqlagan ko'pburchakning maydonini bilish foydali bo'ladi. Bu OpenLayers 3 da mumkin; kuchli JavaScript xaritalash vositasi.
Ushbu maqola sizga ko'pburchak qo'shishga, so'ngra shar yordamida hisoblangan maydonni olishga yordam beradi.
E'tibor bering, ushbu maqolaga amal qilish uchun veb -sahifada OpenLayers ishchi xaritasi o'rnatilgan bo'lishi kerak. Agar sizda yo'q bo'lsa, OpenLayers yordamida xaritani qanday qilish kerak 3.
Qadamlar
Qadam 1. Ko'pburchak xususiyatini yarating
Polygon konstruktor funksiyasi koordinatali massivlar massiviga muhtoj; bu qatorni avval o'zgaruvchida aniqlang, shunda siz undan keyin foydalanishingiz mumkin. Quyidagi kod qatorini o'zingizga nusxa ko'chiring
element:
var koordinatalari =
Qadam 2. Xususiyatni vektor qatlamiga qo'shing
Ko'pburchakni xaritaga qo'shish uchun siz uni manbaga qo'shishingiz kerak, uni vektor qatlamiga qo'shasiz va uni xaritaga qo'shishingiz mumkin:
var vector_layer = yangi ol.layer. Vector ({manba: new ol.source. Vector ({xususiyatlari: [polygon_feature]})})) map.addLayer (vektor_layer);
Qadam 3. Xususiyat geometriyasini koordinatalarni ishlatish uchun o'zgartiring
var current_projection = new ol.proj. Projection ({kod: "EPSG: 4326"}); var new_projection = tile_layer.getSource (). getProjection (); polygon_feature.getGeometry (). aylantirish (joriy_projeksiyon, yangi_projeksiyon);
Qadam 4. Hisoblashni amalga oshirish uchun sfera yarating
Sfera Yerning o'lchamiga teng bo'lishi kerak (radiusi 6,3 metr). Texnik jihatdan, shar radiusi WGS84 ellipsoidining yarim katta o'qiga teng.
var sfera = yangi ol. Sphere (6378137);
Qadam 5. GeodesicArea () usuli yordamida maydonni hisoblash uchun sferadan foydalaning
Chunki usul kvadrat metrda qiymat beradi, kvadrat kilometrni olish uchun millionga bo'ling.
var maydon_m = sfera.geodezik maydon (koordinatalar); var maydoni_km = maydon_m / 1000/1000; console.log ('maydon:', maydon_km, 'km²'); // KONSOL: maydoni: 2317133.7166773956 km²
Qadam 6. Mintaqaviy javob mantiqiy ekanligini tekshiring
Biz bu to'g'ri ekanligini bilamiz, chunki u 2, 381, 741 km² maydonga ega bo'lgan Jazoir bilan bir xil o'lchamda ko'rinadi (Vikipediyadan).