Saturday, 6 July 2019

Convert Senarai Koordinat Menggunakan Calculate Geometry


Salam sejahtera semua. Kali ni saya kongsikan satu topik yang agak common juga yang pengguna2 GIS semua selalu hadapi di luar sana. Tentang kaedah macamana nak dapatkan senarai bacaan koordinat yang dikehendaki based on senarai input koordinat yang dah sedia ada dalam table. Contohnya, dalam table dah ada column bacaan koordinat latitude, longitude dalam WGS84, tapi kita nak convert setiap koordinat WGS84 tu kepada bacaan X dan Y dalam MRSO… macam contoh gambaran di bawah ni…

Contoh koordinat dlm WGS84 tapi nak dapatkan bacaandalam MRSO

Tak semestinya nak convert WGS84 kepada Kertau MRSO, kadangkala kita mungkin ada kes nak convert koordinat Cassini -> Kertau MRSO, Kertau MRSO -> GDM MRSO, Timbalai BRSO -> WGS84 dan sebagainya. Sebenarnya stepnya takde la susah sangat. Di sini saya kongsikan caranya..

1. CONVERT DULU TABLE JADI LAYER POINT

Step ni anda hanya perlu buat jika senarai koordinat tadi dalam standalone table, contoh dalam table Excel atau senang cite, table tu bukan Feature Attribute Table. Tapi jika table tu dah memang table layer (Feature Attribute Table), anda boleh skip step  1 ni. Jika senarai koordinat anda tu dalam standalone table, anda kena plotkan dulu koordinat tu menjadi layer point. Untuk table dalam Excel format, ada beberapa syarat yang anda perlu buat dulu sebelum plot table Excel tu jadi point. Anda boleh rujuk dalam post saya sebelum ni di link SINI atau boleh juga rujuk dalam buku SukaGIS Jilid 1 ms 126.    

Untuk plot koordinat dalam table kepada point, follow cara seperti gambar di bawah ni :-



Penerangan gambar :-
  1. Masukkan table dalam ArcMap kemudian right-click table tadi dan pilih Display XY Data
  2. Setkan field yang mewakili bacaan X dan Y dalam table tadi.
  3. Klik butang Edit dan setkan sistem koordinat berdasarkan apa sistem koordinat yang digunakan dalam input senarai koordinat pada table tadi. Maksudnya, kalau bacaan koordinat dalam table tu dalam WGS84, ada kena set sebagai WGS84 le. Step ni penting, jangan tersilap setting koordinat plak.
  4. Klik OK.


Layer point yang dipanggil EventLayer akan dihasilkan. Layer ni bersifat temporary saja, so anda kena save dulu layer point tu menggunakan kaedah seperti di bawah ni..


Penerangan gambar :-
  1. Dalam Table of Contents, right click eventlayer point yang dihasilkan dan pilih Data > Export Data…
  2. Namakan output layer. Anda boleh create layer tu samada dalam format shapefile atau geodatabase.
  3. Klik OK.


Bila keluar mesej confirmation dialog seperti kat bawah ni, klik saja Yes.




2. BINA FIELD UNTUK SIMPAN SENARAI OUTPUT KOORDINAT

OK, sekarang ni layer point dah pun anda hasilkan. Next, anda kena readykan dulu tambahan dua field dalam table layer point tadi untuk simpan output koordinat yang anda akan convert tu. Caranya seperti berikut ni :-


Penerangan gambar :-
  1. Dalam Table of Contents, right click layer point yang dihasilkan tadi dan pilih Open Attribute Table.
  2. Klik butang Table Options
  3. Pilih Add Field


Dialog Add Field akan dipaparkan seperti di bawah. Follow step seterusnya.



Penerangan gambar :-
  1. Masukkan nama field untuk simpan koordinat X.
  2. Pilih field type sebagai Double
  3. Klik OK.


Ulangi step tadi untuk create field untuk simpan koordinat Y pulak. Hasilnya nanti table layer point anda akan jadi seperti di bawah ni.

Readykan dulu field untuk convert koordinat

3. SET SISTEM KOORDINAT DATA FRAME

Seterusnya anda perlu setkan sistem koordinat Data Frame ArcMap kepada sistem koordinat yang anda nak convert tu. Maknanya, kalau anda nak convert koordinat WGS84 kepada Kertau MRSO, setkan koordinat data frame tu kepada Kertau MRSO. Kalau nak convert koordinat Kertau MRSO kepada GDM2000 MRSO pulak, set koordinat data frame kepada GDM2000 MRSO. Maksudnya setting koordinat Data Frame akan tentukan apa sistem koordinat yang anda nak hasilkan dalam field XY yang anda baru create dalam table tadi.

Untuk set sistem koordinat Data Frame, follow step ni :-


Penerangan gambar :-
  1. Right click dalam map dan  pilih Data Frame Properties
  2. Klik tab Coordinate System
  3. Set sistem koordinat yang anda kehendaki dan klik OK.

Tapi kena hati-hati ye, jika datum yang digunakan berbeza antara input sistem koordinat dan output sistem koordinat yang anda nak convert tu, anda kena buat Datum Transformation dulu. Benda ni banyak saya bincang dan tunjukkan dalam buku SukaGIS Jilid1. Anda boleh rujuk buku SukaGIS Jilid 1 ms 17, 20, 21 dan 22 tentang isu ni. Utk kes koordinat GDM2000 ke RSO atau RSO ke GDM2000 plak, anda kena dapatkan 7 parameter transformation dari JUPEM dulu untuk buat datum transformation sebab parameter tu tak built-in dalam sistem ArcGIS. Kalau anda terus convert je tanpa buat datum transformation, tak tepat le result convertion koordinat anda tu.

4. CONVERT KOORDINAT GUNA KAEDAH CALCULATE GEOMETRY

OK, bila semua setting step sebelum tadi dah buat, barulah anda boleh proceed untuk buat convertion koordinat. Cara mudah guna je kaedah Calculate Geometry dalam ArcMap. Caranya seperti di bawah :-




Penerangan gambar :-
  1. Buka table layer point anda, right click kat field X yang anda baru bina tadi dan pilih Calculate Geometry
  2. Jika anda bukan dalam Start Editing mode, dialog pertanyaan dipaparkan. Klik je Yes.
  3. Disebabkan tadi anda right click field X, so kat ruangan Property: tu, pilih X Coordinate of Point.
  4. Pilih option Use coordinate system of the data frame.
  5. Pastikan unit koordinat sistem koordinat pada data frame tu. Kalau utk RSO, Cassini dan GDM2000RSO, unitnya adalah meter. Kalau anda nak convert kepada WGS84, pilih unit Decimal Degrees.
  6. Klik OK.


Ulangi step tu untuk kira koordinat untuk field Y pulak. Hasilnya… tadaaaa… dapatlah result seperti dalam table di bawah ni.

Hasil convertion koordinat

Selesai masalah. So amacam? Senang tak? Boleh le cuba lepas ni ye….

P/S : Kami ada menawarkan Kursus GIS Advance Level pada bulan Ogos ni. Untuk maklumat lanjut, klik link KURSUSGIS ni….





2 comments: