Thursday 28 June 2012

Map Package - Kaedah mudah nak pindah/kongsi data


Hmmm... baru-baru ni saya buka FB dan nampak gambar partner saya sibuk packing-packing barang sebab nak pindah ofis baru..:D.. Terus saya terfikir nak buat topik ni sebab ada kena mengena dengan packing. :) Kali ni saya nak share sikit berkenaan dengan Map Package.  Apakah sebenarnya Map Package tu?


OK saya bagi contoh senario yang mudah, macam kes kawan saya yang nak pindah ofis tadi. Selalunya kalau kita nak pindah ofis ke or pindah rumah ke, apa perkara penting yang perlu kita buat? Selalunya kita akan pack semua barang-barang yang nak kita pindahkan tu dan kumpulkan kat satu tempat, paling mudah kita longgok semua dalam kotak, kalau muat dalam kotak la kan? Contohnya fail-fail, buku-buku, barang-barang yang kecil-kecil tu semua kita sumbatkan dalam kotak supaya bila sampai ofis baru nanti, senang ler kita nak unpack semula.. dan pada masa yang sama kita boleh pastikan tak ada barang-barang yang tercicir nanti.

Macam kalau kita lihat gambar kat bawah ni, mana rasanya lebih senang kita nak angkut kalau nak pindahkan barang... gambar 1 ke gambar 2? Mestilah gambar 2 kan? Kalau gambar 1 tu jenuh kita nak angkat satu persatu, lepas tu takut pulak ada yang jatuh tercicir masa proses nak pindahkan tu.

Mana satu cara mudah nak pindahkan barang, cara 1 ke 2?


So samalah juga macam konsep Map Package ni. Map Package adalah satu kaedah yang mudah untuk kita berkongsi Map Document MXD dan data-data dalam MXD tu di antara kumpulan kerja, organisasi, jabatan dan juga pengguna-pengguna lain. Kenapa mudah? Sebab dia akan kumpulkan dan longgokkan semua data-data dalam MXD kita tu dalam satu fail yang dah dicompress dalam format .mpk. Tapi Map Package ni hanya terdapat dalam ArcGIS 10 je tau, dalam ArcGIS 9 takde...

Pernah tak anda ada problem sebelum ni contohnya anda buat ArcMap Document MXD kat laptop anda, kemudian bila anda pindahkan fail MXD tu kat laptop kawan anda, ada data-data dalam MXD tu yang tak keluar, mungkin sebab disimpan di dalam setting folder yang berlainan antara laptop anda dan laptop kawan anda. Contohnya kat laptop anda data-data semua disimpan dalam folder C, tapi kat laptop kawan anda tu anda install kat folder D contohnya. So mapping drive dia dah lain, sebab tu ada data yang tak dapat dipaparkan. Selalunya masalah ni berlaku kalau anda tak setkan relative pathname pada data source anda seperti gambar kat bawah ni.

Layer tak dapat dipaparkan sebab missing reference data source


Tapi kaedah Store relative pathnames to data sources ni mungkin sesuai digunapakai kalau kedudukan data-data anda tu diletakkan di dalam satu folder yang sama. Tapi bagaimana pula kalau data-data di dalam fail MXD anda terletak di dalam pelbagai folder yang berlainan? Contohnya mungkin ada shapefile dalam MXD tu dari folder C:\Data, ada pula yang dalam D:\Data, ada pula yang dalam ArcSDE Geodatabase, ada yang dalam File Geodatabase dan lain-lain. Contoh macam gambar kat bawah ni :

Contoh MXD ada banyak source data; folder berlainan, Arcsde etc..


Kalau macam tu jenuh juga kita nak copy dan setkan   balik   kesemua data-data tu kalau kita nak install MXD tu ke komputer lain. Jadi, jalan mudahnya, gunalah kaedah Map Package. Map Package ni akan pakejkan kesemua data-data bersama MXD kita tu dalam satu compress fail .mpk dan kemudiannya kita boleh unpack semula di komputer yang kita nak install tu.

Konsep Map Package untuk perkongsian data antara dua lokasi berbeza


Syarat pertama untuk nak buat Map Package ni ialah anda perlu masukkan dulu penerangan tentang fail MXD di ruangan Description kat dialog Map Document Properties seperti di bawah ni. Dalam contoh tu, saya taipkan kat dalam ruangan Description tu 'Data Negeri Selangor.'

Map Description perlu dimasukkan dahulu sebelum buat Map Package


Kemudian, klik saja kat menu ArcMap tu File > Create Map Package... Kat dialog Create Map Package tu, anda boleh pilih samada nak create sebagai package file (.mpk) atau anda nak postkan ke ArcGIS Online. Kalau anda pilih post ke ArcGIS Online, maksudnya fail yang anda pack tu boleh dikongsi oleh pengguna melalui internet, cuma syaratnya anda kena create dulu ArcGIS Online account. Dalam contoh ni, saya just gunakan Save package to file, bermaksud fail .mpk tu saya akan save di dalam local folder di laptop saya. Kalau dalam fail MXD anda tu ada data-data ArcSDE, klik saja kat option Include ArcSDE geodatabase data tu.


Pilihan untuk pakejkan data

So..macamana nak Unpack pula? Lagi ler mudah... bila anda dah copy fail .mpk tu masuk dalam laptop kawan anda, right click jer fail .mpk tu dalam ArcCatalog atau Catalog Window, lepas tu pilih Unpack.. macam gambar kat bawah ni.


Lepas anda unpack saja, fail MXD bersama data-data tu terus dipaparkan dalam ArcMap. Data-data yang telah di unpack tu akan diletakkan dalam File Geodatabase .gdb.
Senang kan? OK, selamat berkongsi data.

Tuesday 26 June 2012

Trace Tool dan Topological Editing


Topik kali ini masih lagi menyentuh tentang ArcMap Editing dan ada kena mengena sikit dengan topological relationship iaitu penggunaan tool Trace. Kadangkala bila kita buat proses editing, ada beberapa kes di mana kita nak betulkan data kita supaya feature di dalam layer tu follow betul-betul shape feature di dalam layer yang lain. Faham tak maksud saya? Contohnya kita nak betulkan boundary mukim agar ikut shape sungai sebab kadangkala sempadan mukim tu berpandukan kepada sungai, macam gambar kat bawah ni :



Cuba lihat dalam lakaran yang dibulatkan tu. Sekarang ni saya nak adjust sempadan mukim tu supaya mengikut shape sungai. Kalau kita familiar dengan editing di dalam ArcMap, kebiasaannya untuk ubah shape line atau polygon, selalunya kita akan guna task samada Reshape Feature atau Reshape Edge. Perbezaan antara kedua-duanya ialah :-
  1. Reshape feature - tidak ambil kira topological relationship pada feature
  2. Reshape Edge - akan mengekalkan topological relationship antara feature

Perbezaan 1:non-topological editing (Reshape Feature) dan 
2:topological editing (Reshape Edge)  


Dalam kes data mukim tadi, disebabkan sempadan yang nak saya ubah tu dikongsi oleh mukim Semenyih dan Beranang,  maka saya perlu gunakan kaedah Reshape Edge untuk mengekalkan relationship coincident pada sempadan kedua-dua mukim tu. Kaedah editing beginilah yang dinamakan topological editing.  Di dalam ArcGIS10, Reshape Edge ni terletak di dalam Topology toolbar, berbeza sikit dengan ArcGIS9.x dimana Reshape Edge dikira sebagai satu Task Editing di dalam Editor toobar.

Perbezaan penggunaan Reshape Edge antara ArcGIS9 dan ArcGIS10


Begitu juga untuk tool Trace, terdapat sedikit perbezaan kedudukan tool ini di dalam ArcGIS10 dan ArcGIS9 seperti gambar di bawah :

Perbezaan kedudukan trace tool ArcGIS9 dan ArcGIS10


OK, sekarang mulakan proses editing. Perkara pertama yang perlu anda lakukan ialah setkan layer yang nak anda edit tu dalam Map Topology, dalam kes ni layer mukim ler. Map Topology ni terletak dalam Topology toolbar.

Klik Map Topology dan setkan layer yang nak anda edit


Kemudian dengan menggunakan Select Feature tool atau Edit tool, select feature yang hendak anda jadikan sebagai panduan asas untuk proses reshape, dalam kes ni feature sungai, sebab anda nak trace sempadan mukim tu follow ikut shape sungai kan? Hasil selection feature sungai macam contoh kat bawah ni :

Select sungai sebagai panduan trace


Next, gunakan Topology Edit tool untuk select pula sempadan mukim yang hendak anda pinda. Anda kena klik betul-betul di atas sempadan mukim tu atau drag box untuk buat selection. Hasilnya anda akan nampak line sempadan di highlight warna magenta macam kat bawah ni :

Select sempadan mukim menggunakan Topology Edit tool


Kemudian klik tool Reshape Edge sekiranya anda menggunakan ArcGIS10 atau setkan task Editor sebagai  Reshape Edge sekiranya anda menggunakan ArcGIS9. Next klik tool trace dan mulakan proses tracing. Sebagai panduan, rujuk gambar di bawah. Dalam contoh tu, saya akan mulakan proses trace bermula dari kedudukan (1) dan berhenti pada kedudukan (2).



Bila saya klik saja di kedudukan (1) dan gerakkan mouse saya (tanpa klik) di atas sepanjang garisan sungai ke arah (2), saya akan lihat garisan trace dibina disepanjang shape feature sungai  tu. Apabila kedudukan cursor mouse saya tiba di kedudukan (2), saya pun double click mouse dan tadaaaaa... hasilnya seperti di bawah ni :

Hasil editing menggunakan Trace tool


Nampak tak sekarang ni kedudukan sempadan tu dah betul-betul mengikut shape feature sungai yang saya select tadi. So dengan menggunakan kaedah trace ni, kita boleh jamin feature sempadan polygon mukim tu betul-betul akan mengikut shape feature sungai. Cuba bayangkan kalau kita digitize macam biasa tanpa guna trace tool. Bila zoom nanti sure kita nampak sempadan mukim tu jadi macam kat bawah ni kan? Buruk bebenor rupanya bila zoom.. :D

Hasil editing tanpa guna Trace tool... errkkkk...

Jadi secara ringkasnya, nak buat topological editing menggunakan trace tool ni ialah :-

  1. Setkan dulu layer yang nak edit dalam Map Topology
  2. Select feature yang nak dijadikan panduan trace menggunakan Select Feature tool atau Edit tool
  3. Select feature yang nak dipinda menggunakan Topology Edit tool
  4. Klik tool Trace dan trace disepanjang feature


OK...renung-renungkan dan selamat beramal.... :):)

Sunday 24 June 2012

Meletupkan Feature .. Multipart -> Singlepart Feature


Ha? Biar betul?? SukaGIS nak ajar buat bom pulak ke? hehe..  Saja je saya letak tajuk gempak sikit tu, sebenarnya saya nak kongsi satu tool di dalam ArcMap dipanggil Explode. Apa fungsi tool Explode ni ye? OK.. kita ulangkaji sikit berkenaan komponen data geografi.

Kita semua maklum data geografi terbahagi kepada komponen spatial dan juga atribut. Setiap feature geografi ada set atribut masing-masing yang disimpan di dalam table. Contohnya feature sungai ada atribut nama sungai, feature mukim ada atribut nama mukim dan lain-lain. Secara asasnya, setiap feature akan ada 1 rekod di dalam table yg menyimpan set atribut untuk feature tersebut. So kalau kita ada 3 feature polygon, dalam table pun akan ada 3 rekod yang menyimpan set atribut untuk 3 polygon tersebut.

Lihat contoh di bawah ni. Dalam gambar tu saya buat selection 3 polygon pulau langkawi, so bila saya buka table untuk layer pulau tu, saya akan nampak hasilnya '3 record selected' yang mewakili ketiga-tiga pulau yang dipilih.

3 rekod mewakili 3 polygon


Feature seperti ini dipanggil singlepart feature kerana 1 feature mewakili 1 rekod  di dalam table. Kadangkala terdapat juga kes data-data kita bukan di dalam bentuk singlepart, contoh bila kita select 1 polygon, tetiba polygon-polygon lain akan turut di select, lepas tu bila kita buka table dia pula, hanya '1 record selected' walhal di peta lebih dari 1 polygon dipilih. Contoh macam gambar kat bawah ni :

1 rekod mewakili banyak polygon


Dalam contoh tu, dengan menggunakan tool Select Feature, saya klik kat polygon Kedah,  tapi kenapa polygon Pulau Langkawi pun turut di select yer? Lepas tu bila saya buka pula table, hanya '1 record selected' padahal ada banyak selected polygon yang di highlight kat situ. Feature seperti ini dipanggil multipart feature kerana 1 rekod dirujuk oleh lebih dari 1 feature. Untuk memudahkan pemahaman konsep multipart dan singlepart feature tu, rujuk gambar bawah ni. Konsep dia lebih kurang sama macam kita buat Group/Ungroup bila lukis grafik dalam powerpoint.

perbezaan multipart dan singlepart feature


OK... rujuk balik gambar polygon Kedah dan Langkawi tadi. Nampak tak kat table tu ada field Shape_Length dan Shape_Area. Ini adalah kerana data tersebut disimpan dalam format geodatabase feature yang menyokong struktur data topology. Ini bermaksud untuk setiap polygon tu kita boleh tahu perimeter dan keluasan secara automatik di dalam map unit. Oleh kerana feature tu bersifat multipart feature, keluasan yang dipaparkan tu mewakili jumlah keluasan untuk polygon Kedah dan juga Pulau Langkawi (1 rekod dirujuk oleh lebih dari 1 feature).

Jadi di sini timbul persoalan, macamana kalau kita nak dapatkan keluasan untuk Kedah dan Langkawi tu secara berasingan? Kalau melalui data multipart feature macamtu memang tak boleh sebab dia dah groupkan keluasan Kedah dan Langkawi tu dalam 1 rekod. Maknanya kita kena jadikan data multipart tu menjadi singlepart feature. Macamana nak buat tu? Mudah saja, gunakan tool Explode. Tool ni terletak dalam toolbar Advanced Editing. Rujuk gambar kat bawah ni untuk steps macamana nak panggil toolbar tu. Anak panah tu menunjukkan tool Explode.

Kedudukan tool explode


Sebelum guna Explode tu, kena buat proses Start Editing dulu. Kemudian gunakan tool Select Feature atau tool Edit untuk select polygon multipart yang nak kita jadikan singlepart tu. Bila dah ada selected polygon tu, terus klik saja pada tool Explode. Debooomm.. feature multipart dah meletup jadi singlepart.. hehe. Hasilnya seperti gambar kat bawah ni.

Selepas explode, bilangan rekod akan sama
dengan bilagan polygon (1 rekod - 1 polygon)

 Daripada hasil explode tu, perhatikan asalnya 1 multipart feature telah dipecahkan kepada 126 singlepart feature. Kenapa banyak sangat tu? Ini kerana terdapat banyak pulau-pulau kecil di sekeliling Pulau Langkawi tu, so maknanya untuk setiap pulau-pulau kecil tu, kita boleh tahu keluasan dia dengan merujuk field Shape_Area di dalam table.

Keluasan setiap polygon boleh dirujuk dalam
field Shape_Area


Ringkasannya, ada kelebihan dan kekurangan data singlepart feature ni.
Kelebihan:
  1. Untuk data geodatabase polygon featureclass, kita boleh tahu keluasan dan perimeter untuk setiap unit polygon.
  2. Fungsi editing boleh dilakukan secara berasingan untuk setiap polygon.
Kekurangan:
  1. Rekod dalam table jadi bertambah sebab 1 feature (group) dipecahkan kepada banyak feature (ungroup).
  2. Kalau buat text labeling, akan ada banyak duplicate label (kecuali kalau kita guna setting remove duplicate label)


OK..semoga tips ni memberi manfaat kepada anda semua.. Berjumpa lagi di topik yang lain.

Thursday 21 June 2012

Interpolation


Kita sambung cerita lagi. Kali ni saya nak cerita tentang interpolation .. ermm translate dalam BM apa ek? Interpolasi? Betul ke? Tak pe lah... saya maintain guna term interpolation je.. taknak nanti konpius. Apakah maksud interpolation ni... 

Ok nak mudah faham saya beri senario ni. Katakan kita ada dirikan  stesen cerapan bacaan taburan hujan di beberapa lokasi yang telah kita tentukan. Daripada setiap stesen hujan tu kita boleh tahu berapa purata taburan hujan mengikut bulanan, tahunan dan sebagainya. Contoh macam gambar kat bawah ni ler. Point-point tu mewakili stesen hujan dan label teks tu adalah purata hujan kat setiap point stesen tu.




Maknanya kalau saya berada di lokasi dimana saya dirikan stesen hujan tu, saya boleh tahu lah berapa bacaan purata hujan kat situ. Tapi, macamana pula kalau saya nak tahu berapa bacaan purata hujan kat lokasi-lokasi yang lain. Contohnya kat lokasi-lokasi bertanda soal (?) seperti kat bawah ni.

Berapa purata hujan kat lokasi (?) tu???


Kalau saya tambah stesen di setiap lokasi (?) tersebut tentulah akan melibatkan pertambahan kos dan masa. Jadi disitulah gunanya interpolation ni. Proses interpolation akan membuat andaian berapakah nilai data di lokasi yang tidak terdapat point sampel; seperti dalam kes tadi, ia akan mengandaikan berapakah nilai purata hujan di lokasi yang tidak ditempatkan stesen cerapan.



