ISB Atma Luhur Pangkalpinang

CARA MEMBANGUN APLIKASI GIS DENGAN DOTSPATIAL OPENSOURCE

dotspatial

Selamat siang semua, Pada Kesempatan kali ini, saya akan membahas tentang Bagaimana Cara Membangun Aplikasi GIS/SIG Dengan Dotspatial Opensource. 

Tahukah kalian? Dalam membangun sebuah Aplikasi GIS dibutuhkan komponen/control guna menampilkan Map maupun legendanya. Salah satu komponen yang digunakan yaitu komponen open source yang tidak kalah hebatnya dari MapObject, namanya MapWinGIS.ocx. Komponen ini bisa digunakan pula diberbagai bahasa pemrograman seperti Delphi, VB 6, VB.net hingga C++.net.

Seiring waktu akhirnya saya coba melirik DotSpatial.dll yang dulunya  bernama MapWindow6.dll. Sebenarnya DotSpatial juga pengembangan dari MapWinGIS namun dibutuhkan .Net Framework 4 untuk menggunakannya. Membuat code di DotSpatial jauh lebih mudah ketimbang MapWinGIS, apalagi cukup menggunakan satu file library (dll) yang didalamnya sudah ter-include control Map, legenda, toolbar hingga ribbon. Ternyata pihak pengembang DotSpatial sudah melengkapi code yang siap pakai dan tinggal di eksekusi. Misalnya saja di MapWinGIS untuk meload file shp/raster dibutuhkan Code seperti berikut:

‘Create instances of the possible data objects,

‘to retrieve the dialog filters of supported formats.

Dim sf As New MapWinGIS.Shapefile

Dim grd As New MapWinGIS.Grid

Dim img As New MapWinGIS.Image

‘We want users to be able to open any file type.

‘Merge the dialog filters by placing a pipe character

‘in between each:

Dim dlg As New OpenFileDialog

dlg.Filter = “All Files (*.*)|*.*|” & sf.CdlgFilter & _

“|” & grd.CdlgFilter & “|” & img.CdlgFilter

If dlg.ShowDialog() = Windows.Forms.DialogResult.OK Then

‘If the user didn’t cancel the dialog, try to open the file.

‘First, determine what kind it was:

Dim extension As String = _

IO.Path.GetExtension(dlg.FileName).ToLower()

If sf.CdlgFilter.ToLower().Contains(extension) Then

‘It’s a shapefile

sf.Open(dlg.FileName)

Map.AddLayer(sf, True)

‘Zoom to all visible layers

Map.ZoomToMaxExtents()

Return ‘Done

ElseIf grd.CdlgFilter.ToLower().Contains(extension) Then

‘NOTE: a .tif can be a GeoTIFF (a grid)

‘or an image. Check this, if the file

‘is a tif:

If dlg.FileName.ToLower().EndsWith(“tif”) Then

If Not Map.IsTIFFGrid(dlg.FileName) Then

‘It’s an image, not a grid.

‘Open it as an image.

img.Open(dlg.FileName)

Map.AddLayer(img, True)

‘Zoom to all visible layers

Map.ZoomToMaxExtents()

Return ‘Done

End If

End If

‘Open the grid:

grd.Open(dlg.FileName)

‘Define a coloring scheme to color this grid:

Dim sch As New MapWinGIS.GridColorScheme

‘Use a predefined coloring scheme “Fall Leaves”

sch.UsePredefined(grd.Minimum, grd.Maximum, _

MapWinGIS.PredefinedColorScheme.FallLeaves)

‘Convert it to an image that can be displayed:

Dim u As New MapWinGIS.Utils

Dim gridimage As MapWinGIS.Image

gridimage = u.GridToImage(grd, sch)

‘Add the generated image to the map:

Map.AddLayer(gridimage, True)

‘Zoom to all visible layers

Map.ZoomToMaxExtents()

Return ‘Done

ElseIf img.CdlgFilter.ToLower().Contains(extension) Then

‘It’s a plain image

img.Open(dlg.FileName)

Map.AddLayer(img, True)

‘Zoom to all visible layers

Map.ZoomToMaxExtents()

Return ‘Done

End If

End If

(Lumayan panjang kan?), namun di DotSpatial cukup mengetik code satu baris seperti berikut:

Map1.AddLayer()

maka file shp dengan mudah ditampilkan. Konfigurasi legendanya juga sangat mudah dan tidak perlu mengetik code untuk menampilkan legenda cukup mengatur propertiesnya . Bahkan yang sangat menarik adalah jika di klik kanan di legenda maka akan muncul menu untuk menampilkan fungsi yang hampir sama di ArcGIS seperi “View Attribute Table”, “Remove Layer”, “Zoom To layer”, “Properties” dan masih banyak lagi. Selain itu untuk menampilkan informasi peta (Identifier), Measure hingga membuat Layout masing-masing hanya cukup mengetik satu baris perintah jadi sangat memudahkan.

Semoga Tutorial Ini Bermanfaat Bagi Kalian Semua ^ _ ^,, TERIMA KASIH …..

Sumber :  http://bu-gis.blogspot.co.id/2012/03/membangun-aplikasi-gissig-dengan.html

NIM : 1211500098

NAMA : JEPRI

KELOMPOK : TT

MATAKULIAH : SISTEM INFORMASI GEOGRAFIS GASAL 2015/2016

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *