কিভাবে OpenLayers 3 তে বহুভুজের ক্ষেত্র নির্ধারণ করবেন

সুচিপত্র:

কিভাবে OpenLayers 3 তে বহুভুজের ক্ষেত্র নির্ধারণ করবেন
কিভাবে OpenLayers 3 তে বহুভুজের ক্ষেত্র নির্ধারণ করবেন

ভিডিও: কিভাবে OpenLayers 3 তে বহুভুজের ক্ষেত্র নির্ধারণ করবেন

ভিডিও: কিভাবে OpenLayers 3 তে বহুভুজের ক্ষেত্র নির্ধারণ করবেন
ভিডিও: ফেডোরা 36 - পিসি 2022 এর জন্য ইনস্টলেশন গাইড 2024, মে
Anonim

বহুভুজ একটি মানচিত্রে ভূমির আনুমানিক এলাকা প্রতিনিধিত্ব করার একটি দুর্দান্ত উপায় এবং আপনার দ্বারা সংজ্ঞায়িত বহুভুজের ক্ষেত্রটি জানা প্রায়শই সহায়ক। OpenLayers 3 এ এটি সম্ভব; একটি শক্তিশালী জাভাস্ক্রিপ্ট ম্যাপিং টুল।

এই নিবন্ধটি আপনাকে একটি বহুভুজ যোগ করতে নির্দেশ দেবে, তারপর একটি গোলক ব্যবহার করে এলাকা গণনা করা হবে।

অনুগ্রহ করে মনে রাখবেন যে এই নিবন্ধটি অনুসরণ করার জন্য আপনার একটি ওয়েবপৃষ্ঠায় একটি কার্যকরী ওপেন লেয়ার মানচিত্র ইনস্টল করা দরকার। যদি আপনার কাছে না থাকে, তাহলে কিভাবে OpenLayers 3 ব্যবহার করে একটি মানচিত্র তৈরি করবেন।

ধাপ

7151572 1
7151572 1

ধাপ 1. একটি বহুভুজ বৈশিষ্ট্য তৈরি করুন।

বহুভুজ কন্সট্রাকটর ফাংশনের জন্য সমন্বয় অ্যারের একটি অ্যারের প্রয়োজন; এই অ্যারেটিকে প্রথমে একটি ভেরিয়েবলে সংজ্ঞায়িত করুন যাতে আপনি পরে এটি ব্যবহার করতে পারেন। আপনার কোডে নিচের লাইনটি অনুলিপি করুন

উপাদান:

var স্থানাঙ্ক =

7151572 2
7151572 2

ধাপ 2. একটি ভেক্টর স্তরে বৈশিষ্ট্য যুক্ত করুন।

মানচিত্রে বহুভুজ যোগ করতে, আপনাকে এটি একটি উৎসে যোগ করতে হবে, যা আপনি একটি ভেক্টর স্তরে যোগ করেন, যা আপনি তারপর মানচিত্রে যোগ করতে পারেন:

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

7151572 3
7151572 3

ধাপ 3. স্থানাঙ্ক ব্যবহার করতে বৈশিষ্ট্যটির জ্যামিতিকে রূপান্তর করুন।

var current_projection = new ol.proj. Projection ({code: "EPSG: 4326"}); var new_projection = tile_layer.getSource ()। getProjection (); polygon_feature.getGeometry ()। রূপান্তর (current_project, new_projection);

7151572 4
7151572 4

ধাপ 4. গণনা করার জন্য একটি গোলক তৈরি করুন।

গোলকটি পৃথিবীর আকার (6.3 মিটার ব্যাসার্ধ হওয়া উচিত) হওয়া উচিত। টেকনিক্যালি, গোলকের ব্যাসার্ধ WGS84 উপবৃত্তের আধা-প্রধান অক্ষের সমান।

var গোলক = নতুন ol। গোলক (6378137);

7151572 5
7151572 5

ধাপ 5. GeodesicArea () পদ্ধতি ব্যবহার করে এলাকা গণনা করতে গোলকটি ব্যবহার করুন।

কারণ পদ্ধতিটি বর্গ মিটারে একটি মান প্রদান করে, বর্গ কিলোমিটার পেতে এক মিলিয়ন দ্বারা ভাগ করুন।

var area_m = sphere.geodesicArea (স্থানাঙ্ক); var area_km = area_m / 1000 /1000; console.log ('এলাকা:', area_km, 'km²'); // কনসোল: এলাকা: 2317133.7166773956 কিমি²

7151572 6
7151572 6

পদক্ষেপ 6. চেক করুন যে এলাকার উত্তরটি বোধগম্য।

আমরা জানি যে এটি সঠিক কারণ এটি আলজেরিয়ার প্রায় একই আকারের বলে মনে হচ্ছে, যার আয়তন 2, 381, 741 কিমি² (উইকিপিডিয়া থেকে)।

প্রস্তাবিত: