উত্তর:
পোস্টজিআইএস 1.5 একটি নতুন জিওগ্রাফি টাইপ চালু করেছে । GEOGRAPHY
ধরনের একটি উপগোলক উপর unprojected স্থানাঙ্ক একটি PostGIS টেবিল সংরক্ষণ করার জন্য জন্য করতে পারবেন, এবং কিছু বিশ্লেষণ ফাংশন তাদের ওপর সঞ্চালিত হবে।
ST_Area
বর্গ মিটারের ক্ষেত্রফল গণনা করার জন্য জিওগ্রাফি টাইপ বহুভুজগুলির উপর কোয়েরি করা যেতে পারে।
নিম্নলিখিত ক্যোয়ারীটি স্পেরয়েড ব্যবহার করে সমস্ত বহুভুজের ক্ষেত্রকে আউটপুট দেয় (বর্তমানে কেবলমাত্র WGS-84
গোলকটি সমর্থিত), ধরে নিলে তারা এই GEOGRAPHY
ধরণের ব্যবহার করে সংরক্ষণ করা হয়েছে :
SELECT ST_Area(the_geom) FROM table_of_polygons;
একটি গোলাকৃতির ক্ষেত্রফল গণনা করতে ব্যবহৃত অ্যালগরিদম উত্স-কোড থেকে নেওয়া যেতে পারে ।
এখানে এমন কয়েকটি কোডের লিঙ্ক রয়েছে যা একটি সাধারণ বহুভুজের ক্ষেত্রটি লাভ করবে (মূলত ওয়ার্ল্ড উইন্ড ফোরামের): http://forum.worldwindcentral.com/showthread.php?t=20724 । এটি সম্পর্কের ভিত্তিতে মোটামুটি একটি গোলকের উপর সমস্যার সমাধান করে:
এস = বহুভুজের ক্ষেত্রফল; থিটা হ'ল রেডিয়ানের অভ্যন্তরের কোণগুলির সমষ্টি; n হ'ল উল্লম্বের সংখ্যা; r হল গোলকের ব্যাসার্ধ।
এছাড়াও দেখুন (সূত্র চিত্রের উত্স): http://www.geom.uiuc.edu/docs/references/CRC-forulas/node59.html
আমি একটি ওবলেট স্পেরয়েডে বহুভুজ অঞ্চলের লিঙ্ক এবং / অথবা কোড দেখতে পেরে আনন্দিত হব।
আমরা ওপেনলায়ারগুলিতে সহজ সরল গণনার জন্য উত্স এখানে । এই পদ্ধতিটি "একটি গোলকের উপরে বহুভুজগুলির জন্য কিছু অ্যালগরিদম" থেকে এসেছে (রবার্ট। জি চেম্বারলাইন এবং উইলিয়াম এইচ ডুয়েট, নাসা জেপিএল পাবলিকেশন 07-03)। উপরের সাথে সংযুক্ত কোডটি লিনিয়ার রিংয়ের ক্ষেত্র নির্ধারণের জন্য (ভৌগলিক স্থানাঙ্ক সহ)। পলিগনস এবং মাল্টিপলিগনগুলির ক্ষেত্রগুলি রিংগুলি থেকে সংক্ষিপ্ত করা হয়।
var area = 0.0;
var len = ring.components && ring.components.length;
if (len > 2) {
var p1, p2;
for (var i=0; i<len-1; i++) {
p1 = ring.components[i];
p2 = ring.components[i+1];
area += OpenLayers.Util.rad(p2.x - p1.x) *
(2 + Math.sin(OpenLayers.Util.rad(p1.y)) +
Math.sin(OpenLayers.Util.rad(p2.y)));
}
area = area * 6378137.0 * 6378137.0 / 2.0;
}
রিং উপাদানগুলি হ'ল উপরের কোডে x, y (লোন, ল্যাট) কর্ডের দুটি উপাদান অ্যারে। ওপেনলায়ারস.উটি.এল.আরড পদ্ধতিটি কেবলমাত্র ডিগ্রিগুলিকে রেডিয়ানে রূপান্তর করে (ডিগ্রি * পিআই / 180)।
আপনাকে আপনার ভৌগলিক স্থানাঙ্কগুলিকে এমন একটি প্রক্ষেপণে রূপান্তর করতে হবে যার একটি সমন্বিত সিস্টেম রয়েছে যা আপনাকে অঞ্চল গণনা করার জন্য কার্টেসিয়ান গণিত ব্যবহার করতে দেয়।
আমি বিশ্বাস করি যে ইউটিএম হ'ল স্বীকৃত স্ট্যান্ডার্ড প্রজেকশন, কারণ এটি আপনার অক্ষাংশ এবং দ্রাঘিমাংশের উপর ভিত্তি করে একটি অঞ্চল নির্বাচন করা খুব সহজ, এমনকি জোনজুড়ে এমনকি বিকৃতিও ন্যূনতম। সুতরাং, আপনার যদি টেক্সাসের আকারের বহুভুজ থাকে, আপনি ইউটিএম অঞ্চল 14 এন ব্যবহার করতে পারেন এবং এটি এখনও মোটামুটি নির্ভুল হবে।
যদি আপনার বহুভুজ উত্তর বা দক্ষিণ মেরুটির ওপরে থাকে, তবে আপনার পরিবর্তে ইউপিএস ব্যবহার করা উচিত , কেননা ইউটিএম অনুমানগুলি খুঁটির চেয়ে কম নির্ভুল, এবং সীমানা আরও ছোট হওয়ায় আপনি দ্রুত এগুলি অতিক্রম করবেন (যেহেতু তারা দ্রাঘিমাটির রেখা অনুসরণ করে)
একবার আপনার পয়েন্টগুলি কার্টেসিয়ান-বান্ধব সমন্বয় ব্যবস্থাতে চলে আসার পরে আপনি সেগুলি গ্রিডে বহুভুজগুলির মতো আচরণ করতে পারেন এবং অঞ্চল গণনা করতে পারেন।
একটি বহুভুজআরিয়া ক্লাসটি জিওগ্রাফিকলাইবে 2011-07 এ যুক্ত হয়েছিল। এটি এমন বহুভুজের সত্যিকারের উপবৃত্তাকার ক্ষেত্রটি গণনা করে যার প্রান্তগুলি জিওডিক্স। পোস্টজিআইএসের বিপরীতে, পদ্ধতিতে সংখ্যার একীকরণের প্রয়োজন হয় না। দলিলপত্রের জন্য (এবং কাগজের একটি লিঙ্ক যেখানে সূত্রগুলি উত্পন্ন হয়েছে) দেখুন
http://geographiclib.sf.net/html/classGeographicLib_1_1PolygonAreaT.html
(বহুভুক্তিয়ার সাধারণকরণকে টেম্পলেট শ্রেণিতে প্রতিবিম্বিত করার জন্য লিঙ্ক স্থির করা হয়েছে))