چطور مساحت و طول عارضهها را حساب کنم؟
پاسخ کوتاه
برای مساحت (متر مربع) و طول (متر) روی geography از ST_Area و ST_Length استفاده کنید. روی داده 4326 بدون تبدیل به geography نتیجه به درجه است و بیمعنی.
-- مساحت به هکتار
SELECT name, ST_Area(geom::geography) / 10000 AS hectare FROM parcels;
-- طول به کیلومتر
SELECT name, ST_Length(geom::geography) / 1000 AS km FROM roads;
روی جدولهایی که در سیستم متری (مثل 32639) هستند مستقیم ST_Area(geom) به متر مربع است.
ذخیره در ستون
ALTER TABLE parcels ADD COLUMN area_m2 double precision;
UPDATE parcels SET area_m2 = ST_Area(geom::geography);
برای مساحت در سطح جهانی geography دقیق است؛ برای یک منطقه کوچک هر دو روش نزدیکاند. تفاوت geometry و geography.
آیا این مقاله به شما کمک کرد؟
هنوز جواب نگرفتید؟ به پشتیبانی بگویید.