image1 image2 image3

Hello I'm Febriinanda|Welcome To My Personal Blog|I Love Eating And Sharing

Centroid, X dan Y Pada PostGIS

Gajah Main Globe

Diawali dengan chat bersama teman-teman yang sedang ngerjain TA (Tugas Akhir) saya dibawa kembali bernostalgia dengan yang namanya materi kuliah. Akhirnya saya mentok disebuah halaman yang dulu saat kuliah kerap kali saya datangi hanya untuk membaca referensi mengenai fungsi-fungsi yang telah mereka ciptakan dalam pengelolaan data spasial. Halaman yang saya maksud yaitu PostGIS.net. Thanks to PostGIS.net yang dengan murah hati memberikan aplikasinya dengan gratis. 

Mumpung lagi buka-buka PostGIS.net saya akan mencoba membagi beberapa penjelasan sederhana mengenai beberapa fungsi yang dulu pernah saya gunakan dalam mengerjakan TA. Fungsi-fungsi tersebut yaitu ST_Centroid, ST_X, dan ST_Y. Sebelum membaca materi lebih lanjut, saya asumsikan teman-teman telah mengerti hal-hal mendasar mengenai data spasial. 


ST_Centroid.
Dikutip dari halaman yang bersangkutan 
"ST_Centroid — Returns the geometric center of a geometry."
 Fungsi ini digunakan untuk mendapatkan titik tengah dari sebuah geometry. Titik tengah yang didapat juga masih dalam tipe geometri. Misalkan kita memiliki sebuah wilayah (region) dan ingin mendapatkan titik tengah dari wilayah tersebut maka kita dapat menggunakan fungsi berikut
"ST_Centroid(the_geom)"
the_geom : Nilai geometri dari wilayah (region) yang ingin dicari titik tengahnya, 

Contoh kasus:
Kita memiliki sebuah geometri dari sebuah wilayah X yaitu 
"0106000020E61000000200000001030000000100000028000000D0EA37A29AC651C00FD603035B284540FEFCFB379AC651C0C0503E9F5B284540FFDDDD4D96C651C033AC3B284F2845402C7C643E8CC651C027D4465F58284540B03124FF85C651C0A206D8594928454017901C728FC651C08A98CCA040284540B76E11DD93C651C063FAF49536284540258F3B6B99C651C041CFB5203A284540DB5AB4A09BC651C02189C9F731284540055BD8789CC651C0D6A3DE703228454009A89E449DC651C0790A5D7F2F2845400DD1430B9EC651C0651AB8AB2C284540D24AF36DAAC651C0451369EE3428454041DB9A3FAAC651C00AD1F63636284540AABAC10BAAC651C097B3F71438284540EEA5F4E1A9C651C0BEBE83FA39284540599A39C2A9C651C00C8C21E03B2845401BA199B1A9C651C03CFDD9C53D28454038B50BABA9C651C01231A4AB3F2845408AD88FAEA9C651C08D27809141284540DF0C26BCA9C651C0A0E06D7743284540955CD7D8A9C651C0B13D765D452845408BC19AFFA9C651C0F75C9043472845400C397630AAC651C07FD7422249284540EB5BC961AAC651C0204B796B4A28454016701F8EAAC651C04B0FB4A54B28454000417D0EACC651C04E95A723562845403648F5DBA9C651C009A7D75754284540FD1F4F43A9C651C0D77C0C53562845404B7C9CA7A8C651C0C454E9D255284540DEBC3841A8C651C0A88C5CEC57284540F633B6DCA5C651C034C39CA855284540AAF53664A5C651C0DA78AA37552845407C64FD2CA5C651C09DE8F60255284540128F4CAAA3C651C0F8E06CB753284540A5B22E7AA0C651C03263DA775A284540BA48C02E9DC651C0B8FF45525728454079679AC79BC651C02B3B005B59284540882CEC349BC651C04658452B5A284540D0EA37A29AC651C00FD603035B284540010300000001000000050000006EF831E3ADC651C07CDF57A05528454099FBD7CEADC651C03CFB78E355284540E538D293ADC651C0F3699A22542845408FF3B73EAEC651C0E261F284542845406EF831E3ADC651C07CDF57A055284540".
Kita ingin tau titik tengah dari geometri diatas. Maka kita tulisakan fungsi tersebut seperti ini:
Select ST_Centroid(0106000020E61000000200000001030000000100000028000000D0EA37A29AC651C00FD603035B284540FEFCFB379AC651C0C0503E9F5B284540FFDDDD4D96C651C033AC3B284F2845402C7C643E8CC651C027D4465F58284540B03124FF85C651C0A206D8594928454017901C728FC651C08A98CCA040284540B76E11DD93C651C063FAF49536284540258F3B6B99C651C041CFB5203A284540DB5AB4A09BC651C02189C9F731284540055BD8789CC651C0D6A3DE703228454009A89E449DC651C0790A5D7F2F2845400DD1430B9EC651C0651AB8AB2C284540D24AF36DAAC651C0451369EE3428454041DB9A3FAAC651C00AD1F63636284540AABAC10BAAC651C097B3F71438284540EEA5F4E1A9C651C0BEBE83FA39284540599A39C2A9C651C00C8C21E03B2845401BA199B1A9C651C03CFDD9C53D28454038B50BABA9C651C01231A4AB3F2845408AD88FAEA9C651C08D27809141284540DF0C26BCA9C651C0A0E06D7743284540955CD7D8A9C651C0B13D765D452845408BC19AFFA9C651C0F75C9043472845400C397630AAC651C07FD7422249284540EB5BC961AAC651C0204B796B4A28454016701F8EAAC651C04B0FB4A54B28454000417D0EACC651C04E95A723562845403648F5DBA9C651C009A7D75754284540FD1F4F43A9C651C0D77C0C53562845404B7C9CA7A8C651C0C454E9D255284540DEBC3841A8C651C0A88C5CEC57284540F633B6DCA5C651C034C39CA855284540AAF53664A5C651C0DA78AA37552845407C64FD2CA5C651C09DE8F60255284540128F4CAAA3C651C0F8E06CB753284540A5B22E7AA0C651C03263DA775A284540BA48C02E9DC651C0B8FF45525728454079679AC79BC651C02B3B005B59284540882CEC349BC651C04658452B5A284540D0EA37A29AC651C00FD603035B284540010300000001000000050000006EF831E3ADC651C07CDF57A05528454099FBD7CEADC651C03CFB78E355284540E538D293ADC651C0F3699A22542845408FF3B73EAEC651C0E261F284542845406EF831E3ADC651C07CDF57A055284540) as pusat.
Maka hasil yang kita dapat adalah:
"0101000020E61000002FE19EB89BC651C05E1BC70F46284540
Bagaimana caranya agar kita mengetahui kordinat dari geometri diatas? Maka dari itu kita gunakan fungsi ST_X dan ST_Y.

ST_X dan ST_Y
Dikutip dari halaman yang bersangkutan
ST_X — Return the X coordinate of the point, or NULL if not available. Input must be a point.

ST_Y — Return the Y coordinate of the point, or NULL if not available. Input must be a point. 
ST_X dan ST_Y digunakan untuk mendapatkan nilai X (Longitude) dan Y (Latitude) dari sebuah geometry. Kembali ke kasus tadi, agar kita bisa mendapatkan nilai X dan Y dari pusat tadi maka kita gunakan fungsi seperti berikut:
ST_X(the_geom), ST_Y(the_geom)
Fungsi tersebut digunakan seperti ini:
SELECT ST_X(0101000020E61000002FE19EB89BC651C05E1BC70F46284540) as Longitude, ST_Y(0101000020E61000002FE19EB89BC651C05E1BC70F46284540) as Latitude 
Maka hasil yang didapat yaitu:
Latitude: 42.3146381113245
Longitude: -71.1032544662055
Dengan 3 fungsi terebut kita sudah bisa mendapatkan kordinat secara lengkap dari sebuah wilayah (region). Cukup sekian penjelesan mengenai 3 fungsi ini, semoga bermanfaat. Terima kasih.

Note: Prakteknya tidak sesulit kelihatannya. Makanya jangan cuma dibaca, tapi dicoba. :D

Share this:

CONVERSATION

0 komentar:

Posting Komentar