Tuesday, 7 October 2014

Apakah on-the-fly Projection??

Mungkin anda pernah dengar word ni.. on-the-fly projection?? Tapi fahamkah anda konsep on-the-fly projection ni? OK.. dlm bahasa mudahnya, on-the-fly projection ni bermaksud keupayaan sesuatu software GIS tu memaparkan (overlay) layer-layer dalam sistem koordinat yg berbeza tanpa perlu mengubah sistem koordinat asal layer tersebut.  Contohnya, katakan anda sedang memaparkan data worldmap dalam sistem WGS84 dan anda ingin overlay data MRSO anda di atas data worldmap tu. Sekiranya software yang anda gunakan support on-the-fly projection, anda tak perlu pening-pening nak tukar data MRSO  tu kepada WGS84, tapi anda boleh direct overlay data tu di atas data WGS84. Itulah kelebihan on-the-fly projection.

on-the-fly projection membolehkan data berbeza sistem koordinat
dipapar tanpa perlu mengubah sistem koordinat pada data


Sekiranya software yang anda gunakan tak support on-the-fly projection, anda perlu seragamkan dulu data-data yang nak dioverlay kepada satu sistem koordinat yang sama. Contohnya dalam kes overlay MRSO kepada WGS84 tadi, anda perlu project data anda dari MRSO kepada WGS84 ataupun anda project data worldmap WGS84 tu kepada MRSO.. objektifnya untuk mendapatkan sistem koordinat yang sama untuk semua layer sebelum dioverlaykan.. tapi ni semua tak perlu anda lakukan kalau menggunakan konsep on-the-fly projection.


Tanpa on-the-fly projection, sistem koordinat antara data perlu
diseragamkan untuk overlay


OK.. clear dah konsep on-the-fly projection? Sekarang saya akan terangkan pula bagaimana ArcGIS handle on-the-fly projection ni. Untuk software lain saya kurang arif camne. Cuba lihat flow step gambar di bawah ni :-



Penerangan gambar :-
  1. Start new ArcMap document
  2. Contoh data pertama yang dimasukkan ke dalam ArcMap ialah data MRSO
  3. ArcMap akan automatik set dataframe sebagai MRSO (mengikut setting coord system data yang mula2 dimasukkan)
  4. Proses on-the-fly projection akan berlaku sekiranya data seterusnya dimasukkan mempunyai koordinat sistem yang berbeza dgn setting sistem koordinat dataframe.


Dalam ArcGIS Desktop, on-the-fly projection ni berlaku apabila anda view data anda dalam ArcMap. Sekiranya data yang dimasukkan berlainan sistem koordinat dengan sistem koordinat dataframe, ArcMap akan automatik lakukan on-the-fly projection untuk membolehkan data2 ni dioverlay. Seperti contoh gambarajah di atas, data yang mula2 dimasukkan adalah MRSO, bermaksud setting sistem koordinat DataFrame Arcmap automatik akan menjadi MRSO. Jadi, sebarang analisis yang anda lakukan, cthnya pengiraan keluasan, jarak dll semuanya adalah di dalam MRSO meter. Sekiranya next data yang anda masukkan mempunyai sistem koordinat berbeza, cth Cassini, GDM, WGS84, data-data ni akan diconvert secara on-the-fly untuk tujuan paparan supaya boleh fit dengan data MRSO tu. Tapi sebenarnya data tu masih lagi dalam projection asal Cassini, GDM, WGS84 dll. Jangan silap faham, ArcMap tak ubah pun sistem koordinat data tu, dia cuma convert on-the-fly supaya data tu boleh dioverlay dan fit ke dalam extent MRSO tadi.

Itulah sebenarnya kelebihan konsep on-the-fly projection ni. Maksudnya anda dah save 1 step bila nak overlay data yang berbeza koordinat sistem, tak perlu run command PROJECT untuk seragamkan dan tukar sistem koordinat, semua proses tu software yang handle. Tapi sebenarnya ada syarat untuk membolehkan on-the-fly projection ni berlaku. Syaratnya, kesemua data layer anda tu mestilah anda define sistem koordinat dia dengan betul, tak boleh ada kes data yang Unknown Coordinate System.

