Menentukan Satu Titik Apakah di Dalam Beberapa Region

Jika pada tulisan yang lalu untuk satu region dengan instruksi inpoly dapat diketahui apakah titik tersebut di dalam atau di luar region, ternyata mengalami error ketika region yang diambil dari shapefile lebih dari satu dengan dibatasi oleh beberapa koordinat kosong “NaN”.

Salah satu fungsi Matlab yang bisa mengatasi masalah ini adalah fungsi inpolygon. Fungsi ini berbeda dengan fungsi inpoly yang hanya satu region dan harus diunduh dulu karena tidak tersedia di Matlab. Pada fungsi bawaan Matlab, Inpolygon, region tidak dinyatakan dalam satu variabel melainkan menjadi dua sumbu yaitu sumbu x yang dinyatakan dengan xv dan sumbu y yang dinyatakan dengan yv, seperti dari sumber tulisan ini.

Jika polygon yang anda miliki di ekspor dalam format kolom (baris menyatakan point) maka harus di convert dengan fungsi transpose. Saya memiliki region jalan dan danau kota bekasi dengan format baris, maka saya harus konversi menjadi format kolom kemudian memisahkan menjadi dua (xv dan yv).

  • >> xv=transpose(y(:,1));
  • >> yv=transpose(y(:,2));

Dua kode di atas adalah membuat variabel x dan y dari region. Berikutnya kita akan mengecek apakah suatu titik, misalnya rumah sakit di kab bekasi apakah terletak di jalan, sungai atau danau? .. (pertanyaan yg aneh .. he he). Kita impor lokasi rumah sakit dulu:

  • >> data2=impor(‘xxxxxxx.shp’);
  • >> y2=transpose([data2.X;data2.Y]);
  • >> tes=transpose(y2);
  • >> inpolygon(tes(1,:),tes(2,:),xv,yv)
  • ans =
  • 0 0 0 0 0 0 0 0 0 0 0 0

Variabel yang akan diuji ditranspose dan diberi nama tes, kemudian dicek dengan fungsi inpolygon. Hasilnya bener kan .. tidak ada rumah sakit yang berada di jalan, sungai atau danau. Kayak kurang kerjaan aja ya. Tapi itu berguna untuk program penataan ruang (pabrik, geografi, dll). Mengapa bangsa eropa maju, ya mungkin karena “They think everyting”. O iya, untuk melihat region di Matlab dengan toolbox “mapview“, masukan koordinatnya. Penggunaan secara detail dapat dilihat di tulisan sebelumnya.

Membuat Shapefile Kecamatan dari Kabupaten (Clipping)

Salah satu keterampilan terpenting dari pengguna GIS adalah kemampuan membuat satu peta dari data peta yang tersedia. Misalnya kita diminta membuat peta kecamatan bekasi selatan dari peta kota bekasi maka kita harus sanggup membuatnya, bisa dengan ArcGIS, ArcView atau aplikasi GIS lainnya. Di sini kita coba dengan ArcGIS.

Langkah pertama adalah siapkan shapefile kota bekasi, dilanjutkan dengan membuat satu project baru atau “menumpang” dari project yang ada. Proses yang dilakukan adalah clipping kota bekasi dengan pengguntingan pada kecamatan bekasi selatan.

Setelah peta kota bekasi dibuka, buka data dengan klik kanan di table of content pilih open attribut table. Sorot kecamatan yang akan diclip. Berikutnya adalah masuk ke menu clip yang berada di menu geoprocessing.

Isi baik input features dan clip features dengan shapefile yang sama. Tentu saja jangan lupa men-select di table kecamatan bekasi selatan, kalo tidak ya akan menghasilkan sama dengan shapefile kota bekasi (tidak ada yang digunting). Jika sudah tekan OK, tunggu hingga selesai dan pastikan tidak ada warning pertanda ada yang salah. Semoga bermanfaat.