Home arrow News - Articles arrow Behind the Scene arrow Membuat Aplikasi SIG dengan MapObjects Bagian II: Fungsi-fungsi Lanjutan
 
  XnRnXZvLpO www.danielhp.com
Membuat Aplikasi SIG dengan MapObjects Bagian II: Fungsi-fungsi Lanjutan PDF Print E-mail
Written by Administrator   
Thursday, 26 July 2007
Article Index
Membuat Aplikasi SIG dengan MapObjects Bagian II: Fungsi-fungsi Lanjutan
Page 2
Page 3
Page 4
Page 5
Page 6
Page 7

c.       ClassBreakRenderer

 

Jika Jenis ValueMap biasa digunakan untuk field-field dengan tipe string, maka untuk field-field dengan tipe angka sering dibentuk dalam ClassBreak Renderer. ClassBreak renderer akan membuat kelompok-kelompok nilai, dimana kelompok-kelompok nilai tadi mempunyai bentuk symbol tertentu. Nilai suatu field jika ada dalam range suatu kelompok akan mengikuti bentuk symbol kelompok tadi. Untuk tipe polygon,biasanya perubahan nilai range diikuti dengan perubahan warna, sedang pada Garis dan Titik, selain perubahan warna juga dapat menggunakan perubahan ukuran.

 

Dalam contoh pertama akan dibuat 10 buah batas nilai (break), masing-masing batas nilai berselang 1.000.000 dari batas sebelumnya. Nilai-nilai ini akan dibuat dalam warna gradasi dari kuning ke merah. Jadi warna kuning akan bernilai paling kecil dan warna merah bernilai paling besar.  Kelompok nilai ini akan dibuat untuk perbandingan dengan isi suatu field tertentu dalam layer, jika nilai field adalah 1.400.000 maka ia masuk kelompok 1.000.000 sampai 1.999.999, dan warna/symbol akan mengikuti warna atau symbol kelompok ini.

 

 

Untuk membuat kelompok nilai, dilakukan dengan mengisi property BreakCount. Dan pemberian nilai tiap batas dilakukan dengan mengisikan property break dengan parameter nomor break. Sedang untuk membuat warna gradasi dilakukan dengan fungsi rampcolors dengan parameter warna awal dan warna akhir. Berikut adalah cuplikan code untuk menambah layer dengan rendering bertipe classbreak.

Dengan hasilnya dapat dilihat pada gambar 23.

 

Dim L1 As MapObjects2.MapLayer

      Set L1 = New MapObjects2.MapLayer

      L1.GeoDataset = dc.FindGeoDataset("states")

      Dim cb As New ClassBreaksRenderer

      cb.Field = "Pop1990"

      cb.BreakCount = 10

      For i = 0 To cb.BreakCount - 1

        cb.Break(i) = i * 1000000

      Next

      cb.RampColors moYellow, moRed

      L1.Renderer = cb

      Map1.Layers.Add L1

 

Gambar 23. Contoh classbreak renderer pada polygon

 

Contoh diatas adalah contoh untuk tipe data polygon. Seperti telah disebutkan sebelumnya, untuk Line dan Point, dapat dibuat suatu gradasi symbol berdasar besar atau ukurannya. Berikut ini dicontohkan kode untuk bentuk classbreak renderer untuk layer bertipe point. Untuk gradasi ukuran, dilakukan dengan fungsi SizeSymbol dengan parameter ukuran terkecil dan ukuran terbesar. Brikut adalah cuplikan code untuk menambahkan data cities yang dirender dengan classbreak renderer untuk ditampilkan dalam ukuran yang berbeda tergantung besar populasinya. Contoh hasilnya seperti terlihat pada gambar 24.

 

 

       Dim cb As New ClassBreaksRenderer

       cb.Field = "Population"

       cb.BreakCount = 10

       cb.SymbolType = moPointSymbol

       For i = 0 To cb.BreakCount - 1

        cb.Break(i) = i * 100000

        cb.Symbol(i).Color = moRed

        cb.Symbol(i).Style = moCircleMarker

       Next

       cb.Symbol(i).Color = moRed

       cb.Symbol(i).Style = moCircleMarker

       cb.SizeSymbols 2, 20

       L1.Renderer = cb

       Map1.Layers.Add L1

 

Gambar 24. Contoh classbreak renderer untuk tipe Point

 

 


Last Updated ( Sunday, 13 April 2008 )
 
< Prev   Next >
 
 
(C) 2012 daniel hary prasetyo
Free Joomla Template designed by funky-visions.de
 

articles (a-z order)