You are on page 1of 5

ACARA V BASIS DATA SIG VEKTOR

DASAR TEORI
Sistem informasi geografis (SIG) merupakan sistem berbasis komputer yang digunakan untuk menyimpan dan memanipulasi informasi geografis. Teknologi ini telah berkembang begitu cepat selama dua dekade terakhir dan sekarang telah diterima sebagai alat pokok untuk penggunaan informasi geografis yang efektif (Aronof, 1989). Format data pada SIG dibagi atas dua yaitu data raster dan vektor. Banyak tipe software untuk mengelola data SIG vektor beserta tipe filenya masing-masing. Pada database SIG vektor bertipe shape file, setiap layer peta/ feature class dikelola pada satu tabel. Sebuah kolom Shape dalam setiap baris digunakan untuk menyimpan data geometri atau bentuk masing-masing fitur. Dalam konteks pemrograman spasial untuk dapat mengakses data spasial pada database dapat dilakukan selayaknya mengakses cell pada pertemuan baris dan kolom dalam tabel biasa, hanya saja pada database spasial cell tadi berisi data bertipe geomertri yang merupakan bentuk masing-masing fitur dalam peta yang dapat diolah lebih lanjut untuk berbagai aplikasi dalam SIG.

Membuat Program Latihan5


Program Latihan5 mempunyai kemampuan 1. Menambahkan data vektor 2. Merubah tampilan: Zoom In, Zoom Out, Full Extent, dan Pan 3. Mendapatkan nilai atribut pada data vektor 4. Mengganti nilai atribut pada data vektor Tujuan latihan ini adalah 1. Berlatih menggunakan ActiveX Control MapWinGIS 2. Berlatih menangani database SIG vektor 1

LANGKAH KERJA 1. ActiveX Control MapWinGIS tidak ada pada control standard Microsoft Visual Basic 6 untuk itu silahkan install MapWinGIS pada komputer. 2. Tambahkan komponen MapWinGIS dengan cara klik kanan Toolbox kemudian klik Components. Maka akan muncul dialog Components, silahkan centang MapWinGIS Components.

3. Buatlah form dengan dilengkapi kontrol-kontrol sebagaimana gambar berikut:

Adapun properties pada kontrol-kontrol adalah sebagai berikut: No 1 2 3 4 5 6 7 8 Control Map CommandButton CommandButton TextBox CommandButton ListBox Frame OptionButton (sebanyak 5 buah dibuat dengan cara copy-paste) Properties Name Name Caption Name Caption Name Text Name Caption Name Name Caption Name Index Caption Value Value Map1 cmdOpenShapeFile Open Shape File cmdGetValue Get Value Text1 cmdSetValue Set Value List1 Frame1 Cursor Mode optCursorMode 0 1 2 3 4 Zoom Zoom Full Pan None In Out Extent True False False False False

4. Tuliskan kode program sebagaimana tertulis pada Lampiran. 5. Jalankan program kemudian klik tombol Open Shape File maka akan muncul gambar peta pada kontrol Map1. Pelajari scriptnya. 6. Klik tombol Get Value maka akan muncul daftar nilai pada kontrol List1. 7. Klik salah satu nilai pada List1 maka pada Text1 akan terisi dengan nilai yang sama, di samping itu juga pada Map1 akan mengalami perbesaran pada data terpilih. Ganti nilai pada Text1 dan klik tombol Set Value maka data List1 juga ikut berubah, hali ini menandakan atribut peta telah berubah. Coba lihat peta yang telah Anda edit dengan software GIS yang lain (misal ArcGIS), check pada tabel atribut peta apakah sudah berubah. Pelajari scriptnya.

LAMPIRAN Dim dataIndex As Long Private Sub cmdOpenShapeFile_Click() Dim sf As New MapWinGIS.Shapefile sf.Open ("Data\states.shp") 'Keterangan: AddLayer(Object As Object, Visible As Boolean) Map1.AddLayer sf, True End Sub Private Sub cmdGetValue_Click() 'Mengambil nilai pada tabel atribut dan 'memasukkan nilai ke dalam List1 Dim sf As New MapWinGIS.Shapefile Set sf = Map1.GetObject(0) Dim i As Integer Dim txt As String List1.Clear For i = 0 To sf.NumShapes - 1 'Keterangan: CellValue(FieldIndex As Integer, ShapeIndex As Integer) 'Sesuaikan FieldIndex dangan kolom pada tabel atribut txt = sf.CellValue(1, i) List1.AddItem txt Next End Sub Private Sub cmdSetValue_Click() 'Mengganti nilai dari objek yang dipilih pada List1 'dengan nilai yang ditulis pada Text1 Dim sf As New MapWinGIS.Shapefile Set sf = Map1.GetObject(0) 'Keterangan: EditCellValue(FieldIndex As Integer, ' ShapeIndex As Integer, NewVal As Object) sf.StartEditingTable sf.EditCellValue 1, dataIndex, Text1.Text sf.StopEditingTable True 'Update List1 Dim i As Integer Dim txt As String List1.Clear For i = 0 To sf.NumShapes - 1 txt = sf.CellValue(1, i) List1.AddItem txt Next Map1.Redraw End Sub 4

Private Sub List1_Click() 'Memilih objek pada List1 dan zoom ke objek terpilih dataIndex = List1.ListIndex 'Keterangan: ZoomToShape(LayerHandle As Integer, Shape As Integer) Map1.ZoomToShape 0, dataIndex 'Update Text1 dengan nilai objek terpilih pada List1 Text1.Text = List1.List(dataIndex) End Sub Private Sub optCursorMode_Click(Index As Integer) Select Case Index Case 0 Map1.CursorMode = cmZoomIn Case 1 Map1.CursorMode = cmZoomOut Case 2 Map1.CursorMode = cmNone Map1.ZoomToMaxExtents Case 3 Map1.CursorMode = cmPan Case 4 Map1.CursorMode = cmNone End Select End Sub

You might also like