(https://cadex.files.wordpress.com/2018/05/image13.png)
Tabel yang akan dibuat di Microsoft Access terdiri dari 3 (tiga) kolom/field yang yang terdiri
dari:
(https://cadex.files.wordpress.com/2018/05/image15.png)
Langkah selanjutnya adalah membuat node topology dari object text Berkas dan Nama.
Agar proses pembuatan node topology lebih cepat terutama saat pemilihan object, maka
sebaiknya object text Berkas dan text Nama terdapat pada layer yang berbeda.
Saat saya melakukan pengecekan gambar kedua object text Berkas dan Nama terletak pada
satu layer [tn_lai] sehingga perlu dibuat layer baru untuk memisahkan object text Berkas
dengan object text Nama.
B.1. Menggunakan Filter untuk Memisahkan Text Berkas dan Text Nama.
Misalkan text Nama diletakkan di layer [tn_lai] kemudian text Berkas diletakkan di layer
[tn_lai_berkas], maka langkah-langkah untuk memisahkan object text tersebut adalah:
1. Buat layer baru dengan nama [tn_lai_berkas] kemudian set warna layer ke warna merah
atau warna yang berbeda dengan warna layer [tn_lai]
2. Proses pemilihan text dalam satu layer akan lebih mudah jika ada properties text yang
berbeda dari object text Berkas dan text Nama. Misal warna textnya berbeda, tinggi text
berbeda atau text style yang berbeda. Pada kasus ini text propertiesnya seperti warna text,
tinggi text, text style antara object text Nama dengan object text Berkas adalah sama tetapi
untung masih ada perbedaan yang saya temukan yaitu pada object text Berkas selalu ada
huruf dash atau “-“.
Fasilitas perintah Filter di autocad dapat digunakan untuk memilih object text dengan
kriteria filter : memilih semua Object Text dengan Text Value berisi huruf “-” di layer [tn_lai].
Setelah object text terpilih, maka object tersebut dipindahkan ke layer [tn_lai_berkas]
Lesson learned: Sebaiknya letakkan di layer yang berbeda jika object memiliki
informasi yang berbeda sehingga mempermudah dalam proses analisa
3. Ketik di command:Filter
4. Pilih [Add Selected Object], kemudian pilih salah satu object text Berkas:
(https://cadex.files.wordpress.com/2018/05/image16.png)
Pada List Box, hapus object properties selain properties [Object=Text], [Layer=tn_lai] dan [Text
Value]. Cara menghapus adalah dengan memilih property yang ada di list box kemudian click
Delete.
(https://cadex.files.wordpress.com/2018/05/image17.png)
7. Setelah itu click [Apply] untuk memulai memilih object dengan criteria filter seperti di atas.
9. Maka seluruh object text di layer [tn_lai] yang textnya terdapat huruf “-” akan terpilih.
11. Pada setting Design Properties, rubah Color : ByLayer kemudian Layer: tn_lai_berkas
(https://cadex.files.wordpress.com/2018/05/image18.png)
12. Gambar setelah text berkas dan text nama dipisahkan layernya. Text warna merah adalah
object berkas di layer [tn_lai_berkas]
(https://cadex.files.wordpress.com/2018/05/image19.png)
B.2. Membuat Node Topology untuk Text Nama dan Text Berkas
(https://cadex.files.wordpress.com/2018/05/image20.png)
C. Konversi Object Text ke Table Object Data.
Pada [CAD-MAP-017]: Membuat tabel Microsoft Access dari Hasil Topology Analysis di
AutoCAD Map (https://cadex.co/2018/05/19/cad-map-017-membuat-tabel-microsoft-access-dari-
hasiil-topology-analysis-di-autocad-map/) saat melakukan overlay, setting untuk attribute di
source topology menggunakan property object text autocad .STRING sehingga nilai object text
di node topology (nama topology pada contoh sebelumnya : pt_nama) ikut dalam proses
overlay.
Setting property .STRING juga diset pada overlay topology (nama topology pada contoh
sebelumnya : pol_pbt) akan tetapi pada saat proses overlay dijalankan terjadi kegagalan.
Kegagalan ini mungkin terjadi karena ada dua nama field pada satu tabel yaitu STRING dari
source topology dan STRING dari overlay topology.
Salah satu cara agar proses overlay berhasil, maka pada cara sebelumnya property object text
.STRING diconvert menjadi tabel database access kemudian nama field diganti yang
sembelumnya STRING menjadi NIB.
Cara lain agar proses overlay tidak menghasilkan field sama adalah dengan membuat object
data table dengan setting nama field yang berbeda. Nama field dan nama tabel yang akan
dibuat adalah:
Jika menggunakan kotak dialog, cara membuat data object data dengan click icon [Define
Object Data] di group [Attribute Data] dari menu [Map Setup]
(https://cadex.files.wordpress.com/2018/05/image21.png)
Catatan: “Pada tahapan selanjutnya setting perintah melalui kotak dialog dimatikan
sementara sehingga pilihan dan isian dilakukan melalui prompt command:. sehingga
urutan perintah dapat dicatat / disalin untuk kemudian dibuatkan program
Autolispnya”
Command: _adedefdata
Table: [?/Delete/Modify/New/Rename/eXit]<eXit>: N
Table name: OD_NIB
Field 1:
Field name: NIB
Field description: <ENTER>
Field type: [Integer/Character/Point/Real]: <Integer>: C
Field default value: <ENTER>
Continue with next field? [Yes/No] <Y>:N
Table: [?/Delete/Modify/New/Rename/eXit]<eXit>: X
Pada tahap di atas object data dengan nama OD_NIB sudah dibuat, untuk membuat object
data tabel OD_NAMA dan OD_BERKAS maka perlu diulang langkah di atas dengan
memasukkan isian di prompt Table Name dengan nama object table yang diinginkan.
Setting cmddia dan perulangan atau looping untuk membuat object data di atas jika
menggunakan program autolisp adalah:
(defun c:atop ()
;;1. MEMBUAT OBJECT DATA
(setq cmddia_old (getvar “cmddia”));simpan setting cmddia sebelumnya(setvar “cmddia”
0);set kotak dialog off
;setting list object data di bawah bisa dirubah sesuai data yang ada
(setq list_od (list “OD_NIB” “OD_BERKAS” “OD_NAMA”));list object data yang akan dibuat
(setq list_fld (list “NIB” “BERKAS” “NAMA”));list nama field atau header
(setq list_type (list “C” “C” “C”)); list object type dari list object di atas
Catatan: Pada tahap selanjut autolisp akan terus diupdate sehinga akan tersusun
program autolisp yang merangkup semua tahapan di tutorial ini.
C.2. Mengisi Object data OD_NIB, OD_NAMA dan OD_BERKAS dari Text NIB, NAMA dan
BERKAS.
Object data yang telah dibuat kemudian diisi dengan text string dari object NIB, NAMA dan
BERKAS yang masing-masing ada di layer yang telah didefiniskan sebelumnya yaitu:
Autocad Object Nama Layer Target Object Data
Text 080201 OD_NIB
Text tn_lai OD_NAMA
Text tn_lai_berkas OD_BERKAS
Tahapan perintah sebelum dibuatkan autolisp:
Command: ADEGENLINK
Linkage type: [Blocks/textObjects/encloseDBlocks/enclosedText]<enclosedText>: o
Create [Objectdata/ASElinks]<ASElinks>: o
Object data table (? for list): od_nib
Use Insertion Point as Label Point: [Yes/No] <N>:y
Text objects to generate from: [Select/All]<All>: s
Select objects: (ssget “x” ‘((0 . “TEXT”) (8 . “080201”)))
<Selection set: 2f>
22 found
Select objects:
22 object(s) to process.
Processing 22…done. 22 links created.
Pada proses select objects di atas, fungsi (ssget “x” ‘((0 . “TEXT”) (8 . “080201”))) adalah untuk
memilih semua object autocad dengan kriteria hanya memilih object text (0 . “TEXT”) yang
ada di layer 080201 (8 . “080201”). Dengan memahami fungsi filter tersebut, maka untuk
membuat link OD_NAMA dan OD_BERKAS adalah dengan mengulang langkah diatas dengan
merubah prompt “object data tablle:” dan “Select objects: sesuai dengan nama layer letak
object text tersebut.
(setq list_od (list “OD_NIB” “OD_BERKAS” “OD_NAMA”));list object data yang akan dibuat
(setq list_fld (list “NIB” “BERKAS” “NAMA”));list nama field atau header
(setq list_type (list “C” “C” “C”)); list object type dari list object di atas
(setq list_layer (list “080201” “tn_lai_berkas” “tn_lai”))
);end foreach
untuk mengecek apakah object data table sudah link ke text object atau string, click icon [Edit
Object Data] di group [Map Edit] pada menu [Tool]
(https://cadex.files.wordpress.com/2018/05/image22.png)
Pilih object text NIB, maka akan ditampilkan isi object data OD_NIB:
(https://cadex.files.wordpress.com/2018/05/image23.png)
Pada contoh di atas object text dengan value / isi nib 01992 telah terisi di object data table
OD_NIB.
Proses ini sebenarnya adalah spasial join menggunakan metode overlay type intersect antara
topology titik/node (source topology) dengan topology polygon (overlay topology) . Hasil dari
overlay ini adalah berupa topology titik/node topology dan object data tabel baru. Pada obejct
data table baru tersebut bisa diberi attribute (field baru) yang berisi obejct data hasil link dari
tahapan sebelumnya.
Proses overlay dilakukan dua kali dengan setting sesuai dengan tabel di bawah:
Sebelum melakukan tahapan dibawah topology Berkas, Nama dan Batas_Persil harus di-Load
Topology dulu.
Command: CMDDIA
Ulangi tahapan seperti di nomer 2 dengan mengganti source topology, source topology table
name dan result data table. sehingga akhirnya diapatkan dua (2) object data table yaitu
OD_BERKAS_PRSL dan OD_NAMA_PRSL
);end foreach
;;overlay pertama
(command “MAPOVERLAY” tp_node1 “o” od_node1 “y” “”)
(command tp_poly “o” od_poly “y” “”)
(command “i” tp_res1 “” “0” od_res1 “y” “”)
;;overlay kedua
(command “MAPOVERLAY” tp_node2 “o” od_node2 “y” “”)
(command tp_poly “o” od_poly “y” “”)
(command “i” tp_res2 “” “0” od_res2 “y” “”)
Copy list atau kode autolisp di atas ke text file dengan ekstensi .lsp misal analisa_overlay.lsp
Topology dan object data yang akan ditampilkan dalam microsoft access adalah:
Langkah-langkah untuk export data ke access di bawah ini berasumsi bahwa database
microsoft access (file *.accdb) telah dibuat:
(https://cadex.files.wordpress.com/2018/05/image24.png)
3. Ketik di Command:MAPOD2ASE
(https://cadex.files.wordpress.com/2018/05/image38.png)
Lakukan setting:
(https://cadex.files.wordpress.com/2018/05/image39.png)
5. Click [Proceed]
7. Hasil tahapan di atas adalah 3 (tiga) link templates. Double click salah satu link template
tersebut untuk menampilkan tablenya
(https://cadex.files.wordpress.com/2018/05/image40.png)
Tahap berikutnya adalah melakukan pengabungan data atau join table di microsoft access.
(https://cadex.files.wordpress.com/2018/05/image41.png)
Pada microsoft access sudah ditampilkan 3 (tiga) buah table hasil dari proses konversi obejct
data table dari autocadmap.
(https://cadex.files.wordpress.com/2018/05/image42.png)
2.3. Pada area query design, Pilih field [ID] di table [TPMCNTR_Batas_Persil] kemudian
hubungkan ke field [Batas_Persil_ID] di table [OD_BERKAS_PRSL]
2.4. Pilih lagi field [ID] kemudian hubungkan ke field [Batas_Persil_ID] di table
[OD_NAMA_PRSL]
(https://cadex.files.wordpress.com/2018/05/image43.png)
2.5. Jika ingin menampilkan kolom dengan urutan NIB, BERKAS, NAMA dan LUAS
(https://cadex.files.wordpress.com/2018/05/image44.png)
(https://cadex.files.wordpress.com/2018/05/image45.png)
Simpan query misal dengan nama : InformasiPersil kemudian tutup program microsoft.
Jika diinginkan hasil di microsoft excel, pilih nama query [InformasiPersil], kemudian pada
menu [External Data], pilih icon [Export to Excel]
(https://cadex.files.wordpress.com/2018/05/image46.png)
Maksud dari tahapan ini adalah untuk mengecek hasil query di access apakah sesuai dengan
letak lokasinya di autocad map.
2. Pada folder Data Sources, click kanan odbc_accdb_peta_bidang, kemudian click [Connect]
(https://cadex.files.wordpress.com/2018/05/image47.png)
Double click query [InformasiPersil], maka ditampilkan tabel hasil query di autocad map:
(https://cadex.files.wordpress.com/2018/05/image48.png)
Saat Data View – InformasiPersil ditampilkan seperti di atas, pada menu [Links] pilih [Define
Link Template]
Simpan / save autocadmap sehingga link template yang baru saja dibuat ditampilkan dalam
folder [Link Templates]
(https://cadex.files.wordpress.com/2018/05/image50.png)
Pada gambar di bawah terlihat bahwa record yang terpilih di Data View sudah sama dengan
NIB, Nama dan Berkas yang ada di autocadmap:
(https://cadex.files.wordpress.com/2018/05/image51.png)
Tutorial berikutnya akan dijelaskan bagaimana cara menggunakan autolisp dalam file
analisa_overlay.lsp sehingga proses seperti dijelaskan dalam tutorial ini lebih cepat.
Sekian terimakasih.
cadex
May 27, 2018May 27, 2018
data extraction /
topology
ID Nama Luas
(https://cadex.files.wordpress.com/2018/05/image.png) 04.298.0 Tarsih
04.299.0 Yumiati
…. ….
dst dst
Jika telah mempunyai table di excel daftar ID bidang,nama, maka masalah tersebut akan
dengan mudah diselesaikan sesuai dengan langkah-langkah tutorial di [CAD-MAP-003]:
Menghubungkan Excel Database ke Topology di Autocad Map Beserta dengan Query dan
Analisanya (https://cadex.co/2018/03/24/cad-map-003-menghubungkan-database-ke-topology-
dan-analisa-topologinya/). Sedangkan pada tulisan kali ini diasumsikan tabel belum ada,
sehingga perlu dibuat table baru yang nantinya akan di-linked kan dengan object text di
autocad. Tabel yang akan dibuat tersebut nantinya berupa tabel dalam bentuk database
Microsoft Access.
Sebelum dilakukan setting ODBC, buat database baru di Microsoft Access misal database
tersebut diberi nama [pbt.accdb] kemudian buat satu tabel baru misal nama tabel tersebut
adalah [berkas]. Stuktur tabel [berkas]:
(https://cadex.files.wordpress.com/2018/05/image1.png)
Tabel ini nantinya akan digunakan untuk menyimpan “Text ID” yang diambil dari gambar
autocad. Jika tabel sudah dibuat di file database pbt.accdb kemudian dilanjutkan dengan
setting ODBC ke database access tersebut:
1. Ketik ODBC pada [Search Windows], kemudian pilih [Set up ODBC Datasources (64-bit)].
Jika menggunakan OS 32-bit, pilih [Set up ODBC Datasources (32-bit)].
2. Pada kotak dialog [Microsoft ODBC Administrator], di page/halaman [User DSN], click
tombol [Add]
3. Pada kotak dialog [Create New Data Source], pilih [Microsoft Access Driver] kemudian click
tombol [Finish]
4. Pada kotak dialog [ODBC Microsoft Access Setup], pada [Data Source Name] masukkan
nama odbc connection, misal [odbc_accdb_pbt], kemudian click [Select]
5. Pilih lokasi database [pbt.accdb], kemudian click [OK]
6. kemudian click [OK] lagi untuk menutup kotak dialog [Microsoft ODBC Administrator].
Setting ODBC ke Database access sudah selesai. Selanjutnya adalah membuat data link di
Autocad Map.
(https://cadex.files.wordpress.com/2018/05/image2.png)
1. Pada Task Pane Map (workspace map), click kanan [Data Sources], kemudian pilih
[Configure]
2. Masukkan nama autocad map data source di text box [Data Source Name], misal namanya
odbc_accdb_peta_bidang, kemudian click [OK]
3. Pada [Data Link Properties] di page [Connection], pilih [Use data source name] untuk
memilih nama ODBC yang telah di setting di langkah yaitu odbc_accdb_pbt
(https://cadex.files.wordpress.com/2018/05/image3.png)
4. Click page [Advanced], kemudian di setting [Access Permission] pilh [Read Write],
kemudian click [OK]
Pada tahapan ini, data source di autocad map telah disetting untuk connect ke database
microsoft access. Selanjutnya adalah mengisi tabel [Berkas] di database dengan “Text ID” yang
diambil dari Autocad.
1. Pada Task Pane Map (workspace map), click kanan [Data Sources], kemudian pilih
[Attach…]
2. Kemudian pilih autocad map datasource yang telah dibuat di langkah B yaitu
odbc_accdb_peta_bidang. Sehingga data sources ditampilkan seperti gambar berikut:
(https://cadex.files.wordpress.com/2018/05/image4.png)
3. Dalam folder [Tables], Double Click table [Berkas] untuk menampikan isi tabel.
4. Pada spreadsheet [Data View], pada menu [Links] pilih [Define Link Template]
5. Pilih / check kolom [Key] pada baris [Berkas] kemudian click [OK].
Maksud dari setting ini adalah sebagai kunci / key untuk mencocokkan nilai di database
dengan “Text Id” dari autocad adalah dengan menggunakan kolom [Berkas]
(https://cadex.files.wordpress.com/2018/05/image5.png)
6. Simpan AutoCAD sehingga link template yang sudah dibuat ditampilkan di bawah folder
Link Templates
(https://cadex.files.wordpress.com/2018/05/image6.png)
7. Misal semua “Text ID” ada di layer [Berkas], lakukan quick select untuk memilih semua
“Text ID” dengan mengetik di command:qselect
8. Pada kotak dialog Quick Select, lakukan filter Object Type:Text , Operators : = dan Layer :
Berkas. Click [OK], maka semua “Text Id” akan terpilih.
10. Pada kotak Generate Link pilih [Linkage Type]=Text, [Data Link]=Create Database Links,
[Link Template]=Berkas dan [Database Validation]=Create if New
(https://cadex.files.wordpress.com/2018/05/image7.png)
13. Double Link Template [Berkas], maka tabel berkas sudah terisi text dari autocad.
14. Pada Spredsheet [Data View], di menu [Highlight] pilih [Auto Zoom] dan [Auto Select]
kemudian set [Zoom Scale]=10 untuk mengecek hasil link antara database dan autocad
15. Click record di [Data View], maka Text ID yang terpilih di [Data View] akan di-zoom dan
dipilih pada gambar Autocad Map
(https://cadex.files.wordpress.com/2018/05/image8.png)
Selanjutnya akan dilanjutkan membuat tabel baru di database yang terdiri dari kolom
“Berkas”, “Nama”, “Luas” dengan menggunakan analisa topology.
D. Analisa Topology Overlay Topologi untuk menggabungkan kolom Berkas dan Nama
1. Lakukan clean-up dan buat polygon topology. Cara clean-up dan membuat topology ada di
https://cadex.co/2018/03/24/menghitung-luas-bidang-tanah-dengan-autocadmap/
(https://cadex.co/2018/03/24/menghitung-luas-bidang-tanah-dengan-autocadmap/).
2. Buat topology polygon dengan centroid (pusat poligon) menggunakan centroid object [Text]
di Layer [Berkas]. Misal hasil nama topologynya : pol_ppt
3. Buat topolgy node / titik dengan object [Text] di Layer [Nama] dengan nama topology:
pt_nama
(https://cadex.files.wordpress.com/2018/05/image9.png)
(https://cadex.files.wordpress.com/2018/05/image10.png)
Source Attributes: .STRING —> mengambil string atau isi text dari object text pada topology
yaitu informasi nama
9. Click [Finish]
Hasil overlay menghasilkan tabel od_nama_berkas yang berisi informasi kolom nama, luas
dan nomor berkas. Agar obeject data bisa dibaca di database access, lakukan tahapan sebagai
berikut:
4. Click [Define]
6. Click [OK]
8. click [Proceed]
9. Autocadmap akan membuat Link Template baru bernama od_nama_berkas sesuai dengan
setting di langkah E.5
10. Untuk melihat hasil tabel di database, pada folder datasource, click kanan
odbc_accdb_peta_bidang kemudian pilih [Detach]
12. Data source akan menambahkan tabel baru bernama [BerkasLuas] sesuai dengan setting
di langkah E.5
(https://cadex.files.wordpress.com/2018/05/image12.png)
==selamat mencoba===
cadex
May 19, 2018May 19, 2018
data extraction /
overlay /
topology
Reference : [CAD-MAP-12]: Menulis Text Jarak dan Azimut Menggunakan Query dan
Annotation di AutocadMap (https://cadex.co/2018/04/09/cad-map-12-
menulis-text-jarak-dan-azimut-menggunakan-query-dan-annotation-di-
autocadmap/)
Platform : Autocad Map
Download :
Pada tulisan [CAD-MAP-12]: Menulis Text Jarak dan Azimut Menggunakan Query dan
Annotation di AutocadMap (https://cadex.co/2018/04/09/cad-map-12-menulis-text-jarak-dan-
azimut-menggunakan-query-dan-annotation-di-autocadmap/) telah dijelaskan beberapa cara
untuk menampikan dimensi jarak pada object garis dan azimuth di autocad. Tulisan kali ini
adalah contoh penerapan atau tutorial lebih lanjut dari tulisan sebelumnya.
Contoh gambar di bawah hasil pengukuran bidang tanah yang telah diberi dimensi jarak di
tiap sisi bidang tanah.
(https://cadex.files.wordpress.com/2018/04/image3.png)
Biasanya penulisan jarak ini dilakukan secara manual dengan menggunakan tool dimension
di autocad atau menggunakan tool distance kemudian menulis hasil jaraknya dalam bentuk
text di sisi bidang tanah. Tentunya hal ini akan menjadi pekerjaan yang membosankan atau
melelahkan jika terdapat bidang yang sangat banyak. Saya akan memberikan trik bagaimana
cara membuat label secara cepat dengan menggunakan tool network topology query dalam
autocad map.
Agar proses bisa dilakukan lebih efektif dan efisien perlu diperhatikan hal-hal sebagai
berikut:
1. Object yang akan diberi dimensi harus berupa Line bukan Polyline dan terletak pada layer
yang sama. Misal layer lama : 020100
2. Buat layer baru misal: 020100L untuk menampung garis yang akan diberi dimensi
sehingga tidak merubah object di layer sebelumnya (020100)
3. Buat layer baru misal: 020100D untuk menampung tulisan dimensi sisi bidang.
(https://cadex.files.wordpress.com/2018/04/image4.png)
2. Untuk mempermudah identifikasi lakukan setting warna layer yang berbeda masing-
masing untuk layer 020100L dan 020100D
3.1. Lakukan quick select untuk memilih semua object di layer 020100. Ketik di command:
qselect
3.2. Pilih Properties: Layer, Operator:= Equals dan Value: 020100 kemudian click [OK]
sehingga semua object di layer 020100 terpilih.
4. Cek object di layer 020100L, jika object polyline, lakukan explode sehingga menjadi object
line.
4.2. Pilih object type: Polyline, Properties: Layer, Operator:= Equals dan Value: 020100L
kemudian click [OK]
5.1. Jika map task pane belum aktif, ketik di command: MAPWSPACE, kemudian pilih: ON
5.2. Pada tab [Map Explorer], click kanan [Topologies], kemudian pilih [Create]
5.3. Pada tahapan [Topology Type], pilih Type: Network, Topology Name : NetLine kemudian
click [Next]
5.4. Pada tahapan [Select Links], pilih Layer: 020100L, kemudian click [Finish]
5.5. Network topology [NetLine] akan ditambahkan dalam group [Topologies] di map explorer
(https://cadex.files.wordpress.com/2018/04/image5.png)
6. Topology Query
6.1. Click kanan topologi [NetLine], pilih [Analysis] kemudian [Topology Queries]
6.3. Pada kotak dialod Define Query, click [Location], kemudian piliha [All]
6.6. Pada kotak dialog [Set Properties Alteration], click tombol [Text]
6.7. Pada kotak dialog [Define Text], click tombol [Expression]. Pilih [Direct Resitance] di
bawah group [Network Link] pada topology [NetLine], kemudian click [OK]
(https://cadex.files.wordpress.com/2018/04/image6.png)
(https://cadex.files.wordpress.com/2018/04/image7.png)
(https://cadex.files.wordpress.com/2018/04/image8.png)
~~selamat mencoba~~
cadex
April 10, 2018April 10, 2018
Label /
network topology
Referensi : http://www.afralisp.net/dialog-control-
language/ (http://www.afralisp.net/dialog-
control-language/)
http://www.lee-mac.com/stringtolist.html
(http://www.lee-mac.com/stringtolist.html)
Lokasi File :
Setelah belajar di http://www.afralisp.net/dialog-control-language/
(http://www.afralisp.net/dialog-control-language/) tentang bagaimana cara membuat kotak
dialog dengan Dialog Control Language (DCL), berikut adalah hasil praktik saya untuk
penerapan import / penggambaran titik dari textfile dengan pemisah koma (comma
delimited).
Penerapan program autolisp dengan DCL ini merupakan pengembangan lebih lanjut dari
https://cadex.co/2009/04/17/cad-lis-01-menulis-text-dari-list-koordinat/
(https://cadex.co/2009/04/17/cad-lis-01-menulis-text-dari-list-koordinat/) dengan penambahan
kotak dialog, pemilihan kolom dan type titik yang bisa dipilih berupa block atau berupa titik
dan text. Jika dibandingkan dengan program sebelumnya, pada program ini belum ada setting
[text style] dan [Layer] karena saya masih kesulitan untuk membuat text style melalui visual
lisp yang berbasis object oriented programming. Tentunya jika sudah mendapatkan caranya,
akan saya update program autolispnya.
Untuk menjalankan program autolisp dan DCL beserta dengan block attributesnya, maka
perlu ditambahkan setting khusus di program AutoCAD dengan menambahkan 2 (dua) folder
/ path pada options [Support File Searh Path] dengan cara sebagai berikut:
3. Pada [Tab], [Files], pilih [Support File Searh Path], kemudian click tombol [Add].
Pada tulisan ini saya tidak menguraikan atau menjelaskan baris per baris perintah
autolispnya karena sebagian sudah saya tulis beberapa komentar pada program autolisp yang
saya berri nama cadex.lsp. Program lisp ini akan saya update jika ada tambahan program
autolisp baru.
1. Program import titik ada fungsi (c:z_p), untuk menjalankan program tersebut, ketik di
command:z_p
2. Akan ditampilkan kotak dialog [Import Titik dari [*.csv] atau [*.txt] file] hasil program DCL
dari file penzd.dcl
3. Click tombol [Browse], kemudian pilih file yang akan diimport dengan terlebih dahulu
memilih type extensi filenya *.csv atau *.txt, kemudian click [Lihat Data]
4. Secara default, program akan membaca titik mulai baris 1, nomor titik di kolom 1 ,
keterangan di kolom 1, X di kolom 2 , Y di kolom 3 dan Z / elevasi di kolom 4
5. Kemudian pilih [Format Titik dan text], apabila titik akan ditampilkan dalam bentuk titik
beserta dengan text keterangan atau pilih [Block Attributes] jika akan mengeplot dalam
bentuk Block Attrubutes. Catatan: untuk pilihan Block Attributes akan terplot lebih lama
dibandingkan dengan pilihan [Format Titik dan Text]
(https://cadex.files.wordpress.com/2018/02/penzdjpg.jpg)
==selamat mencoba===
cadex
February 16, 2018February 16, 2018
Autolisp
Pada tulisan [XLS-SVY-23]: Spreadsheet Excel untuk Menentukan Pusat dan Jari-Jari
Lingkaran dari Koordinat (https://cadex.co/2016/09/18/xls-svy-23-spreadsheet-excel-untuk-
menentukan-pusat-dan-jari-jari-lingkaran-dari-koordinat/), pusat dan jari-jari lingkaran
dihitung dengan program excel dan hasilnya ditampilkand dalam bentuk chart excel.
Tulisan kali ini adalah aplikasinya dalam bentuk program autolisp, sehingga hasil hitungan
pusat dan jari-jari lingkaran bisa langsung digambar di autocad dari titik-titik / object points
yang sebelumnya sudah digambar di autocad.
(defun c:fc()
;menentukan batas pemilihan
(setq p1 (getpoint));batas atas
(setq p2 (getcorner p1));batas bawah
copy list tersebut, kemudian simpan dengan ekstensi .lsp atau download file
(https://1drv.ms/u/s!AqhRf0sTIjF7rkCDswaxrJSleYR5).
(https://cadex.files.wordpress.com/2016/10/image.png)
5. Kemudian select window mulai dari kiri atas sampai kanan bawah pada semua titik di atas.
6. Hasilnya:
(https://cadex.files.wordpress.com/2016/10/image1.png)
#selamat mencoba
cadex
October 8, 2016October 8, 2016
Autolisp
Berdasarkan pendekatan di google earth atau berdasarkan peta, lokasi koordinat geografis
(koordinat lintang, bujur) tersebut terletak sekitar di 110derajat Bujur Timur dan 6derajat
Lintang Selatan.
Pada sheet [list] masukkan koordinat di atas. Delete baris di bawahnya jika sebelumnya
ada list koordinatnya
Pindah ke sheet [Parameter], kemudian masukkan parameter untuk proyeksi TM3 sebagai
berikut:
(https://cadex.files.wordpress.com/2016/04/image1.png)
(https://cadex.files.wordpress.com/2016/04/image2.png)
Pilih tab [Measurement], maka didapat hitungan luas dan panjang kelilingnya
(https://cadex.files.wordpress.com/2016/04/image3.png)
+selamat mencoba
cadex
April 12, 2016
KML /
TM3
Lokasi :
File
Uraian di bawah adalah lanjutan dari posting sebelumnya
(https://cadex.wordpress.com/2015/01/26/xls-svy-22-rumus-excel-untuk-menghitung-
konstanta-pasut-amplitudo-dan-phase-dengan-metode-hitung-kuadrat-terkecil/)
(https://cadex.files.wordpress.com/2015/01/image5.png)
Data pengamatan dimasukkan dengan format table seperti di atas dengan terlebih dahulu
memasukkan tanggal pengamatan pertama di cell [C6]. Data pengamatan muka air tiap jam
pada tanggal yang sama dimasukan sesuai mulai dari kolom [D:AA].
(https://cadex.files.wordpress.com/2015/01/image6.png)
Copy rumus
[AC6] sampai
ke [AC365]
[AD6] =1 Masukkan
angka 1 untuk
hari pertama
[AD7] =AD6+($AE7=1) Jika periode
jam di cell
[AE7]=1, maka
masuk ke hari
berikutnya
Copy rumus
[AD7] sampai
ke [AD365]
Copy rumus
[AE6] sampai
ke [AE365]
Copy rumus
[AF6] sampai
ke [AF365]
Copy rumus
[AG6] sampai
ke [AG365]
[AH6] =1 δht1/δZo
(https://cadex.files.wordpress.com/2015/01/image10.png)
· Block atau p
range [BD6:B
kemudian te
tombol F2
· Kemudian t
bersamaan
CTRL+SHIFT
Copy rumus
sampai [BF3
(https://cadex.files.wordpress.com/2015/01/image11.png)
[G81] =D81
Dengan acuan hitungan di atas, maka untuk pengamatan 30 hari atau lebih bisa
dikembangkan lebih lanjut. Demikian juga jika diperlukan untuk perhitungan konstanta
pasut yang lebih atau kurang dari 9 konstituent.
==semoga bermanfaat==
cadex
January 26, 2015January 26, 2015
Lokasi :
File
Pada posting [XLS-SVY-01]: Prediksi Pasut Dengan VBA Excel
(https://cadex.wordpress.com/2009/12/18/xls-svy-01-prediksi-pasut-dengan-vba-excel/)
hitungan kontanta pasut yang terdiri dari Amplitudo dan Phase dengan metode hitung
kuadrat terkecil menggunakan VBA Excel atau macro. Sedangkan pada posting kali ini akan
diuraikan proses hitungan yang sama tetapi hanya dengan menggunakan rumus/fungsi
Microsoft Excel tanpa menggunakan VBA Excel.
(https://cadex.files.wordpress.com/2015/01/image.png)
Mengacu ke Rumus-5, jika akan mencari 9 nilai Konstanta Pasut, maka nilai yang akan dicari
(parameter) ada 19 parameter yaitu nilai Z0, A1, A2, …… , A9 dan B1, B2, B3, …., B9.
Selanjutnya nilai masing-masing Amplitudo dan Phase dihitung dengan Rumus-6 dan Rumus-
7.
Nilai ω1, ω2, ω3, ….., ω9 adalah suatu konstanta kecepatan sudut untuk masing-masing
constituent yang didapat dari 5 (lima) dasar kecepatan astronomi (5 (Five) Basics
astronomical speeds). Silakan baca di link berikut
(https://cadex.wordpress.com/2012/11/18/xls-svy-19-simulasi-pasang-surut-laut-berdasarkan-
input-9-konstituent-9-phase-bagian-2/) untuk rumus mendapatkan nilai ω1, ω2, ω3, ….., ω9
dari Five basic astronomical speeds.
Persamaan observasi untuk pengamatan muka air tiap jam selama 15 hari akan didapatkan
(15 hari x 24 jam /hari )=360 jam atau 360 persamaan dengan uraian sebagai berikut:
(https://cadex.files.wordpress.com/2015/01/image1.png)
Dengan menggunakan prinsip least square (hitung kuadrat terkecil), persamaan observasi di
atas kemudian dibentuk dalam format matrix:
[L]+[V]=[A].[X]
[L] : matrix data ukuran (observasi), [V]: matrix koreksi, [A]: matrix koeffisien dan [X]: matrix
parameter dihitung dengan rumus sebagai berikut:
(https://cadex.files.wordpress.com/2015/01/image3.png)
Matrix [A] dihitung dengan men-derivatifkan atau “menurunkan” tiap persamaan observasi
terhadap Z0, A1, A2, …… , A9 dan B1, B2, B3, …., B9 atau terhadap parameter yang dicari
(https://cadex.files.wordpress.com/2015/01/image4.png)
cadex
January 26, 2015January 26, 2015
Referensi :
Platform : Excel 2007
Lokasi file : download (https://skydrive.live.com/redir?
resid=7B3122134B7F51A8!1191&authkey=!snb3XlYq2So%24)
Sebenarnya di Excel sudah menyediakan type "Surface Chart" yang bisa menampilkan grafik
dengan data input 3 dimensi (XYZ) termasuk kemampuan untuk merubah properties sudut
putarnya. Surface Chart bisa menampilkan grafik atau surface 3D jika nilai data X dan Y
mempunyai nilai increment yang tetap atau dengan sistem grid karena dalam Surface Chart X
dan Y tidak ditampilkan sebagai data numeric sehingga bukan nilai actual X dan Y itu sendiri.
Berikut contoh input data untuk Surface Chart dan tampilan hasilnya dalam chart:
(https://cadex.files.wordpress.com/2013/05/image8.png)
Untuk menampilkan data cross section dimana data X dan Y nya tidak teratur, seharusnya
ada type chart tambahan yaitu 3D XYZ (scattered) tetapi sampai saat ini saya belum
menemukan type chart yang dimaksud. Agar tampilan cross section 2D dapat ditampilkan 3D,
maka data XYZ cross section dimanipulasi dengan matrik rotasi
(https://cadex.wordpress.com/2013/05/26/gen-svy-02-matriks-rotasi-3-dimensi/) kemudian
diplotkan di grafik XY (Scattered).
Format data cross section yang dipakai untuk simulasi ini adalah sama dengan data yang
pernah dibahas di posting [XLS-SVY-007]: Plotting Cross Section dari Excel ke AutoCAD
(https://cadex.wordpress.com/2011/01/16/xls-svy-007-plotting-cross-section-dari-excel-ke-
autocad/) dan [XLS-SVY-13]: Plotting Cross Section dari Excel ke AutoCAD Versi 1.1
(https://cadex.wordpress.com/2012/05/16/xls-svy-13-plotting-cross-section-dari-excel-ke-
autocad-versi-1-0/). Dalam contoh cross section terlampir terdapat 3 buah cross section 2D
yang akan diplot menjadi cross 3D. Nilai koordinat X diambil dari nama station dalam bentuk
numeric. Misal untuk station 0+000 dan 100+000, maka koordinat X nya berturut-turut adalah
0 dan 100. Sedangkan koordinat Y mengacu jarak dari centerline atau offset dan nilai Z
mengacu ke elevasi.
(https://cadex.files.wordpress.com/2013/05/image9.png)
50
(https://cadex.files.wordpress.com/2013/05/image10.png)
100
(https://cadex.files.wordpress.com/2013/05/image11.png)
Tampilan data dan 3D cross :
(https://cadex.files.wordpress.com/2013/05/image12.png)
Semua proses pembentukan tabel dan perhitungan menggunakan fungsi formula excel tanpa
menggunakan macro.
[B3] =COUNT(INDIRECT("’"&A3&"’!B1:B300"))
menghitung jumlah record di sheet A3. Maksimal record 300
Copy rumus [B3] ke bawah untuk menghitung record di sheet la
[C3:C5] cell bantu untuk menunjukkan lokasi perpindahan cross di tabl
baru adalah tabel gabungan dari beberapa data cross
[B1] =SUM(B3:B5)
jumlah record di tabel baru
[C1] =COUNT(A3:A50)
jumlah sheet yang akan ditampilkan
2. (https://cadex.files.wordpress.com/2013
Menggabungkan g)[E3]=IF(ROWS($E$2:E2)<=$B$1,ROWS
record dalam [F3]=LOOKUP(E3,$C$3:$C$5,$A$3:$A$5
satu tabel baru [G3]=OFFSET(INDIRECT("’"&$F3&"’!$B$
$3:$F3,$F3),)
[H3]=OFFSET(INDIRECT("’"&$F3&"’!$c$
$3:$F3,$F3),)
3. Setting
Matriks Rotasi
(https://cadex.files.wordpress.com/2013/05/image15.png)
[K3],[K4] Masukkan sudut rotasi dalam satuan derajat
dan [K5]
[L3] =RADIANS(K3)
[L4] =RADIANS(K4)
[L5] =RADIANS(K5)
Buat "Named Range" rx, ry dan rz yang mengacu ke range [L3],
[J9] =COS(ry)*COS(rz)
[J10] =-COS(ry)*SIN(rz)
[J11] =SIN(ry)
[K9] =COS(rx)*SIN(rz)+SIN(rx)*SIN(ry)*COS(rz)
[K10] =COS(rx)*COS(rz)-SIN(rx)*SIN(ry)*SIN(rz)
[K11] =-SIN(rx)*COS(ry)
[L9] =SIN(rx)*SIN(rz)-COS(rx)*SIN(ry)*COS(rz)
[L10] =SIN(rx)*COS(rz)+COS(rx)*SIN(ry)*SIN(rz)
[L11] =COS(rx)*COS(ry)
4. Perkalian Matrix Asal adalah matrix yang dibentuk dari tabel baru denga
Matrix Asal nilai X,Y dan Z. Jumlah baris di matrix adalah=banyaknya recor
dengan Matrix sedangkan jumlah kolomnya=3. Dari contoh di atas, Matrix asal
Rotasi dimulai dari F3, dengan jumlah baris sebanyak B1 ke bawah da
kanan 3 kolom atau kalo dinyatakan dalam rumus excel adalah
=OFFSET($F$3,,,$B$1,3).
Formula bawah ini named range dan formula yang dipakai unt
perkalian matrix:
_3dCross =OFFSET($F$3,,,$B$1,3)
matrix asal
_2DPlot =MMULT(_3dCross,TRANSPOSE($J$9:$L$10))
perkalian matrix asal ke matrix rotasi. Hasil dari perkalian ini a
dengan dimensi (n x 2), n= jumlah record dan 2 adalah absis x d
diplot di chart 2D xy scattered
5. Setting series _x =OFFSET($F$3,,,$B$1)
untuk chart XY
Scattered
_sta =OFFSET($A$3,,,$C$1)
_xPlot =INDEX(_2DPlot,,1)
_yPlot =INDEX(_2DPlot,,2)
__x1 =IF(_x=INDEX(_sta,1),_xPlot,NA())
__x2 =IF(_x=INDEX(_sta,2),_xPlot,NA())
__x3 =IF(_x=INDEX(_sta,3),_xPlot,NA())
__y1 =IF(_x=INDEX(_sta,1),_yPlot,NA())
__y2 =IF(_x=INDEX(_sta,2),_yPlot,NA())
__y3 =IF(_x=INDEX(_sta,3),_yPlot,NA())
Rangkuman named range yang dipakai dalam perhitungan dan chart adalah
(https://cadex.files.wordpress.com/2013/05/image16.png)
Untuk setting chart dan bentuk box, silahkan dipelajari lebih lanjut dari file terlampir.
==selamat mencoba==
cadex
May 29, 2013May 29, 2013
cross section /
rotation matrix
Referensi :
Platform : Microsoft Excel
Lokasi File :
Note: Semua rumus yang dipakai menggunakan setting microsoft excel pemisah desimal
adalah titik "."
Konversi sudut
Menit =TRUNC((C8-TRUNC(C8))*60)
Detik =3600*(C8-TRUNC(C8))-60*TRUNC((C8-TRUNC(C8))*60)
Misal nilai derajat, menit dan detik disimpan masing-masing di A1, B1, dan C1 dan hasil
konversi ke desimal adalah di D1, maka rumus konevrsinya adalah
Salah satu format sudut yang didapat hasil download Total Station adalah format d.mmss.
Format sudut ini juga dipakai di Autodesk Civil 3D Survey pada saat proses perhitungan least
square atau perhitungan hasil pengukuran.
Contoh:
sudut 30 derajat, 1 menit, 1 detik, dalam format d.mmss akan ditulis: 30.0101
sudut 333 derajat, 0 menit, 2.34 detik, dalam format d.mmss akan ditulis : 333.00234
Misal kolom sudut derajat,menit dan detik ada di A1, B1 dan C1, maka rumus sudut dalam
format d.mmss adalah
6. Rumus untuk merubah type sudut d.mmss ke derajat,menit dan detik adalah:
jika E1, F1 dan G1 adalah derajat, menit dan detik hasil konversi, maka rumusnya adalah:
E1=–LEFT(TEXT(D1,"000.000000"),3)
F1=–MID(TEXT(D1,"000.000000"),5,2)
G1=–RIGHT(TEXT(D1,"000.000000"),4)/100
Jika A1 adalah sudut dalam format d.mmss dan B1 adalah hasil konversi sudut dalam desimal:
B1=SUMPRODUCT(MID(TEXT(A1,"000.000000"),{1,5,7},{3,2,4})/{1,60,360000})
Pengurangan Sudut
Misal bacaan sudut ke titik#1 adalah A1, dan bacaan sudut ke titik#2 adalah B1, maka besar
sudut dari A1 ke B1 adalah
=B1-A1+IF(A1>B1,360)
Penambahan Sudut
=A1+B1-IF(A1+B1>360,360)
<<bersambung>>
cadex
May 28, 2013May 28, 2013
konversi sudut