Sunday, 19 February 2017

Batch Geoprocessing

Bertemu kembali. Kali ni saya akan kongsikan topik berkenaan Batch Geoprocessing. Dalam ArcGIS, jika kita nak buat geoprocessing task, selalunya kita gunakan tool-tool dalam ArcToolBox. Contohnya, nak convert sistem koordinat kita guna tool Project, nak buat analisis zon penampan, kita guna tool Buffer, nak potong data ikut project area, kita guna tool Clip. Tapi anda perasan tak, kebanyakan tool geoprocessing ni, dia hanya accept 1 parameter input data saja. Kalau kita nak run gunakan lebih dari 1 input data, kita kena run berulang-ulang tool ni. Contohnya, cuba lihat dialog tool Clip di bawah ni.


Kalau anda perhatikan dalam dialog Clip tu, anda hanya boleh masukkan 1 layer saja kat ruangan Input Features. Kalau saya nak clip 4 layer contohnya, saya kena run tool Clip ni berulang-ulang sebanyak 4 kali. Contohnya kalau saya ada kes macam data di bawah ni.


Perhatikan saya ada 4 layer, Penempatan, Jalan, Sungai dan Mukim. Sekarang ni saya nak potong keempat-empat layer tu mengikut sempadan Project Area (sempadan kotak merah). Kalau saya nak run guna kaedah clip yang biasa, saya kena run tool Clip tu 4 kali, barulah saya akan dapat hasil seperti di bawah. Run Clip yg pertama, saya specify Input Features sebagai Penempatan, run Clip yg kedua saya specify Input Features sebagai Jalan dan begitulah seterusnya sampai complete keempat-empat layer.



Tapi di sini saya akan kongsikan 1 tips macamana nak dapatkan hasil tu dengan sekali run Clip sahaja. Caranya, gunakan kaedah batch. Follow steps berikut :-




Penerangan gambar :-
  1. Dalam ArcToolbox, klik Analysis Tools > Extract dan right click Clip, pilih Batch… (Anda boleh pilih Batch ni utk semua tool dalam ArcToolbox, tak semestinya tool Clip sahaja)
  2. Dalam dialog Clip, masukkan layer yang pertama nak clip kat Input Features
  3. Setkan clip layer di ruangan Clip Features. Dalam contoh saya ni layer Project Area.
  4. Setkan nama output layer yang nak dihasilkan dalam ruangan Output Feature Class.
  5. Nak masukkan layer kedua, klik butang +
  6. Ulang semula proses dengan masukkan layer seterusnya.
  7. Klik OK.

Mungkin anda akan cakap… “aaah… sama je, takde beza pun… kena gak buat satu-satu, masuk ulang-ulang.. “. Tapi cuba anda bayangkan kalau setiap satu layer yang anda nak clip tu datanya besar, untuk satu proses clip setiap layer mungkin ambil masa lama. Bayangkan kalau dekat 10 layer nak buat clip. Kalau nak buat kaedah Clip biasa, anda kena tunggu dulu sampai selesai 1 proses, baru boleh proceed nak clip layer yang kedua. Tapi kalau cara batch ni, anda tak payah tunggu pun. Klik je OK, lepas tu boleh terus tinggal komputer, pergi la bancuh kopi ke, pi ngeteh ke. Balik dari ngeteh tengok-tengok proses pun dah selesai untuk semua layer. Kan lagi senang kalau macamtu, menjimatkan masa anda.

Selamat mencuba.

No comments:

Post a comment