Sunday, February 25, 2018

Aplikasi Opensource untuk Split dan Merge File PDF

Dokumen Pdf telah menjadi standar format untuk sharing data secara global. Dengan format Pdf file dokumen menjadi lebih sederhana, kuran file yang relatif lebih kecil, kualitas file tidak berkurang dari file aslinya karena  data berupa vektor bukan raster sehingga ketika di perbesar sampai batas tertentu tidak akan merubah kualitas data dan yang utama adalah portabilitasnya dimana bisa dibuka oleh aplikasi browser apapun tanpa membutuhkan aplikasi pembuka pdf tertentu.

Dengan demikian semakin berkembang dan banyak dibuat software untuk pengolah dan pembuatan dokumen Pdf. Saat saya berbagi salah satu software untuk memotong (split) dan menggabung (merge) dokumen Pdf  dengan mudah dan yang terutama gratis karena bersifat opensource. Nama aplikasi atau software yang dimaksud adalah 7-PDF Split and Merge.

Untuk dapat mendownload silahkan klik disini.
atau alternatif lain klik disini.

Cara menggunakannya cukup sederhana yaitu:

  • Untuk melakukan split dokumen pdf, buka aplikasi. Pilih tab Split DPF Files..., kemudian tambahkan yang akan di split dengan menggunakan button Add. Kemudian lakukan seting untuk split halaman yang diinginkan. Dalam contoh saya akan split sebuah file dengan tujuan ingin mengambil halaman cover (halaman 1) dan halaman 10-12 pilih radio button Split by page-range. Tentukan tempat output hasil split file, dan terakhir klik button Split this PDF.

  • Untuk Melakukan merge file pdf, pilih tab Merge PDF Files..., kemudian tambahkan file (button Add) tentukan urutan dokumen dari file pdf dengan cara klik button Up atau Down tentukan tempat hasil output, terakhir klik button Merge PDF Files!

Oke cukup sekian tulisan sederhana mengenai split dan merge file pdf dengan menggunakan aplikasi opensource dan semoga bermanfaat @wawanhn.

Sunday, February 18, 2018

Cara Mengatasi error D3dx9_43.dll is Missing

Bagi yang suka bermain game mungkin ada yang pernah mengalami ''The Progam Can't Start Because D3DX9_43.dll is Missing from your Computer.Try Reinstalling the progam to fix problem''
Terkadang bagi yang belum tahu cara mengatasinya bisa menjadi masalah karena mungkin harus coba install ulang yang memakakan waktu lama dan belum tentu berhasil lagi.


Masalah tersebut karena pada file komputer kita tidak terdapat dll D3DX9_43, dengan demikian kita dapat memperbaiki masalah tersebut denga cara mencari file D3DX9_43.dll dan disimpan di folder aplikasi game yang kita install. bagi yang membutuhkan file dll tersebut untuk Windows 7 atau Windows 10 dapat didownload di link dibawah ini.

Windows 64 bit download
Windows 32 bit download

Demikian semoga bermanfaat. @wawanhn

Friday, February 2, 2018

Python untuk Analisis Geospatial Bagian 4: Menggunakan Library Shapely untuk Analisis Sederhana

Pada bahasan ini saya akan membahas bagaimana jika kita ingin mengetahui atau analisis dari peta batas administrasi, dimana kit aingin mengetahui tetangga dari sebuah Kabupaten dari sebuah peta batas administrasi kabupaten. Dalam contoh bahasan saya menggunakan peta batas admnistrasi Propinsi Jawa Barat dalam bentuk polygon yang dapat di download disini.

Gambar diatas merupakan tampilan dari peta batas administrasi kabupaten yang ada di Propinsi Jawa Barat. Selanjutnya dengan menggunakan Python dan beberapa tekhnik yang sudah dipelajari sebelumnya kita akan mencoba membuat kode program untuk membaca tetangga dari setiap kabupaten dari peta tersebut.

Kemudian dengan menggunakan IDLE kita buat kode program python dengan nama baca_tetang_kabupaten.py seperti dibawah ini:

import ogr
import shapely.wkt