Macamana pula data kita boleh jadi Unknown Coordinate System? Kes ni selalunya berlaku selepas proses data convertion.. contoh dari AutoCAD, MapInfo ataupun mungkin data yang kita perolehi dari sumber2 yang kita kurang jelas bagaimana data tu dibina. Macamana pula nak tau samada data anda tu Unknown Coordinate System atau tak? Anda boleh lakukan seperti step kat bawah ni untuk semak :-



Penerangan gambar :-
  1. Right click layer yang anda nak check dalam Catalog
  2. Pilih Properties
  3. Klik tab XY Coordinate System
  4. Semak kat ruangan Current Coordinate System. Kalau dia tulis <Unknown> tu, maknanya anda kena set le kepada coordinate system yang sepatutnya.


OK, apa akan jadi kalau anda overlay data yang mempunyai sistem koordinat yang berbeza, tapi kedua-duanya atau salah satu darinya mempunyai Unknown Coordinate System. Data anda takkan boleh fit antara satu sama lain, kemungkinan lari terlalu jauh,.. seperti contoh di bawah ni.. dimana saya overlay data WGS84 dan MRSO, tetapi dalam kes ni, data MRSO ni adalah Unknown.

Data berbeza sistem koordinat terletak pada posisi berbeza bila
overlay sekiranya terdapat data yang Unknown Coordinat System


Anda akan dapati data worldmap WGS84 tu jadi terlalu kecil kalau dibandingkan dengan data MRSO bila kita overlay dan kedudukannya lari terlalu jauh. Kenapa boleh jadi begitu?? Logiknya sebab julat koordinat WGS84 terlalu kecil (-180 < X < 180) kalau dibandingkan dengan julat koordinat MRSO.

Cuba lihat julat koordinat X untuk sistem koordinat WGS84 area Semenanjung di bawah ni :-



Sekarang lihat pula julat koordinat X MRSO area Semenanjung :-



So, anda dah nampak kan perbezaan julat koordinat X yang ketara antara sistem WGS84 dan MRSO untuk area Semenanjung. Jadi secara logiknya kalau ruang koordinat ni kita letakkan dalam ruang posisi paksi XY, memang kedudukannya akan jauh lari seperti gambaran di bawah ni.

Gambaran perbandingan julat koordinat X antara
sistem koordinat WGS84 dan MRSO


Tapi macamana pula kadangkala bila kita overlay, walaupun julat koordinatnya jauh berbeza, disebabkan sistem koordinat berbeza,.. tapi kedua2 data tu boleh fit, walaupun secara logiknya takkan boleh fit pada kedudukan yang sama? Jawapannya disebabkan on-the-fly projection tu ler... tapi dengan bersyarat data tak boleh ada Unknown Coordinate System.. mesti properly define menggunakan source koordinat sepatutnya.

So dah faham kan konsep on-the-fly projection??

Thursday, 11 September 2014

Kursus ArcGIS 3D dan Spatial Analyst Jabatan Alam Sekitar

Institut Alam Sekitar Malaysia (EiMAS) telah melantik saya dan rakan saya Syafiq sebagai penceramah jemputan dan fasilitator untuk kursus ArcGIS 3D & Spatial Analyst. Peserta kursus adalah seramai 22 orang dari Jabatan Alam Sekitar Negeri dan Ibu Pejabat. Silibus kursus adalah customize modul yang telah dibangunkan mengikut keperluan kerja jabatan. Latihan hands-on juga menggunakan dataset dari jabatan bagi memudahkan peserta mendapat gambaran sebenar bagaimana penggunaan GIS dapat membantu di dalam aktiviti-aktiviti pengurusan alam sekitar.

Objektif kursus

Customize manual








Kajian kes - perbincangan kumpulan

Pembentangan kumpulan 1

Pembentangan kumpulan 2

Pembentangan kumpulan 3

Pembentangan kumpulan 4

Penceramah kita..





Tahniah...


Untuk gambar-gambar lain, bolehlah klik di link sini.


Tuesday, 2 September 2014

Kursus GIS - Designing MS1759 Geodatabase Data Model

Antara kursus yang saya kendalikan :-
----------------------------------------------------------------------------------------------------
Overview

The course will focus on ArcGIS geodatabase design concepts based on Malaysian Standard MS1759 and will explore the creation of advanced geodatabase elements used for maintaining spatial and attribute relationship such as attribute domain and subtypes. Basic data migration will also be covered.  Participant will learn the coding structure of MS1759 feature and attribute code and how to apply them in geodatabase schema.

Who Should Attend

GIS data managers, analysts, specialists, database administrators and other experienced ArcGIS users who need to implement MS1759 into their database.

Objectives
 After completing this course, participants will be able to:-
  • Develop an understanding of geodatabase design and modeling concepts.
  • Understand MS1759 feature and attribute code.
  • Learn to design and apply geodatabase schemas.
  • Migrate geographic data into geodatabase.
  • Create and apply attribute domain and subtype.
  • Define geodatabase schema.

 Prerequisites and recommendation


Knowledge of using ArcGIS Desktop is required.



Friday, 29 August 2014

Point, PointZ, Polyline, PolylineZ, Polygon, PolygonZ... Apakah Itu?

Lama betul saya tak bersiaran. OKlah, kali ni pilih topik yang santai.  Kita semua maklum struktur asas data vektor GIS terdiri dari geometri point, line dan polygon. Untuk data point, setiap koordinat XY akan disimpan dalam geometri setiap point, polyline dan polygon pula, koordinat XY akan terkandung dalam setiap vertex. Koordinat yang disimpan sebagai geometri bermaksud anda tak akan nampak nilai koordinat XY tu di dalam table.

Contoh field SHAPE dalam attribut table menyimpan geometri
Point dan Polyline


Dalam kata lain, data point, line dan polygon ni adalah data 2D (tiada nilai Z dalam geometri). Kalau anda define layer kontur contohnya sebagai polyline, layer kontur tu tetap sebagai data 2D walaupun dalam attribut table anda telah masukkan nilai ketinggian kontur untuk setiap garisan kontur. Tapi ini sebenarnya bukanlah satu kesalahan, sebenarnya bergantung pada tujuan untuk apa anda akan gunakan data anda tu. Data 2D yang ada nilai Z dalam table masih boleh kita gunakan untuk generate data 3D, contohnya data DEM TIN atau DEM raster.

Nilai Z disimpan sebagai attribut di dalam data geometri 2D


Sekiranya anda ingin supaya nilai Z disimpan sebagai geometri selain dari nilai XY, anda perlu define data anda samada sebagai PointZ, PolylineZ atau PolygonZ. Apabila data ini dipaparkan dalam aplikasi 3D, contohnya ArcScene, data tu akan dipaparkan secara 3D mengikut nilai Z yang disimpan dalam geometri tu. Contohnya, kalau data sungai anda ada nilai Z didalam geometri, anda akan melihat sungai dalam 3D dimana aliran sungai menurun dari bukit hingga ke kawasan lembah. Tapi syaratnya anda capture nilai Z lah dalam geometri tu. Kalau anda define data sebagai geometri 3D, tapi anda tak capture nilai Z, still sama je, data anda nmpak lah macam 2D flat.

Paparan 3D untuk data yang mengandungi geometri Z


OK, macamana untuk membina data PointZ, PolylineZ atau PolygonZ ni. Stepnya sama saja seperti anda create new shapefile atau create new geodatabase featureclass, cuma perbezaan ketara adalah anda perlu check pada ruangan Coordinates include Z values seperti gambar di bawah ni. Setelah anda check option tu, data anda automatik akan jadi PointZ, PolylineZ atau PolygonZ.

Klik option Coordinates include Z values akan menjadikan
data anda PointZ, PolylineZ atau PolygonZ


Bagaimana pula cara nak paparkan XYZ yang disimpan di dalam geometri? Anda boleh lakukan dalam mod Editing. Mulakan proses Start Editing pada data PointZ, PolylineZ atau PolygonZ tadi dan lakukan step seperti di bawah.

Edit Sketch Properties membolehkan nilai XYZ di dalam geometri
dipaparkan

Penerangan gambar :-
  1. Select pada point, line atau polygon yang ingin dipaparkan nilai XYZ.
  2. Right click dan pilih Edit vertices.
  3. Pada toolbar Edit Vertices, klik tool Sketch Properties
  4. Dialog Edit Sketch Properties akan dipaparkan menunjukkan geometri XYZ pada point, line atau polygon yang dipilih.
Untuk post ni, saya tak bincangkan bagaimana proses untuk capture atau digit nilai Z ke dalam geometri tu setelah kita define sebagai PointZ, PolylineZ atau PolygonZ. Di dalam ArcGIS contohnya, ada pelbagai kaedah nak buat step tu. Contohnya kita boleh extract Z dari data DEM dan pindahkan Z tu ke data vector geometri Z, dan beberapa kaedah lagi. Maybe next post saya akan terangkan.

Tungguuuuuuu....



Sunday, 6 April 2014

Menyelaras Geometri Menggunakan Spatial Adjustment

Untuk topik kali ni, kita akan melihat satu toolbar di dalam ArcMap yang dinamakan toolbar Spatial Adjustment. OK... sebelum cerita lebih lanjut, pernah tak anda menghadapi situasi data bila overlay ngan data yang lain, data tu tak ngam masuk, or bila anda overlay ngan imagery, nampak macam data anda offset skit, or scale lari sikit or rotate sikit... macam gambar di bawah ni...

Kedudukan polygon tak allign dengan imej

Kalau anda ada masalah macam tu, dont worry.. ada satu teknik yang anda boleh gunakan untuk betulkan masalah-masalah data macam ni. Teknik ni dinamakan Spatial Adjustment.  Nak gunakan teknik ni, anda kena load dulu toolbar Spatial Adjustment dalam ArcMap.



Kemudian, nak guna tool ni, mesti dalam Start Editing environment dulu. Once dah klik Start Editing, buat step seperti kat bawah ni :-



Penerangan gambar :-
  1. Dekat toolbar Spatial Adjustment, klik Set Adjust Data...
  2. Pilih method anda nak adjust, samada based pada selected feature atau anda nak adjust keseluruhan feature dalam data tu.
  3. Klik OK.


Kemudian anda kena tentukan pula kaedah adjustment yang anda nak buat pada data tu. Caranya, klik pada Adjustment Methods.

Pilih kaedah adjustment


Ada beberapa pilihan kaedah adjustment iaitu :-
  • Transformation - Affine : teknik ni sesuai anda guna kalau masalah data anda melibatkan perubahan scale, serong (skew / senget), rotate dan juga kedudukan teranjak.


  • Transformation - Projective : Teknik ni sesuai guna untuk transform data yang capture direct dari aerial photography.
  • Transformation - Similarity : Teknik ni sama macam Transformation - Affine, cuma ia tidak menyelesaikan masalah sekiranya ada serongan pada geometri data. Teknik ni sesuai sekiranya anda ingin mengekalkan bentuk asal geometri  (aspect ratio).
  • Rubbersheet : Teknik ni sesuai untuk selaraskan geometri satu layer kepada layer yang lain melibatkan jarak penyelarasan yang kecil.


  • Edge Snap : Teknik ni menyelaraskan butiran feature di sepanjang sisi geometri... macam lebih kurang rubbersheet.



Dalam contoh ni, dapat dilihat tiada kesalahan pada geometri aspect ratio polygon tu, tetapi kedudukannya sedikit teranjak dari imej dan ada sedikit rotation. Oleh kerana saya nak kekalkan geometri aspect ratio, maka Adjustment Method yang paling sesuai adalah Transformation - Similarity. Setelah pilih Adjustment Method, select pada feature yang anda hendak betulkan seperti di bawah :-



