Syntax Load Peta dari Map info

mapinfo_logo

Map info Logo

Pembahasan kali ini mengenai GIS Tutorial “seperti apakah sih syntax yang digunakan untuk memunculkan peta pada Map Info di aplikasi Visual Basic?” Sedikit mengulas tentang keterkaitan antara Map Info, MapBasic, dan Visual Basic yaitu ketiganya merupakan tiga bersaudara yang cukup solid kaitannya dengan pengembangan aplikasi GIS (Geographic Information System). Map Info merupakan aplikasi yang digunakan untuk pembuatan peta (baik data spasial maupun atribut) yang disimpan dalam suatu file berekstensi (.tab, .map, .id, .in, dan .dat). Sedangkan MapBasic merupakan bahasa yang didukung oleh Map Info sebagai interface penghubung dengan bahasa pemrograman lainnya. Nah, Visual Basic sebagai software yang digunakan untuk membuat aplikasi GIS dijembatani oleh MapBasic agar bisa berkomunikasi dengan Map Info.Bagaimanapun juga, keterkaitan antara 3Diva ini tidak bisa terpisahkan dan terelakkan..hehe.

vb

Dalam pembuatan aplikasi GIS ini, tentunya ada suatu ritual yang berfungsi untuk memanggil peta yang sebelumnya pernah dibuat di Map Info agar bisa tampil di aplikasi yang dibangun dengan Visual Basic. Software Visual Basic yang digunakan ini masih versi 6, dan belum .NET. Ulasan kali ini membahas syntax yang ada di visual basic agar bisa memanggil atau meload peta ke aplikasi yang akan kita buat. Bagaimana syntaxnya?berikut ini menu untuk bahasan kali ini :

Public Mapinfo as object

Public openmap, apppath as string

Public gagalbukaobjek as integer

 

Private Sub Form_Load()

 

Set Mapinfo = CreateObject(“MapInfo.Application”)

If gagalbukaobjek Then

Set Mapinfo = CreateObject(“MapInfo.Application”)

End If

Mapinfo.do “set window info parent ” & frmMain.semuagedung.hWnd

apppath = LCase(App.Path)

If (Right$(App.Path, 1) <> “\”) Then

apppath = apppath + “\”

End If

Mapinfo.do “Set Application Window ” & frmMain.semuagedung.hWnd

 

Mapinfo.do “Set Next Document Parent ” & frmMain.semuagedung.hWnd & “style 1”

openmap = “Run Application “”” + apppath + “semuagedung.wor” + “”””

Mapinfo.do openmap

End Sub

Hmm, sekarang kita membahas penjelasannya yah :

Baris 1-3

Pada baris 1 sampai 3 ini kita mendeklarasikan variabel yang nanti akan kita gunakan. Variabel “mapinfo” merupakan variabel bertipe objek karena kita akan memanggil objek lain (aplikasi lain) ke dalam aplikasi di form visual basic kita saat ini. Sedangkan variabel “openmap” dan “apppath” bertipe string. Kenapa?karena variabel openmap digunakan untuk menjalankan fungsi parameter mapbasic sedangkan apppath untuk mendefinisikan path atau folder kerja saat aplikasi ini nantinya akan dijalankan. Dan yang terakhir variabel “gagalbukaobjek” ini bertipe integer yaitu apabila nanti map info gagal dibuka (atau kalo dalam biner bernilai 0 (nol) berarti false sedangkan 1 berarti true), maka visual basic akan bersikeras mencoba untuk membangun hubungan silaturahmi dengan map info. Yah, gak cuma manusia, VB dan Map Info pun juga butuh sosialisasi dan silaturahmi agar terjalin hubungan atau komunikasi data antar keduanya.

Baris 5

Baris ini merupakan event saat form dijalankan. Sehingga nantinya akan menjalankan kode yang diapit antara “Private Sub Form_Load()” dan “End Sub

Private Sub Form_Load()

 

‘kode-kodenya diletakkan disini

 

End Sub

Baris 7-10

Baris ini meminta agar visual basic membina hubungan dengan map info. VB meminta permisi untuk melakukan koneksi ke Map info dengan pemanggilan fungsi “CreateObject“. Jika ternyata masih “gagalbukaobjek” maka tetap si VB meminta izin agar bisa terhubung dengan Map info.

Baris 11

Nah, tadi kita sudah mendefinisikan variabel “mapinfo” bukan?yang kode paling atas dimana tipe datanya object. Variabel ini nantinya akan meminta untuk MENGEKSEKUSI perintah-perintah MAPBASIC. Sedangkan “Set Window Info Parent ” merupakan perintah mapbasic untuk menampilkan semua tampilan informasi utama (layer, tematik, legenda, grafik, tabel, layout,dlsb) di dalam Mapinfo diletakkan di dalam sebuah window. Nah, sekarang yang perlu diperhatikan adalah

–> frmMain : Merupakan nama ojbek form saat ini.

–> semuagedung : Merupakan nama objek yaitu PICTUREBOX.

–> hWnd : handle window, fungsi API untuk mengatur tampilan dalam suatu window.

Baris 12 -15

Untuk baris ini, kita mendefinisikan direktori/path dimana aplikasi ini kita simpan. “LCase” merupakan Lower Case yaitu fungsi Visual Basic untuk membuat suatu string memiliki huruf kecil semua. Sedangkan “App.Path” adalah fungsi bawaan VB untuk merefer ke direktori kerja dimana aplikasi projek (*.vbp) disimpan.

Bentuk Umum direktori : “C:\mydocuments\firmansyah\proyek“. Nah, apabila dalam direktori ini masih belum ada tanda backslash  “\” di akhir bentuk umum direktori seperti diatas, maka akan kita tambahkan sehingga menjadi “C:\mydocuments\firmansyah\proyek\”.

Baris 16-18

Hampir sama seperti pada baris 11. Bedanya hanya pada perintah MapBasic apa yang dieksekusi. Kalau pada baris ini adalah “Set Application Window ” dan “Set Next Document Parent “.

– Baris 19

Nah, inti dari bagaimana membuka suatu peta (yang telah dibuah ke dalam ekstensi .wor atau workspace) ada pada bagian di baris 19 ini. Visual basic memerintahkan agar mapinfo memuat/menampilkan peta yang bernama “semuagedung.wor” di objek picturebox yang bernama “semuagedung” (pada syntax frmMain.semuagedung.hWnd – telah dibahas di baris 11).

Baris 20

Ekseskusi perintah mapbasic. Perintah yang dieksekusi sudah tersimpan dalam variabel openmap, sehingga disini tinggal memanggil nama variabelnya saja.

Alhamdulillah, akhrnya selesai sudah tulisan ini dibuat. Jika nanti dari pembaca ada masukan maupun saran, silakan saja bisa sharing disini. Semoga tulisan yang sedikit ini bisa memberikan manfaat yang besar bagi pembaca sekalian. Sekiranya ada kesalahan konsep atau pemikiran saya, mohon untuk dikoreksi dari rekan-rekan semuanya.

Salam Perubahan. “Jadikan Hidup lebih BERMAKNA dengan knowledge sharing”.

(sumber : http://firmansyah.web.id/syntax-load-peta-dari-mapinfo.html)

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s