def main():
    shapefile = ogr.Open("D:\Master\Peta\BIG2016\export\Batas_Kab_Jawa_Barat.shp")
    layer = shapefile.GetLayer(0)

    kabupatens = {}

    for i in range(layer.GetFeatureCount()):
        feature = layer.GetFeature(i)
        kabupaten = feature.GetField("KABUPATEN")
        outline = shapely.wkt.loads(feature.GetGeometryRef().ExportToWkt())

        kabupatens[kabupaten] = outline

    print "Dalam file Batas_Kab_Jawa_Barat.shp terdapat %d kabupaten" % len(kabupatens)
    for kabupaten in sorted(kabupatens.keys()):
        outline = kabupatens[kabupaten]

        for kabupaten_lain in sorted(kabupatens.keys()):
            if kabupaten == kabupaten_lain: continue

            outline_lain = kabupatens[kabupaten_lain]

            if outline.touches(outline_lain):
                print"%s batas-batas %s" % (kabupaten, kabupaten_lain)
    
if __name__ == "__main__":
    main()

Dalam kode program tersebut, pertama kita membaca jumlah seluruh objek Kabupaten dan selanjutnya mengecek objek-objek kabupaten yang bersebtuhan dengan sebuah objek kabupaten yang dicari. Dilakukan untuk setiap objek kabupaten.
Setelah kita run kode program tersebut sehingga menghasilkan output seperti dibawah ini:


Hasil dari kode program tersebut adalah menampilkan setiap border atau tetangga dari setiap kabupaten dalam peta propinsi Jawa Barat. Tetangga kabupaten tersebut merupakan kabupaten yang bersentuhan langsung dengan objek suatu kabupaten. 



Memperbaiki Tampilan Hitam Putih pada Windows 10

Kali ini saya akan berbagi pengalaman ketika menggunakan Windows 10. Tiba-tiba tampilan windows menjadi hitam putih padahal monitor OK dan kebetulan dalam komputer saya terdapat dual boot sehingga saya bisa lihat tampilan Linux baik-baik saja tetap berwarna. Awalnya saya berfikir terdapat kesalahan kerusakan dalam sistem operasi Windows 10 ternyata bukan...


Bagi yang sedang mengalami atau mungkin di suatu saat mengalami permasalahan ini, jangan khawatir saya akan share cara memperbaikinya tanpa ribet-ribet dan apalagi sampai harus install ulang.

Caranya sangat simpel yaitu dengan menggunakan keyboard tekan secara bersama Ctrl + Windows + C dan tampilan akan kembali menjadi berwarna seperti di bawah ini.


Ternyata dalam kasus yang saya alami perubahan warna terjadi karena secar tidak sengaja saya menekan Ctrl + Windows + C

Demikian tulisan ringan semoga bermanfaat. @wawanhn

Monday, January 29, 2018

Python untuk Analisis Geospatial Bagian 3: Menggunakan Library Shapely untuk Membaca File WKT

File WKT (Well Know Text) merupakan teks markup language untuk merefresentasikan geometri objek vektor  dari sebuah peta, sistem referensi geometri (sstem kordinat) dan transformasi antar siste kordinat.

Dengan menggunakan library shapely, dari data WKT kita dapat mendapatkan data:

  • menghitung nilai tengah dari nilai geometri
  • mengitung batas dari geometri, yang menunjukan batas utara, selatan, timur dan barat dari sudut sebuah polygon.
  • menghitung intersection diantara dua geometri.
  • menghitung perbedaan diantara dua geometri.
  • dan menghitung luasan dari area dengan catatan file shp menggunakan sistem proyeksi (meter) bukan dalam format derajat.

Kali ini kita lanjutkan penggunaan library shapefile untuk membaca file WKT dari peta DesaIndonesia.shp. Langkahnya masih menggunakan IDLE python dan buat file baru dengan nama baca_shp_wkt.py kemudian ketikan kode program sebagai berikut:

import ogr
import shapely.wkt

shapefile = ogr.Open("D:\Master\Peta\DesaIndonesia.shp")
layer = shapefile.GetLayer(0)
feature = layer.GetFeature(0)
geometry =feature.GetGeometryRef()
wkt = geometry.ExportToWkt()
outline = shapely.wkt.loads(wkt)
X = outline.centroid.x
Y = outline.centroid.y
B = outline.bounds

print "X : ", X , "Y : ", Y
print "Boundary: ", B

Maka akan dihasilkan output sebagai berikut:


Penjelasan:

feature = layer.GetFeature(0)

Digunakan untuk mendapatkan feature nomor 0dan disimpan ke variable feature.

geometry =feature.GetGeometryRef()

Sintax tersebut digunakan untuk mendapatkan referensi geometri.

wkt = geometry.ExportToWkt()

Sintax untuk melakukan ekport ke file WKT dan disimpan di variabel wkt.

outline = shapely.wkt.loads(wkt)

Sintax untuk meload file wkt ke variabel outline.

X = outline.centroid.x
Y = outline.centroid.y
B = outline.bounds

Sintax untuk menyimpan nilai tengah x ke variabel X, nilaing tengah y ke variabel Y dan menyimpan nilai boundari dari feature ke 0 ke variabel B. Data boundary yang ditampilkan adalah nilai minimum longitud dan latitud serta nilai maksimum longitud dan latitud (berati, min_x, min_y, max_x, max_y).

print "X : ", X , "Y : ", Y
print "Boundary: ", B


Sintax untuk menampilkan nilai variabel ke layar.

<<Sebelumnya  Selanjutnya>>







Python untuk Analisis Geospatial Bagian 2: Menggunakan Library OGR untuk Membaca Data SHP

Setelah dalam bahasan sebelumnya mengenai persiapan Python dan library untuk mengakses data spasial dilakukan pada tulisan

"Python untuk Analisis Geospatial Bagian 1: Install Library GDAL dan Shapely di Windows"


Langkah selanjunya adalah menggunakan library GDAL/OGR dan Shapely untuk mengakses data spatial. Sebelum kita melanjutkan ke contoh program dengan python, pertama kita harus mengenal mengenal data spasial yang akan kita olah disini.

"Mengenal Data Spasial"


Tools yang akan kita gunakan dalam contoh dibawah nanti adalah IDLE sebagai text editor bawan dari instalan Python. Langkah-langkah yang akan kita lakukan sebagai berikut:

  • Persiapan data saya menggunakan data administrasi BIG yang dapat didownload disini.
  • Buka aplikasi IDLE dari start menu
  • Kemudian di IDLE buka menu File-> New File dan ketikan kode perintah:
import ogr

shapefile = ogr.Open("D:\Master\Peta\DesaIndonesia.shp")
layer = shapefile.GetLayer(0)
for i in range(layer.GetFeatureCount()):
    feature = layer.GetFeature(i)
    feature_name = feature.GetField("KECAMATAN")
    geometry = feature.GetGeometryRef()
    geometry_type = geometry.GetGeometryName()
    print i, feature_name, geometry_type


  • Kemudian pilih menu Run -> Run Module atau dengan shortcut F5, untuk melakukan eksekusi program, jika berhasil maka di wondows baru ditapilkan seperti gambar dibawah.

  • Penjelasan kode program diatas adalah
import ogr

Sintak tersebut untuk mengimport librarry OGR yang merupakan library dari OSGEO yang dibuat untuk menulis dan membaca data vektor.

shapefile = ogr.Open("D:\Master\Peta\DesaIndonesia.shp")

Sintax diatas untuk membuka file DesaIndonesia.shp menggunakan library OGR.

layer = shapefile.GetLayer(0)

Sintax ini digunakan untuk menyimpan variable shapefile dalam sebuah datasource di libarry OGR, dimana datasource OGR dapat membaca beberapa informasi layer. Namun dalam contoh hanya terdapat 1 layer, dan kita mengakses 1 layer.

for i in range(layer.GetFeatureCount()):
    feature = layer.GetFeature(i)

Sintax tersebut digunakan untuk melakukan iterasi terhadap feature yang terdapat dalam shapefile, dan iterasi dilakukan untuk semua feature di file tersebut.

feature_name = feature.GetField("KECAMATAN")

Sintax tersebut untuk mendapatkan string dari field / kolom / atribut  "KECAMATAN", dimana dalam file DesaIndonesia.shp tersebut terdapat kolom yang bernama KECAMATAN, dan ingat cara menulisnya harus sama anatara penggunaan huruf besar dan kecil karena penamaan tersebut bersifat case sensitive.

geometry = feature.GetGeometryRef()

Sintax tersebut digunakan untuk mendapatkan referensi geometri.

geometry_type = geometry.GetGeometryName()

Sintax tersebut digunakan untuk mendapatkan jenis geometry dari DesaIndonesia.shp.

print i, feature_name, geometry_type

Sintax tersebut untuk mencetak nilai i (urutan dari 0 sampai data terakhir), nama kecamatan dan jenis geometri dari file DesaIndonesia.shp.

Demikianlah tulisan ini untuk melanjutkan klik

<<Sebelumnya     Selanjutnya>>    





Mengenal Data Spasial


Saat ini dengan perkembangan teknologi informasi, maka setiap data dan informasi dapat ditampilkan dalam sebuah data spasial yang lebih mempunyai makna  dan nilai lebih dibandingkan hanya ditampilkan dalam bentuk sederhana seperti dalam bentuk tabel ataupun hanya gambar saja. Data  yang dimaksud  memiliki atrribut spasial sehingga dapat diketahui atribut lokasi (geospasial) di permukaan bumi atau dalam arti sederhana setiap data tersebut diketahui lokasi nya dipermukaan bumi.

Untuk lebih mengerti mengenai data spasial dan karakteristiknya maka dalam tulisan ini akan dibahas secara umum mengenai data spasial yang biasa dikelola dalam sebuah Sistem Informasi Geografis. Saat ini data SIG dapat digunakan dan telah digunakan dalam semua aspek kehidupan dari mulai riset, bisnis, pendidikan, sosial budaya bahkan militer.

Data Spasial
Data spasial merupakan data yang bereferensi geografis atas representasi di permukaan bumi atau dengan kata lain data yang mempunyai informasi lokasi di permukaan bumi. Dalam perkembangannya data spasial bukan hanya data yang bereferensi di permukaan bumi saja namun bereferensi di atas permukaan bumi (udara) dan di bawah permukaan bumi (dibawah laut maupun dibawah tanah).

Data spasial secara umum dibagi menjadi dua bagian, yaitu data vektor dan data raster. Data vektor merefresentasikan data dalam bentuk vektor (titik, garis dan area atau polygon) sedangkan data raster merefresentasikan data bentuk piksel-piksel atau yang disebut citra/image.


Data Vektor
Data vektor menampilkan data SIG dalam bentuk titik, garis atau are (polygon) yang mempunyai atribut. Data spasial berbentuk titik merefresentasikan lokasi suatu data atau penomena dipermukaan bumi seperti lokasi ibukota, lokasi gedung, lokasi tiang listrik, titik tinggi dan sebagainya yang dapat direfresetasikan dalam bentuk titik. Data vektor jenis ini terdiri dari satu nilai x dan y dan bisa juga memiliki nilai z misal nilai ketinggian.

Data vektor yang berbentuk garis (line atau polyline) data yang merefrentasikan suatu penomena di bumi seperti jalan, sungai, ataupun alur navigasi dan lain-sebagainya. Data ini terdiri dari nilai x dan y yang berurutan dan bisa dihitung panjangnya.

Dan terakhir data yang berbentuk polygon adalah data yang merefresentasikan penomena dibumi yang mempunyai wilayah atau luasan, misalnya batas administrasi desa, kecamatan, kabuaten, proponsi, negara, danau, waduk, laut, tutupan lahan dan lain sebagainya. Data ini terdiri dari nilai x dan y yang berurutan dan bersifat tertutup serta bisa dihitung luasannya.

Data Raster
Data rater merefresentasikan objek di permukaan, atas, bawah bumi dalam bentuk matrik atau piksel-piksel yang membentuk grid yang secara sederhana bisa kita sebut citra atau gambar. Setiap piksel-piksel tersebut mempunyai nilai atribut lokasi (x,y). Dan setiap piksel tersebut bisa mempunyai resolusi yang berbeda-beda dalam merefresentasikan objek tergantung dari kedetailan dalam pengambilan data. Sehingga data raster dalam soal resolusi nya bisa dibagi menjadi data resolusi tinggi, menengah dan tinggi.

Contoh dari data spasial raster adalah:
  • Resolusi rendah (red: diatas 30 meter): Terra Modis, NOAA 
  • Resolusi menengah (red: 4 -30 meter):ASTER, Landsat 7, Alos
  • Resolusi tinggi (red: resolusi 0,4 - 4 meter): GeoEye-1, WorldView-2, WorldView-1, QuickBird, IKONOS, FORMOSAT-2, and SPOT-5.
Sumber: https://lajugandharum.wordpress.com/2011/01/07/kesepadanan-skala-peta-dan-resolusi-spasial-citra/

Demikian tulisan sederhana ini semoga bermanfaat dan nanti di suatu saat akan lebih didetailkan karena penjelasan yang dijabarkan diatas masih bersifat global sekali. @wawanhn

Sumber:
https://lajugandharum.wordpress.com/2011/01/07/kesepadanan-skala-peta-dan-resolusi-spasial-citra/
https://grivinayuliantika.blogspot.co.id/2013/05/karakteristik-citra-dari-resolusi.html
https://dtechnoindo.blogspot.co.id/2016/10/defenisi-data-spasial-dan-format-data.html
https://selfaseptianiaulia.wordpress.com/2013/05/17/pertemuan-1-macam-macam-jenis-citra-satelit-dan-penggunaannya-serta-menggabungkan-band-pada-landsat/