Kemudian, lakukan step seperti di bawah :-

Bina link antara source dan target


Penerangan gambar :
  1. Pada toolbar Spatial Adjustment, klik tool  New Displacement Link
  2. Klik pada posisi data yang anda nak betulkan.
  3. Klik pada posisi target. Untuk method Transformation - Similarity, minimum 2 link diperlukan.


Setelah selesai membina link, klik saja menu Adjust. Hasilnya seperti di bawah.


Hasil adjustment


Selamat mencuba ......


Saturday, 15 March 2014

Menyelaraskan Sempadan - Align Edge Tool

Kadangkala bila anda overlay data-data dari pelbagai sumber, mungkin anda akan dapati terdapat beberapa feature yang kedudukannya tidak selari antara satu sama lain, seperti gambarajah di bawah ni :-



Garisan sempadan yang ditunjukkan oleh anak panah sepatutnya selari dengan jalan raya berwarna merah. Masalah seperti  ini wujud kebiasaannya disebabkan oleh kesalahan pendigitan atau cerapan data pada skala dan sumber data yang berbeza. Untuk membetulkan kesalahan data ini, proses suntingan data perlu dilakukan. Dalam topik sebelum ni, saya ada tunjukkan teknik menggunakan tool Reshape Edge untuk membetulkan data seperti ni. Terdapat satu lagi tool yang paling mudah untuk anda cuba iaitu Align Edge Tool.

Tool ni terletak dalam Topology toolbar di dalam ArcMap. Sebelum nak gunakan tool ni, anda kena create dulu Map Topology seperti di bawah :-



Penerangan gambar :-
  1. Klik butang Select Topology pada Topology Toolbar
  2. Pilih Map Topology
  3. Pilih layer yang terlibat. Dalam contoh data saya ni, sempadan tanaman (Vegetation Agriculture_A) yang terlibat adalah selari dengan garisan jalanraya (T_Road_L). Jadi, saya aktifkan kedua-dua layer ni dalam Map Topology.
  4. Klik OK.

Kemudian, klik pada butang Align Edge tool. Bila anda lalukan mouse cursor anda di atas layer yang anda telah aktifkan di dalam Map Topology, anda akan dapati symbol pada layer tu akan bertukar kepada symbol dash.



Cara penggunaan Align Edge tool ni mudah je. Hanya lakukan dua steps  seperti di bawah :-



Penerangan gambar :-
  1. Klik pada lokasi data yang nak dibetulkan. Contohnya saya nak betulkan kedudukan sempadan tanaman, jadi saya klik   di atas sempadan tanaman.
  2. Klik pada lokasi sasaran. Contohnya sempadan tanaman tu saya nak selarikan dengan jalanraya. Jadi sasaran layer saya ialah jalanraya.

Hasilnya sempadan tanaman saya diselaraskan selari dengan kedudukan jalanraya. Anda juga boleh gunakan teknik ni untuk membetulkan kesalahan gap pada data.


Selamat mencuba.

Wednesday, 19 February 2014

Kursus ArcSDE Multiuser Geodatabase di JUPEM Sabah

Minggu ni saya baru saja mengendalikan kursus ArcSDE Multiuser Geodatabase di JUPEM Sabah. Peserta terdiri dari gabungan JUPEM Sabah dan JUPEM Sarawak. Kursus ini juga merupakan di bawah projek Geospatial Data Acquisition System (GDAS). Objektif kursus adalah untuk mendedahkan kepada peserta mengenai konsep multiuser editing di dalam persekitana ArcSDE Geodatabase. Antara topik yang disentuh adalah mengenai konsep versioning di dalam ArcSDE Geodatabase dan senario editing secara serentak oleh lebih seorang pengguna pada data yang sama.

Konsep versioning : pengguna melihat data yang sama
tetapi di dalam snapshot yang berbeza

Editing conflict berlaku jika lebih seorang pengguna
edit feature yang sama dalam satu transaksi edit