Andaian yang digunakan berasaskan kepada prinsip Spatial Autocorrelation di mana penentuan nilai data pada sesuatu lokasi adalah berdasarkan hubungkaitan dan jarak antara lokasi dan sample point. Output yang akan dihasilkan adalah data raster GRID seperti di bawah ni.

Hasil output interpolation : raster purata hujan


Di dalam ArcGIS, proses interpolation ni kita boleh buat samada menggunakan extension 3D Analyst ataupun Spatial Analyst. Kaedah interpolation  yang disediakan pula ada pelbagai, antaranya Spline, IDW dan Kriging. Setiap kaedah ini menggunakan pendekatan dan metodologi yang berbeza dalam mengandaikan nilai data pada sesuatu lokasi, maknanya dengan menggunakan input sampel data yang sama, kita akan mendapat output raster yang berbeza-beza jika guna teknik Spline, IDW, Kriging dan lain-lain.

Pelbagai teknik interpolation


Soalan favourite yang orang selalu tanya saya ialah, "kalau camtu nak guna teknik yang mana satu??" Sebenarnya pemilihan teknik ialah berdasarkan bagaimana taburan sampel point kita tu, rawak ke, sekata ke, padat ke.. dan juga bergantung pada apakah fenomena yang kita kaji.

OK tu semua general concept tentang interpolation. So sekarang macamana nak buat proses interpolation tu dalam ArcGIS.. mudah sahaja. Masukkan point sampel anda tu dalam ArcMap. Kemudian dengan menggunakan toolbox, klik pada 3D Analyst Tools > Raster Interpolation atau Spatial Analyst Tools > Interpolation

Interpolation dalam 3D dan Spatial Analyst


Dalam contoh ni saya akan menggunakan teknik Spline. Kemudian saya akan dapat dialog seperti kat bawah ni. Benda wajib yang anda perlu masukkan adalah :-
  1. Layer input sampel
  2. Z field, yang ni anda kena tahu kat dalam table tu apa nama field yang menyimpan Z-value untuk layer input sampel tu
  3. Nama output raster
  4. Berapa saiz cell yang nak digunakan untuk create output raster tu

Contoh dialog interpolation teknik Spline


Dah habis isi semua tu, klik OK, hasilnya adalah data output raster. So bila dah raster tu maknanya bila anda klik kat mana-mana pun atas data raster tu, anda akan dapat bacaan purata hujan dia sebab struktur data raster terdiri dari cell kan? Jadi dalam setiap cell tu akan ada bacaan purata hujan ler.

Pixel value tu adalah nilai purata hujan

OK... boleh la try lepas ni.. :D


Tuesday 19 June 2012

Geodatabase Topology Rules

Kabare semua? Topik kali ini adalah lanjutan dari topik saya sebelum ini : Pengenalan Topology. Jika korang semua ada baca post saya sebelum ini topik : Evolusi Data Spatial : Pengenalan Geodatabase, tentu korang semua tahu geodatabase bukan sahaja menyimpan data-data geospatial dan table, tapi juga boleh simpan macam-macam, seperti topology rules, relationship class, data raster dan lain-lain, bak kata iklan Astro... Macam-macam adaaaa. OK, apa yang nak saya ceritakan di sini adalah berkenaan dengan topology rules.

Apakah Topology Rules
Topology Rules adalah set aturan yang kita tetapkan pada data kita untuk memastikan data kita tu konsisten dan bebas dari ralat-ralat topology yang tidak sepatutnya ada pada data tersebut. Contohnya katalah anda dapat data sungai dari sesuatu agensi pembekal data, kemudian anda nak semak adakah setiap line sungai bercantum dengan betul, tiada line sungai yang terputus supaya analisis flow boleh dibina dengan tepat. Kalau nak zoom setiap line, check satu-satu payah juga tu. Tapi kalau guna topology rules ni, dia boleh bagitau kita dimana terdapat error line yang terputus tu on the spot terus, tak payah kita terkial-kial nak cari satu persatu. 

Untuk membina topology rules ini, data-data kita mestilah diletakkan dalam format geodatabase dulu. Kemudian tentukan nama rules apa yang kita nak pakai. Yang ni pun macam-macam adaaa gak, contoh kalau kita nak semak line terputus, gunakan rules "Must not have dangles".

Contoh nama-nama topology rules

Macamana kita nak tau apa senarai-sanarai nama rules yang ada, dan apa maksud setiap satu rules tu? Jawapan mudah dia rujuk kepada poster Topology Rules.

Cara Membaca Poster Topology Rules
Kat mana kita nak dapat poster ni? Bila kita dah install ArcGIS dalam laptop komputer kita, rujuk pada folder installation ArcGIS dan di bawah folder Documentation. Contohnya pada laptop saya yang run Windows 7, folder dia adalah C:\Program Files(x86)\ArcGIS\Desktop10.0\Documentation. Di dalam folder tu nanti kita akan nampak ada satu fail nama topology_rules_poster.pdf. Rupa poster tu seperti kat bawah ni :

Poster topology rules
Nak mudah plot besar-besar poster tu pastu tampal kat dinding, senang nak baca. Saya tengok ada gak beberapa client saya yang buat macam tu. Ok, macamana kita nak baca poster tu? Kalau kita tengok gambar poster kat atas tu, yang kotak-kotak tu adalah rules yang boleh kita gunakan, so kalau kita kira kat atas tu ada 32 kotak, maknanya ada 32 topology rules ler.

Kita ambil contoh satu rules seperti di bawah. Nama rules ni Must not overlap. Penerangan bagaimana untuk membaca rules ni dinyatakan dalam gambar di bawah ni (teks warna merah). Kalau tak nampak, klik kat gambar tu untuk besarkan gambar.

nota ringkas komponen dalam diagram topology rules 

Dari penerangan di atas, maknanya mula-mula kita tengok dulu rules tu digunakan untuk data feature apa... dalam contoh tu, rules Must not overlap hanya boleh digunakan untuk menyemak data feature polygon, sebagai contoh melihat lot bertindih, zon gunatanah bertindih dan lain-lain. Sekarang kita lihat contoh yang di bawah ini pula :




Kali ini dinyatakan dua simbol feature di dalam rules tu iaitu point dan line. Ini bermaksud rules Point must be covered by line memerlukan input dua layer data iaitu data point dan juga data line. Contohnya katakan anda mendapat data point stesen kualiti air sungai dan anda ingin menyemak adakah point tu jatuh betul-betul di atas line sungai anda. Rules ini boleh digunakan untuk memberitahu kita point stesen mana yang jatuh di atas garisan sungai dan point stesen mana yang tidak menyentuh line sungai. OK sekarang dah faham kan macamana nak baca poster tu. Kalau dah faham baru lah kita boleh proceed membina geodatabase topology rules.


Membina Geodatabase Topology Rules
Untuk membina topology rules ni, anda perlu pastikan data-data yang ingin disemak tu diletak di dalam Feature Dataset di dalam geodatabase. Perhatikan rajah di bawah ini. 


Untuk geodatabase 1, layer Stesen dan Sungai diletakkan di dalam feature dataset Langat manakala geodatabase 2 layer Stesen dan Sungai tidak diletakkan di dalam feature dataset. Sekiranya anda ingin membina topology rules untuk kedua-dua layer ini, anda perlu strukturkan layer Stesen dan Sungai anda mengikut struktur geodatabase 1 iaitu ia perlu diletakkan di dalam feature dataset. Kemudian right click sahaja kat feature dataset tu dan pilih New > Topology... Proses ni anda perlu buat di dalam ArcCatalog sekiranya anda guna version 9.x. Kalau version 10, anda buat dalam ArcMap pun boleh, melalui Catalog Window.



Kemudian taipkan nama untuk topology yang anda nak bina tu. Lepas tu anda akan nampak ruangan untuk masukkan Cluster tolerance. Apa dia cluster tolerance tu? Maksud cluster tolerance tu ialah jarak minimum yang anda andaikan agar point, vertex dan boundary dikira coincident. Kalau tak faham maksud coincident tu, rujuk pada post saya sebelum ini tajuk Pengenalan Topology. Cuba kita lihat gambar kat bawah ni :

Cluster tolerance


Lihat gambar point stesen dalam bulatan tu. Kalau jarak antara stesen dan line sungai tu adalah di dalam lingkungan jarak cluster tolerance, point stesen dan line sungai tu akan snap secara automatik kerana dikira sebagai coincident antara satu sama lain. Selepas tu tekan butang Next, anda perlu pilih pula layer apa dalam feature dataset tadi yang nak anda gunakan untuk semak topology.



Dalam contoh ni, saya nak menyemak samada kedudukan point stesen saya menyentuh line sungai, jadi saya perlu pilih kedua-dua layer tu. Seterusnya anda perlu setkan ranking untuk setiap layer yang anda pilih tadi. Apa pula maksud ranking tu?

feature low rank akan snap ke feature low rank
Nilai ranking tu membolehkan kita set pada setiap layer tu, layer mana yang kita rasa data yang lebih tepat (rangking tinggi) dan layer mana yang kurang tepat (ranking rendah). Semasa proses Validate Topology nanti, layer yang ranking rendah akan di snap kepada layer yang ranking lebih tinggi. Contohnya katalah point stesen tu saya bina melalui proses data capture menggunakan GPS yang berketepatan sehingga sub-meter, jadi saya andaikan kedudukan point stesen saya lebih tepat berbanding dengan data sungai saya daripada sumber peta topo skala 1:50,000. Oleh itu saya bolehlah setkan ranking data stesen saya lebih tinggi berbanding data sungai tadi. Nilai ranking yang tertinggi adalah 1, semakin besar nombor yang kita set, semakin rendahlah ranking sesuatu data tu. Tapi dalam contoh ni, saya andaikan kedua-dua data tadi mempunyai ranking yang sama.

Seterusnya barulah anda masukkan rules yang hendak anda gunakan untuk layer tadi. Rules yang akan saya gunakan adalah Point must be covered by line. Rujuk pada gambar bawah ni, untuk step 1 saya pilih saja layer point Stesen, step 2 saya pilih nama rules yang saya nak pakai dan step 3 saya pilih pula layer line Sungai. So ringkasan dari maksud rules tadi adalah : Point Stesen must be covered by line Sungai. Sekiranya line sungai tu tak covered point stesen, point yang terlibat akan ditunjukkan semasa proses Validate Topology.


Setelah selesai, dialog macam kat bawah ni akan dipaparkan. Maksud dialog tu ialah dia tanya samada kita nak mulakan proses Validate Topology tu sekarang ke atau kita manually validate kat dalam ArcMap.


Saya lebih suka memilih butang No, supaya saya boleh nampak proses validasi tu di dalam ArcMap. Lagipun, dalam ArcMap kita ada pelbagai pilihan samada nak buat proses validate tu mengikut Extent Area atau pada keseluruhan data (Full Extent). Setelah selesai bina topology tu, anda sepatutnya akan nampak objek topology dibina dalam feature dataset tadi.

Mulakan proses Validate Topology
Next, masukkan sahaja objek topology tu dalam ArcMap. Nanti anda akan lihat dialog di bawah dipaparkan. Klik sahaja butang Yes.


Kemudian pastikan anda masukkan Topology Toolbar dalam ArcMap tu. Rupa toolbar tu macam dalam gambar kat bawah ni.

ArcMap Topology Toolbar
Untuk validate anda ada dua pilihan tool.
  1. Validate topology in specified area
  2. Validate topology in current extent

Mulakan proses Start Editing. Kemudian anda pilihlah samada nak validate guna tool no 1 atau tool no 2 tu. Kalau nak guna tool no 2 tu, anda kena zoom dulu ke extent mana yang anda nak, kemudian klik tool tu untuk validate. Hasil proses Validate Topology saya adalah seperti di bawah :

Hasil proses Validate Topology


Lokasi topology error akan ditunjukkan pada simbol warna merah. Alamak... semua point stesen saya tak sentuh line sungai.. hihi.. 

Harap anda dah dapat gambaran macamana nak create topology rules ni. Selamat mencuba.



Monday 18 June 2012

Pengenalan Topology


Kalau korang semua belajar subjek GIS, mesti jumpa perkataan ni kan - "Topology". Apa kebende topology tu??

Definasi Topology
Cuba google "gis topology" kat internet, sure jumpa macam2 definasi kan? Tapi sure dalam tiap-tiap definasi tu korang akan jumpa perkataan "spatial relationship". Kalau mengikut cerita asalnya, prinsip topology ni diperkenalkan oleh seorang ahli matematik Swiss bernama Leonhard Euler pada tahun 1736... mak aihh.. lama tu. Korang boleh baca cite dia lebih lanjut di link ni. Untuk memudahkan kita memahami maksud spatial relationship tu, lihat gambar kat bawah ni :




Ni contoh mudah yang boleh kita lihat sekeliling kita. Kat rumah kita pun ada meter air kan kat luar rumah? Kalau kita tengok kat gambar tu, daripada Water Main, paip air warna biru tu akan masuk ke dalam rumah, tapi mesti melalui meter dulu. Kalau takde meter, alamat bil air free ler..hehe. So dalam gambar tu, paip dan meter berhubungkait antara satu sama lain. Hubungkait tu maksudnya relationship ler. Apakah relationship nyer? Relationship dia adalah meter tu menghubungkan paip dari Water Main ke saluran paip menuju ke rumah. Di dalam GIS hubungkait ini dinamakan Connectivity Relationship.

Konsep topology digunakan di dalam GIS untuk menjamin kualiti dan integriti pada data spatial. Cuba bayangkan kalau topology tidak digunapakai pada data kita. Contoh macam kes paip tadi, kalau saya edit dan alihkan kedudukan meter, paip air akan terputus kerana tiada Connectivity..  macam gambar kat bawah ni. Macam tak logik kan tiba-tiba ada seketul meter air tanpa menyambungkan paip. 


Editing - alih kedudukan meter tanpa topology


Tetapi sekiranya konsep topology digunapakai pada data, paip akan tetap disambung melalui meter kerana terdapat Connectivity relationship pada data tersebut. (adoiii letih juga nak edit gambo paip tu guna photoshop..hihi.. takpe la.. yang penting nak bagi korang mudah faham).
Editing - alih kedudukan meter menggunakan prinsip
topology Connectivity
OK.. sekarang dah dapat idea dah maksud topology tu? Perhatikan pula satu lagi contoh kat bawah ni. Dalam gambar tu ada 3 layer yang berasingan, sempadan negeri, sempadan daerah dan sempadan mukim. 


Coincident - sharing boundary


Perhatikan kedudukan anak panah tu. Katakan jika saya buat editing reshape boundary pada gambar pertama, maybe ok sebab melibatkan 1 layer sahaja iaitu sempadan negeri. Tetapi untuk gambar tengah2 tu, perhatikan pada kedudukan anak panah, terdapat perkongsian sempadan antara layer daerah dan negeri. Jika saya buat editing reshape boundary, sepatutnya kedua2 sempadan layer negeri dan daerah akan berubah kerana kedua-duanya berkongsi sempadan. Begitu juga untuk gambar ketiga tu melibatkan layer negeri, daerah dan mukim. Topology relationship ni dipanggil Coincident.

Struktur Left-Right Topology pada data polygon
Jadi secara ringkasnya topology merupakan spatial relationship ataupun hubungkait spatial di antara feature-feature samada di dalam layer yang sama ataupun di dalam layer yang berasingan. Dalam contoh-contoh yang telah saya berikan di atas tu, hubungkait berlaku antara feature di dalam layer berasingan, seperti hubungkaitan antara feature point Meter dan line paip, begitu juga hubungkaitan perkongsian sempadan antara feature boundary layer Negeri, Daerah dan Mukim. Contoh-contoh hubungkaitan antara feature dalam layer yang sama adalah seperti polygon lot tanah yang bersebelahan antara satu sama lain dan  segment tributari sungai yang bercantum dengan sungai utama.

Kaedah Penyuntingan Topology
Terdapat beberapa tools di dalam ArcMap yang boleh kita gunakan untuk melaksanakan kaedah penyuntingan topology ni. Antaranya menggunakan Topology toolbar melalui kaedah Map Topology atau Geodatabase Topology Rules. Saya akan terangkan lebih lanjut bab penyuntingan topology ini di dalam topik yang lain.


Topology Toolbar


Semakan Topology - Geodatabase Topology Rules
Bagaimana pula sekiranya kita ingin menyemak sekiranya data-data kita terdapat kesalahan topology seperti line yg tidak bercantum, polygon yang overlap, polygon gap dan lain-lain? Jawapannya, gunakan geodatabase topology rules. So daripada namanya sendiri pun kita boleh agak, data-data kita tu mestilah diletakkan ke dalam format geodatabase dulu, kalau shapefile tu tak boleh la nak apply konsep ni. Kelebihan geodatabase topology rules adalah kita dapat mengetahui lokasi-lokasi di mana terdapat kesalahan topology pada data kita secara automatik disamping beberapa setting yang boleh kita lakukan untuk buat autocorrection pada data kita. Saya akan menerangkan macamana nak buat steps ni dalam post yang akan datang.


Lokasi error lot bertindih (overlap) dikenalpasti
secara automatik melalui Geodatabase Topology Rules


OK, mata pun dah ngantuk ngadap TV Euro 2012 ni... saya stop sini dulu ler.. :D