OpenLayers -те көпбұрыштың ауданын қалай анықтауға болады 3

Мазмұны:

OpenLayers -те көпбұрыштың ауданын қалай анықтауға болады 3
OpenLayers -те көпбұрыштың ауданын қалай анықтауға болады 3

Бейне: OpenLayers -те көпбұрыштың ауданын қалай анықтауға болады 3

Бейне: OpenLayers -те көпбұрыштың ауданын қалай анықтауға болады 3
Бейне: Excel мен жұмыс жасау. Excel де принтерден шығару ауданы қалай белгіленеді? Үйренеміз. Барлығы оңай. 2024, Мамыр
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 шар = new ol. Sphere (6378137);

7151572 5
7151572 5

Қадам 5. GeodesicArea () әдісін қолдана отырып, ауданды есептеу үшін сфераны қолданыңыз

Бұл әдіс шаршы метрдегі мәнді қамтамасыз ететіндіктен, шаршы километрді алу үшін миллионға бөліңіз.

var area_m = shar.geodesicArea (координаттары); var area_km = area_m / 1000/1000; console.log ('аймақ:', аймақ_км, 'км²'); // КОНСОЛ: ауданы: 2317133.7166773956 км²

7151572 6
7151572 6

Қадам 6. Аймақтық жауаптың мағыналы екенін тексеріңіз

Біз бұл дұрыс екенін білеміз, себебі оның көлемі шамамен 2, 381, 741 км² болатын Алжирмен бірдей мөлшерде болып көрінеді (Уикипедиядан).

Ұсынылған: