Anda di halaman 1dari 51

Program Autolisp adalah suatu program yang sangat bermanfaat, bila digunakan pada saat mengerjakan program

Autocad, program ini dirancang khusus untuk kegunaan pada Autocad, diluar Autocad program ini tidak bisa
digunakan. Manfaat lain Autolisp adalah bisa mempersingkat proses kerja seorang drafter, apabila seorang drafter
akan melakukan editing suatu objek, dengan menggunakan properties, umpamanya proses yang dibutuhkan sekitar
5 tahapan, tapi dengan menggunakan bantuan suatu program Autolisp, maka tahapan proses bisa dipersingkat
menjadi 2 kali tahapan, dan tahapan prosesnya bisa sekehendak pembuat program.
Fungsi bawaan dari Autocad biasanya kurang memenuhi selera dari pemakai, dengan kemampuan seseorang bisa
membuat program, maka segala sesuatu yang berada pada program Autocad tersebut bisa dirubah sekehendak
programernya. Umpamanya tampilan untuk menu, menu pull down, membuat ikon, program khusus yang bawaannya
tidak atau belum dilengkapi.
Autolisp sebenarnya sebuah program yang paling mudah dimengerti, mudah dipelajari dan paling praktis dipakai
pada Autocad. Sederhana saat aplikasi di Autocad , tidak berbelit-belit, tahapan pakainya singkat, sehingga program
Autolisp ini sangat digemari oleh para pemakai Autocad di seluruh dunia, dan mejadikan Autocad lebih populer
dibandingkan program cad yang lain.
Penulis akan memaparkan program ini secara jelas dan detil, bagaimana program Autolisp dibuat, dan bagaimana
memahami program bekerja, serta mencari kekeliruan pada program yang telah dibuat, dan contoh program yang
sudah jadi untuk aplikasi pada pekerjaan sehari-hari . Program ini untuk applikasi pada Autocad rilis 2005, apabila
digunakan pada rilis yang lebih tinggi atau lebih rendah, ada kemungkinan beberapa program tertentu tidak bisa
jalan.
Sementara tutorial ini hanya akan memaparkan program Autolisp konvensional , tidak akan mengupas program DCL
atau Dialog Control Language, maupun menambah Autolisp ActiveX , Autolisp reactor, tujuan penulis agar pembaca
lebih memahami program dasar Autolisp dulu, dan menjadikan lebih mahir ketika membuat program yang sederhana,
untuk kebutuhan intern pembaca.
Sangat dianjurkan bagi pembaca tutorial ini, terlebih dahulu harus menguasai program Autocad, sebelum
menjalankan program Autolisp, karena apabila anda tidak mengerti sama sekali tentang Autocad, niscaya akan
menemui kesulitan bila memaksakan mempelajari tutorial ini, dan apabila anda setelah membaca tutorial ini masih
mendapat kesulitan, ketika akan mengaplikasikannya , segera menghubungi penulis dengan alamat.
1). mteybid@yuasabattery.co.id
2). adesu@telkom.net
3). adesu_cad@yahoo.com
Aktif di forum sangat dianjurkan, khususnya yang berhubungan dengan Autolisp, dengan anda aktif di suatu forum
yang membahas perihal Autolisp, maka anda bisa menanyakan kepada seseorang ataupun sekelompok,
permasalahan yang anda hadapi, pertanyaan anda akan tersebar keseluruh dunia maya, hal ini akan dibaca oleh
programmer pemula maupun yang sudah mahir, yang pasti jawaban dari mereka akan anda dapat dengan beragam
pendapat. Dan seandainya anda telah menguasai program ini, tentu saja anda bisa membantu seseorang yang
merasa kesulitan ketika membuat sebuah program, kemampuan anda akan di hargai oleh orang lain.
1.1 Sejarah Autolisp
Autodesk mulai menyisipkan Autolisp pada Autocad versi 2.18 atau rilis 6 pada Januari 1986, pada rilis ini belum
dilengkapi Autolisp editor, bila anda ingin mengoreksi program Autolisp harus dilakukan melalui program notepad,
mulai pada rilis 2000 dilengkapi dengan editor untuk Autolisp, dengan sarana ini pengerjaan dan editing program
Autolisp semakin mudah.
Bahasa Autolisp asal muasalnya adalah dari bahasa Artificial Intelligence (AI), sekitar tahun 1950-an. Autodesk
membeli program ini dan dinamai Visual LISP, dengan diaplikasikan di Autocad program tersebut lebih popular
dengan nama Autolisp.
Program AutoLisp berasal dari versi pertama XLISP, yang dibuat oleh David Betz. Lisp adalah singkatan dari LISt
Processor atau dengan kata lain bisa berupa Lost In Silly Parenthesis, lisp adalah program bahasa yang
dikembangkan oleh MIT pada tahun 1956.
AutoLISP adalah sebuah bahasa program yang dirancang untuk memperluas dan multiguna pada fungsi AutoCAD.
Inti dasarnya dari bahasa program LISP, bermula sekitar tahun 1950, aslinya LISP dirancang untuk aplikasi Artificial
Intelligence (AI), dan masih berbasis untuk semua aplikasi AI. AutoCAD mulai memperkenalkan AutoLISP sebagai
program aplikasi antar muka atau interface pada rilis 2.1, pertengahan 1980. LISP telah dipilih sebagai awal
AutoCAD API , sebab ia mempunyai keunikan untuk proses perancangan tak berstruktur pada proyek AutoCAD,
yang melibatkan mencoba ulang perbedaan solusi pada masalah desain.
Visual LISP® (VLISP) adalah sebuah software tool yang dirancang untuk menyelesaikan pembentukan program
AutoLISP . VLISP Integrated Development Environment atau VLIDE adalah sarana untuk membuat, modifikasi ,
mencoba dan meload program, VLISP bisa dikata merupakan sebuah kendaraan untuk menyerahkan program
aplikasi di dalam Autolips.
1.2 Kelebihan Autolisp
1. Mampu mengakses sifat objek lebih komplit pada gambar tunggal
2. Sangat mudah untuk menjalankan dan menguji program.
3. Mudah mengakses program.
4. Tidak membutuhkan untuk mendeklarasikan dimensi variabel.
5. Sangat mudah mengerjakan dengan titik dan geometri
6. Sangat fleksibel pada perubahan variabel yang dinamis
7. Mudah membuat kode dan menjalankan
8. Tidak dibutuhkan penanganan khusus, library luar, atau variasi antar platform
9. Dapat dijalankan pada Windows/Dos/Unix dll dengan data file yang sama
10. Autolisp sangat bermanfaat pada proses array.
1.3 Kekurangan Autolisp
1. Hanya bekerja pada AutoCAD
2. Tidak bisa menampilkan dialog box
3. Proses bekerja program agak lambat bila dibandingkan dengan VBA.
1.4. Manfaat Autolisp
Manfaat Autolisp pada Autocad meliputi;
1.4.1. Bisa mempersingkat tahapan proses pada saat editing
1.4.2. Menyederhakan gambar kerja yang sering diulang
1.4.3. Bisa melengkapi program aplikasi yang belum lengkap
1.4.4. Mampu mengerjakan pekerjaan rumit, seperti kalkulasi, mencari objek dan manipulasi.
1.4.5. Bisa mempersingkat bekerja bagi seorang drafter.
1.4.6. Bisa membuat gambar menjadi demonstrative.
1.4.7. Bisa merubah tampilan menu, sekehendak pembuatnya.
Pengenalan editor visual lisp
Permulaan untuk menjalankan sebuah program Autolisp, adalah anda harus jalankan dulu program Autocad, ada
dua cara untuk menuju dan membuka editor visual lisp. Pertama melalui perintah command, ketik “vlide” langsung
pada command prompt, teknik kedua melalui menuTool>AutoLISP>Visual Lisp Editor.
Maka akan muncul seperti gambar dibawah ini (klik untuk memperbesar).

Bentuk Visual LISP Editor


Autolisp editor terdiri dari 3 editor.

1. Visual Lisp Console


2. Trace editor
3. Build Output editor
Visual lisp console adalah berguna untuk menulis program, trace editor adalah untuk melihat hasil program yang
diuji, dan build output editor adalah untuk melihat hasil program yang periksa kekeliruannya. Dalam satu tampilan
editor tercakup beberapa editor.
Format dasar program
Untuk merancang sebuah program Autolisp, perlu diketahui beberapa persyaratan yang harus dipenuhi, struktur
program harus benar agar program saat dijalankan hasilnya bisa diperoleh sesuai keinginan pembuat. Sebuah
program terdiri dari , atau lihat lampiran dibawah.
Format dasar program Autolisp.
Keterangan untuk program
Menjelaskan bahwa program tersebut mencakup nama program beserta cara penggunaan program tersebut,
pembuat , tanggal dibuat , nomor program, ataupun waktu revisi. Ada kalanya seorang programmer sering merevisi
programnya dan untuk mengingat maksud dan tujuan revisi tersebut.
Penentu fungsi
Penentu fungsi ditunjukkan dengan tanda balon defun, adalah untuk menjelaskan kepada Autocad, agar program
ini bisa bekerja dengan baik , yaitu dengan dilengkapi fungsi “ (defun ”, ini kepanjangan dari Defines a function,
artinya untuk menentukan atau menetapkan fungsi setelah tulisan disebelahnya.
Tulisan berikutnya “c:” adalah sebuah kode agar bisa dibaca oleh Autocad, dan “test” adalah nama dari panggilan
untuk program tersebut, perlu diketahui nama ini jangan sampai terjadi konflik dengan fungsi asli dari program
Autocad, artinya jangan sampai terjadi duplikat nama, hindari nama yang sama seperti pada daftar referensi
(lihat Daftar Command dan aliasnya).
Bentuk akhir adalah “(/)” , didalam kurung tersebut ada garis miring, bila ada huruf diletakan sebelah kanan garis
miring, seperti contoh ini “(/ a b c d)”, itu artinya program tersebut mengandung lokal variabel, dengan nama
variabel a, b , c dan d.Fungsi kedua adalah untuk meriset nilai lokal variabel tadi menjadi nol atau nil. Bila hurufnya
diletakkan sebelum garis miring, sebagai contoh “ ( x / a b c d)“, itu memberitahuan pada program tersebut agar sub
program yang bernama “x” , harus sudah bekerja sebelum program utamanya berjalan, kalau sub program “x” belum
bekerja, program utama tidak akan bisa bekerja pula, kalau suatu program pada tanda “ (/) “ , tidak mengandung atau
tidak tercantum lokal variabel, artinya, variabel tersebut akan dijadikan global variabel.
Seting variabel
Seting variabel ditunjukkan dengan tanda balon setvar, adalah sebuah alat bantu untuk menentukan program
bekerja dengan baik, contohnya menentukan seting osnap mode.
Seting lokal variabel
Berikutnya adalah seting lokal variabel, ditunjukkan dengan tanda balon setq, menetapkan nilai atau kalkulasi dari
variabel, atau bisa juga mengambil data dari area gambar, kemudian diolah sedemikian rupa yang selanjutnya akan
diselesaikan oleh perintah cad
Perintah akhir Autocad
Perintah cad , ditunjukkan dengan tanda balon command bisa
berupa command, entmake, princ ,entmode ataupun alert.
Penutup program kerja
Penutup program dengan ditunjukkan tanda balon princ, mengantarkan program Autolisp ini setelah menjalankan
programnya keluar dengan tenang, serta terakhir ditutup dengan tanda “)”.
Merancang sebuah program
Program bisa bekerja kalau format programnya telah benar, artinya didalam susunan baris ke barisnya telah sesuai
aturan program Autolisp, dan tidak terdapat kekeliruan.
Seting snap dalam Autocad, dapat menyebabkan pekerjaan Autolisp menjadi berantakan, ide yang sangat baik, bila
saklar snap selalu dalam keadaan mati, ketika program mulai bekerja dan dihidupkan ketika perlu, fungsi blip pada
layar monitor harap dimatikan pula, perlu diingat, kembalikan seting Autocad ke asal ketika program telah selesai
bekerja.
Penulis akan memperlihatkan cara membuat program, dengan yang sederhana kemudian berlanjut sesuai
keperluannya, pertama sebuah contoh bagaimana cara membuat sebuah garis lurus, dari kordinat (0,0,0) ke kordinat
(10,0,0).
Kembali ke visual lisp console, di klik ikon yang bernama “New File”, kemudian salin rumusan pada gambar di bawah
ini, pada saat mengetikan huruf atau angka dan kurung kurawal, seketika warna tampilan akan otomatis berubah
sesuai aturan pada table 1, setelah selesai segera lakukan save, dengan nama Test.lsp.

Keterangan gambar: Membuat program ketika pertama kali sebelum di save

Keterangan Tabel: Perubahan warna huruf ketika dibuat di Visual Lisp Console (klik untuk melihat gambar besarnya)
Meloading program
Ada dua cara untuk meloading sebuah program, kedalam sesi Autocad, serta ada yang permanen dan ada pula yang
sementara.
Permanen
Untuk yang permanen ikuti petunjuk, anda dapat mengakses menu AutoCAD tools>load application… Ini akan
membuka kotak dialog load/unload application.
Langkah selanjutnya adalah lakukan klik pada tombol “Contents..” yang akan membuka dialog startup suite. Tekan
tombol “Add”, lakukan pencarian dimana disimpannya file yang anda simpan tersebut, setelah ketemu, tekan add dan
tekan selanjutnya close sampai dialog tersebut tutup.
Pada sesi lain, lakukan untuk menetapkan agar Autocad selalu membaca ketika setiap saat dibuka, arahkan kursor
ke menu “Tools”, kemudian pilih “Options” dan di klik, akan timbul dialog Options.

Pilih tanda”+” dan di klik pada “Support File Search Path”, folder tersebut akan terurai kebawah, disebelah kanan
dialog cari tombol add yang berada dibawah tombol browse, kemudian lakukan tekan tombol “Add”, bagian akhir atau
paling bawah support file search path tadi , akan terbentuk sejenis kotak kosong, tekan lagi tombol ”Browse” maka
dialog berikutnya akan muncul, cari lagi file yang anda simpan, tetapi disini bukan mencari filenya, hanya mencari
lokasi folder tempat file tersebut disimpan, setelah diketemukan tekan tombol ok, dan lanjutkan dengan menekan
tombol “Apply” ikuti dengan tekan tombol “OK”.
Sementara
Meloading kode untuk sementara, yaitu dengan cara , buka “visual lisp console editor”, buka file “Test.lsp”, setelah
terbuka cari ikon yang bernama “Load active edit window”, tekan tombol tersebut, dan seketika editor berubah ke
“Visual lisp console”, dengan menampilkan
; 1 form loaded from #
_$
Keterangan diatas menyatakan, bahwa pada drive F dengan folder Test, dan nama file Autolispnya Test.LSP, telah
dilakukan loading.
Ini bukti bahwa anda telah meload sebuah program, ke Autocad seperti nama yang terlampir di atas.
Mencoba program
Sekarang Autocad sudah siap untuk menerima perintah yang anda masukan, yang harus diketahui oleh setiap
pemakai cad, adalah perintah apa yang harus dimasukkan ke command prompt, kembali lagi kita ke kode Autolisp
yang telah ditulis.

Keterangan gambar: Tanda panah menunjukan nama kode dari program itu.
Lihat tanda panah warna biru, menunjuk pada kata “test”, selalu diletakkan setelah kata “c:”, itu adalah kode yang
harus anda ingat , ketika akan menguji sebuah program.
Ketik kata “test” pada command prompt, lanjutkan dengan menekan tombol enter, amati hasilnya dan apa yang
terjadi, seketika timbul di layar monitor sebuah garis lurus , dari kordinat 0,0 sampai dengan kordinat 10,0

Amati kode di gambar tutorial sebelumnya, program tersebut menunjukkan pada kita, bahwa program itu sedang
membuat garis dari kordinat “0,0,0” ke kordinat “10,0,0”, dengan menggunakan variabel p1 dan p2, perintah Autocad
menjalankan berdasarkan masukkan dari variabel tersebut.
Baris pertama dari gambar 2.010, adalah “ (defun c:test (/ p1 p2) ”, program Autolisp selalu didahului oleh kurung
buka, kemudian diikuti fungsi lain, disini terdapat kata “ defun ”, uraian lengkap telah dibahas pada posting
ini: penentu fungsi, setelah kata “ c: ” ada tulisan “ test ”, kata ini boleh diganti sesuka pembuatnya, yang penting
kata untuk pemanggil program ini jangan sampai bentrok dengan kata yang terdapat pada command alias pada
Autocad, lihat pada attachment ini.
Tentu saja ada beberapa program yang bentuknya agak lain, misalnya:
(defun c:test ()
Variabel yang terkandung didalamnya, dengan sengaja tidak di riset menjadi nol, dengan tujuan tertentu variabel
dijadikan global variabel.
(defun c:test (/)
Kasusnya hampir sama dengan sebelumnya, hanya ada penambahan garis miring saja, tetapi kegunaannya tidak
begitu berpengaruh pada program tersebut.
(defun c:test (/ p1 p2)
Dan pada baris ketiga terdapat local variable p1 dan p2, sengaja dicantumkan disitu agar variable tersebut setelah
program dijalankan nilai variabel p1 dan p2 akan menjadi nol atau nil.
(defun c:test (a b c / p1 p2)
Serta yang terakhir mengandung huruf a, b dan c. telah diuraikan lebih jelas pada penentu fungsi.
Berikutnya baris (setq p1 ‘(0 0 0)), ini artinya variabel yang bernama p1 minta diset ke nilai 0,0,0 pada kordinat di
area gambar, anda boleh saja menamai variabel tersebut sesuka anda, yang penting antar variabel jangan sampai
terjadi duplikat nama, nanti akan membingungkan Autocad sendiri. Setq adalah singkatan dari Set to Quote, atau
minta diset ke nilai tertentu untuk variabel yang bernama “anu”, persamaan tersebut bisa juga berbetuk lain,
contohnya (setq p1 (list 0 0 0)), antara quote atau “ ‘ “ dan list adalah pengertiannya sama, jadi anda bisa menulis
‘(0 0 0)’ ataupun (list 0 0 0), lihat dibawah ini.
Keterangan gambar: Contoh bentuk lain menulis program
Poin “(setq p2 ‘(10 0 0))” tidak perlu dibahas karena sudah tercakup pada uraian diatas, baris berikutnya terdapat
“ (command “_line” p1 p2 “”) “, ini artinya menjelaskan kepada Autocad agar dilakukan perintah pembuatan
sebuah garis dari variabel p1 ke variabel p2, sedang tanda “” adalah sama dengan tekan enter. Baris berikutnya “
(princ) “ ini menjelaskan setelah program tersebut bekerja , akan keluar dengan tenang, terakhir setiap program
harus ditutup oleh kurung tutup.
Autolisp adalah program bahasa computer yang paling banyak menggunakan kurung kurawal, hati-hati penggunaan
kurung kurawal ini, karena semua programmer Autolisp sering menemui kekeliruan hanya pada kekurangan atau
kelebihan kurung kurawal, tetapi kadang kala kesalahan sedikit membuat program menjadi tidak bisa bekerja,
ataupun sulit menganalisa letak kesalahannya.

Kesalahan membuat program merupakan pekerjaan rutin setiap programer , tanpa disengaja program yang dibuat
kadang kala mengandung kekeliruan, entah kekeliruan itu disengaja atau karena keliru menempatkan kode,
kekeliruan ini sering membuat seorang programmer menjadi bingung sendiri, apalagi kalau pengetahuan mengenai
cara mencari solusinya masih kurang, akan menjadi boomerang bagi dirinya sendiri, termasuk penulis sendiri ketika
membuat program, sulit memecahkan kekeliruan itu, akhirnya program tersebut ditinggal. Aktip di forum adalah salah
satu solusi yang paling jitu, seseorang yang mengerti Autolisp tampa dibantu itu, niscaya akan banyak menemui
kesulitan, karena satu persoalan yang kita hadapi , bila di pertanyakan pada forum terkait akan mendapat respon
yang luar biasa, sebab di forum akan dibaca oleh semua orang yang berada di seluruh dunia.
Untuk mencoba sebuah program yang salah, akan kita praktekan dan sebagai sampelnya, kita ambil dari gambar ini,
perlu diketahui proses memeriksa kode yang salah ada beberapa cara. Dengan caraindividual artinya memeriksa
baris demi baris, dan cara global artinya setelah program selesai seluruhnya, satu lagi melalui check text in
editor ini mengecek keseluruhan program, dibawah ini kita akan mulai secara bertahap proses melihat kekeliruan
dari sebuah program , dengan berbagai cara , sebaiknya harus mengetahui dulu ikon mana saja yang bisa dipakai
untuk memeriksa kode tersebut, untuk lebih jelasnya lihat fungsi ikon dibawah ini.
Cara individual

Keterangan Gambar: Tombol load Selection


Ikon Load selection berfungsi untuk menguji program perbaris, lihat gambar diatas, kita akan mencoba antara sebaris
program yang benar dan yang salah.

Keterangan gambar: Tulis sebuah kode di Visual lisp console


Ketiklah kode tersebut pada visual lisp console editor yang baru, yaitu dengan cara klik ikon new file, langkah
selanjutnya jadikan kode tersebut di blok, seperti dibawah ini.
Keterangan gambar: Sebuah kode yang telah di blok
Kemudian klik ikon “Load selection”, seketika itu pula hasilnya akan diketahui pada build output editor, ini
menunjukan hasil yang benar, artinya kode tersebut benar secara struktural

Keterangan gambar: Hasil akhir dari kode yang di test


Lantas kemudian buatlah sebuah kode yang sengaja disalahkan, kode diatas salin kembali , tetapi tanda kurung
kurawalnya pada akhir kode, supaya dikurangi satu buah, lakukan blok dengan cara tekan kursor sebelah kiri terus
geser sampai akhir kode, akan kita coba dan melihat sejauh mana pengaruhnya dan hasilnya.

Keterangan gambar: Kurung kurawal pada akhir kode dibuang.


Lakukan klik pada ikon load selection, hasilnya lihat dibawah ini.

Keterangan gambar: Hasil akhir bila kode kurang kurung tutupnya.


Keterangan yang didapat dari test internal adalah “ error : malformed list on input ”, artinya list pada input
bentuknya tidak benar, kita masih perlu lebih banyak lagi melihat kesalahan pada kode, coba amati kode yang
dibawah dan perhatikan apa saja yang terjadi bila dari kode tersebut ada salah satu huruf yang sengaja dihilangkan.

Keterangan gambar: Bermacam-macam kode yang keliru, dan hasilnya


Kode diatas adalah melihat kekeliruan yang terjadi pada variabel, dan kita akan lakukan pula pada perintah
command, dan bagaimana akan terjadi, mari kita lihat perubahannya.

Keterangan gambar: Contoh fungsi command yang keliru.


Cara global
Perlakuan untuk menguji kesalahan secara global, sama seperti pengujian untuk individual, yaitu dibuat blok dulu
seluruh kode, dan kemudian klik ikon “Load selection”. Pada gambar berikut, kita coba kurung tutup pada akhir
program dibuang, dan lihat apa yang terjadi
Keterangan gambar: Memperlihatkan bila kurung penutup dibuang.

Keterangan gambar: Memperlihatkan hasil dari pengujian global


Berikut ini di bagian baris ketiga , kita sengaja kurung tutup dilebihkan , amati kembali hasilnya.

Keterangan gambar: Pada baris ketiga tanda kurung di lebihkan.

Keterangan gambar: Pesan salah ditampilkan, kelebihan tanda kurung.


Baris ke empat sebelum kata “command” kurung bukanya dibuang

Keterangan gambar: Sebelum kata command tanda kurung bukanya dibuang.

Keterangan gambar: Hasil akhir dari pengujian


Di baris pertama setelah kata “test” kurung bukanya dibuang

Keterangan gambar: Tanda kurung buka setelah kata test di buang.

Keterangan gambar: Hasil akhir dari pengurangan kurung


Kurung buka sengaja ditukar dengan kurung tutup, yang terletak setelah kata “test”.
Keterangan gambar: Kurung buka ditukar dengan kurung tutup.

Keterangan gambar: Hasil test dari kurung ditukar


Check text in editor
Meletakkan spasi setelah kata “c:”, apa yang akan terjadi setelah program tersebut di uji, caranya arahkan kursor ke
menu Tools, arahkan lagi ke “check text in editor”, lanjutkan tekan tombol enter.

Keterangan gambar: Menyisipkan spasi antara “C:” dengan “test”

Keterangan gambar: Hasil test dengan “check text in editor”.


Kemudian kursor ditempatkan pada awal kata “error” dari gambar diatas, dan di klik dua kali, secara otomatis sesi
akan berubah ke program tadi, dengan kondisi seluruhnya di blok.

Keterangan gambar: Perlakuan dari gambar hasil test, semua kode menjadi di blok
Disini kita masih bingung karena seluruh program dalam keadaan di blok tanpa menunjukan letak kesalahan, ini
artinya kekeliruan di program tersebut berada diseluruh program.
Tetapi anda jangan mudah menyerah, amati lagi hasil pengujian tadi, disitu tertulis kata “ error: bad DEFUN syntax:
(C: TEST (/ P1 P2)(SETQ P1 ( … )) … ) ”, artinya kekeliruan berada pada pesan itu, amati dengan jeli , apakah
sintak menulis program sudah sesuai dengan aturan yang telah ditulis di atas.
Sebagai acuan, bila menulis kode “ c:test “, jangan menggunakan spasi antara huruf “c” dengan huruf “ : “
serta dengan nama panggilan untuk kode ( test) tersebut.
Lanjutkan dengan contoh lain, kita akan coba bagaimana kalau salah satu kurung tutupnya dikurangi satu, dan
melihat apa yang terjadi.

Keterangan gambar: Kurung tutup pada variabel p2 di buang


Keterangan gambar: Hasil pengujian dari kurung dibuang
Arahkan lagi kursor kita ke huruf yang diblok tadi, lihat hasilnya , pasti masih tetap seperti yang diatas, seluruh
program masih di blok lagi, yang berbeda hanyalah keterangan dari hasil pengujian itu, sekarang kekeliruan
menampilkan pesan “error: malformed list on input”, kata tersebut menandakan kepada kita bahwa pada program itu
ada salah satu baris yang tidak beres, mungkin kekurangan tanda kurung ataupun bisa kelebihan tanda kurung,
harap anda melihat baris perbaris dengan jeli.

Cara manual
Perhatikan dari gambar berikut, dari gambar tersebut hanya terdapat dua buah variabel, yaitu variabel p1 dan p2,
pembuat program tidak akan mendapat kesulitan untuk mengindentifikasi setiap programnya, tetapi bila program
tersebut sudah menjadi komplek , tentu hal ini akan menyulitkan dirinya sendiri, kemungkinan ada beberapa variabel
yang belum terdata, sehingga variabel tersebut akan menjadi global variabel.

Cara otomatis
Dengan menggunakan cara otomatis, untuk mengindentifikasi jumlah dan nama variabel, dan untuk menghindari dari
kekeliruan, variabel yang berada dalam kurung atau “ (/ p1 p2) ”, terlebih dahulu dihapus kemudian ikuti langkah
dibawah ini.
Dari gambar 2. 011 blok semua kode tersebut , sampai kode itu ditutupi warna biru, di klik tombol Tools kemudian
ikuti dengan tombol Check Selection, hasilnya akan segera tampil.

[CHECKING TEXT loading... SELECTION]


.
; === Top statistic:
; Global variables: (P1 P2)
; Function definition (with number of arguments): ((C:TEST . 0))
; Check done.
Cara yang lebih fleksibel, letakan kursor anda didepan kata “(defun…”, tekan tombol “ Ctrl ” + “ Shift ” bersamaan dan
“ ) “, maka hasilnya akan segera diperoleh

FUNGSI MATEMATIK

Tambah
Dalam teori matematika menambahkan bilangan “ + “ , selalu ditempatkan ditengah angka yang akan ditambahkan,
contoh 1 + 1 tanda “ + ” selalu ditempatkan diantara bilangan, tetapi lain lagi kalau untuk program Autolisp,
menempatkan tanda fungsi selalu ditempatkan di bagian paling depan
Fungsi matematika Fungsi Autolisp
1+1 (+ 1 2)
Kurang
Kurang adalah fungsi untuk mengurangi, mungkin pembaca pasti bertanya, kenapa tidak diganti dengan istilah “ min
“, penulis sengaja tidak mengganti agar tidak terjadi silang pendapat, karena dalam program Autolisp ada juga fungsi
yang bernama min, yang artinya lain lagi.
Fungsi matematika Fungsi Autolisp
2–1 (- 2 1 )
Kali
Fungsi matematika Fungsi Autolisp
2x3 (* 2 3 )
Bagi
Fungsi matematika Fungsi Autolisp
2/3 (/ 2 3 )
Sama dengan
Fungsi matematika Fungsi Autolisp
2=2 (= 2 2 )
Tidak sama dengan
Fungsi matematika Fungsi Autolisp
2 /= 3 (/= 2 3 )
Lebih kecil
Fungsi matematika Fungsi Autolisp
2<3 (< 2 3 )
Lebih kecil atau sama dengan
Fungsi matematika Fungsi Autolisp
2 <= 3 (<= 2 3 )
Lebih besar
Fungsi matematika Fungsi Autolisp
3>2 (> 3 2 )
Lebih besar atau sama dengan
Fungsi matematika Fungsi Autolisp
3 >= 3 (>= 3 3 )
Bitwise
Fungsi matematika Fungsi Autolisp
(~ 2 )
Penambahan
Fungsi matematika Fungsi Autolisp
(1+ )
Pengurangan
Fungsi matematika Fungsi Autolisp
(1- )
Gcd
Fungsi matematika Fungsi Autolisp
(gcd 81 57) => 3
Abs
Fungsi matematika Fungsi Autolisp
(abs 100) => 100
(abs -100) => 100
(abs -99.25) => 99.25
Lsh
Fungsi ini sangat jarang dipakai pada program.
Fungsi matematika Fungsi Autolisp
(lsh 2 1) => 4
Max
Max berfungsi untuk mencari nilai angka yang terbesar.
Fungsi matematika Fungsi Autolisp
(max 4.07 -144) => 144
Min
Min berfungsi untuk mencari nilai angka yang terkecil.
Fungsi matematika Fungsi Autolisp
(min 4.07 -144) => 4.07
Minusp
Fungsi matematika Fungsi Autolisp
(minusp -4.293) => T
Rem
Membagi bilangan pertama oleh bilangan kedua dan menghasilkan sisa bilangan, dengan rincian sebagai berikut 42 /
12 = sisa 6
Fungsi matematika Fungsi Autolisp
(rem 42 12) => 6
Zerop
Memastikan bahwa bilangan itu dievaluasi ke nol.
Fungsi matematika Fungsi Autolisp
(zerop 0.0) => T

FUNGSI KONVERSI

Angtof
Angtof adalah merubah dari nilai derajat ke nilai tertentu, tergantung dari variabel yang dicantumkan dibelakangnya,
format untuk angtof adalah
(angtof “nilai derajat” variabel)
nilai variabel adalah sebagai berikut.
0 untuk derajat
1 untuk derajat/menit/detik
2 untuk gradian
3 untuk radian
4 untuk surveyor

Keterangan gambar: Fungsi angtof diset sesuai variabel.


Angtos
Angtos adalah merubah dari nilai radian ke nilai tertentu, tergantung dari variabel yang dicantumkan dibelakangnya
serta kepresisiannya, sintaknya sebagai berikut.
(angtos “nilai derajat” variabel presisi)
0 untuk derajat
1 untuk derajat/menit/detik
2 untuk gradian
3 untuk radian
4 untuk surveyor

Keterangan Gambar: Fungsi angtos diubah sesuai variabel


Ascii
Ascii adalah merubah dari abjad ke angka, tetapi bila abjad tersebut mengandung lebih dari satu, yang dirubah
hanyalah huruf yang pertama saja.

Keterangan gambar: Perubahan huruf ke angka dengan menggunakan fungsi ascii.


Atof
Atof adalah fungsi untuk menghilangkan tanda kutip pada bilangan, dan menjadi bilangan real.

Keterangan gambar: Atof merubah dari pakai tanda petik menjadi polos.
Atoi
Atoi adalah fungsi untuk menghilangkan tanda kutip pada bilangan dan menjadi bilangan bulat, menuju ke nilai
terkecil.
Keterangan gambar: Atoi merubah dari pakai tanda petik menjadi polos.
Chr
Chr adalah sebuah fungsi untuk merubah bilangan bulat menjadi sebuah abjad tertentu sesuai dengan table yang
ada pada ASCII

Keterangan gambar: Chr merubah angka menjadi kode lain.


Cvunit
Arti cvunit adalah singkatan dari Converts a Value from one UNIT artinya untuk merubah nilai suatu unit ke nilai lain,
sebagai contoh, untuk merubah dari mili meter ke inchi.

Keterangan gambar: Merubah satuan ke satuan lain.


Fix
Merubah bilangan real atau yang mengandung koma, kedalam bilangan bulat dengan mendekati nilai yang terkecil.

Keterangan gambar: Merubah bilangan real menjadi bulat.


Float
Merubah bilangan bulat ke bilangan real

Keterangan gambar: Merubah bilangan integer ke real


Itoa
Merubah bilangan bulat tanpa tanda kutip menjadi pakai tanda kutip.

Keterangan gambar: Merubah bilangan integer tanpa tanda kutip menjadi bertanda kutip.
Rtos
Merubah bilangan real (mengandung koma) tanpa tanda kutip menjadi pakai tanda kutip.
(rtos “nilai angka” variabel presisi)
0 untuk scientific
1 untuk desimal
2 untuk engineering (biasanya feet atau inch)
3 untuk architecttur (biasanya feet dan pecahan inch)
4 untuk fractional

Keterangan gambar: Merubah bilangan integer atau bulat menjadi bertanda kutip.
Trans
Merubah nilai poin dari kordinat ke kordinat lain, dengan sintak rumusan seperti dibawah ini.
(trans pt from to [disp])
pt = kordinat dalam bentuk 3d
from = dimana 0 = WCS, 1 = UCS, 2 = DCS, 3 = DCS dalam paper space
to = kordinat dalam bentuk 3d

Keterangan gambar: fungsi trans dengan hasilnya.


0 = world
1 = ucs
2 = dcs
3 = paper space pada dcs

FUNGSI GEOMETRI
Angle
Menghitung besarnya sudut antara dua titik, dengan hasil dalam nilai radian.

Keterangan gambar: Mengukur antara dua titik kordinat.


Distance
Mengukur jarak antara dua titik, dalam ruang 2/3D.

Keterangan gambar: Mengukur jarak antara dua titk.


Inters
Mendapatkan data inter seksi antara dua garis.
Keterangan gambar: Menentukan atau mencari titik singgung antara dua titik.
Osnap
Fungsi osnap adalah untuk mendapatkan titik tertentu pada sebuah objek, dengan bantuan fungsi osnap, seperti
endpoint, midpoint, startpoint dan lain-lain. Tetapi terlebih dahulu lakukan seting variabel osnap untuk mendukung
fungsi osnap tersebut.
Rumusan kode untuk osnap adalah seperti dibawah ini
(osnap pt mode)
pt = untuk titik objek yang dituju
mode = fungsi osnap yang diinginkan, diantaranya “_endp”, “_int:” dan “_midp” serta yang lainnya.

Keterangan gambar: Menentukan atau mencari titik pada dua garis yang bersinggungan.
Polar
Polar digunakan untuk mendapatkan lokasi tertentu, dengan bantuan variabel asal , serta nilai sudut dalam radian
untuk menentukan arah , beserta nilai jarak antara variabel asal sampai dengan lokasi yang diinginkan. Untuk
mendapatkan rumusan polar gunakan seperti ini
(polar pt ang dist)
pt = lokasi asal
ang = sudut dalam nilai radian
dist = jarak antara lokasi asal sampai yang dituju.

Keterangan gambar: Menentukan atau mencari dengan bantuan polar.


Cos
Mencari cosinus sebuah sudut dengan nilai dalam radian.

Keterangan Gambar: Fungsi cos dengan kombinasi pi


Atan
Mengembalikan bilangan arctangent ke dalam radian.

Keterangan gambar: Fungsi atan yang menggunakan satu dan dua angka.
Exp
Mencari nilai bilangan natural pada suatu bilangan.
Keterangan gambar: Exponen dari suatu bilangan.
Log
Log adalah mencari logaritma dari bilangan real.

Keterangan gambar: Logaritma dari suatu angka


Logand
Mencari hasil logika bitwise and dari daftar bilangan bulat, umumnya logand jarang dipakai pada rumus Autolisp,
hanya pada perintah tertentu digunakan logand.

Keterangan gambar: Logand sebuah fungsi yang jarang dipakai tapi punya kegunaan yang sangat tinggi.

Keterangan gambar: Contoh kegunaan logand yang digabung dengan fungsi command.
Logior
Mencari logika bitwise OR dari daftar bilangan bulat.

Keterangan gambar: Termasuk fungsi logior yang jarang dipakai


Sin
Mencari nilai sudut sinus dari sebuah sudut dengan hasil dalam radian.

Keterangan gambar: Mencari nilai sinus dari bilangan


Sqrt
Menentukan akar dari sebuah bilangan

Keterangan gambar: Nilai akar dari suatu bilangan


FUNGSI INPUT
Entsel
Entsel adalah kepanjangan dari Entity selection, atau lebih jelasnya, menyeleksi sebuah entiti dari suatu objek, yang
didapat dari entsel ini adalah nama entity dan kordinat, ketika kursor memilih objek, lihat contoh dibawah ini.

Keterangan gambar: Sebuah fungsi entsel ketika digunakan.


Pada baris pertama perlu diingat, ketika membuat sebuah pertanyaan, harus selalu diikuti dengan “n” , ini akan
menunjukan pada kita bahwa pertanyaan tersebut selalu diletakkan pada alinea baru.
Hasil dari pertanyaan diatas terdapat pada baris kedua, mencakup bagian depan adalah nama entiti dan bagian
terakhirnya adalah letak kordinat ketika kursor kita di klik.
Entsel dengan car
Kalau ingin mendapatkan hanya entity saja, tambahkan “car” pada pertanyaan tersebut , car adalahContents of
the Address Register , atau kira-kira daftar isi alamat.

Keterangan gambar: Fungsi car yang digabung dengan entsel akan mendapatkan nama entity dari objek .
Entsel dengan cdr
Dan kalau menginginkan hanya hasil terakhirnya saja, atau letak kordinat ketika kursor di klik, gantilah “car” menjadi
“cdr”, cdr adalah pengertian dari Contents of the Decrement Register, ikuti seperti ini.

Keterangan gambar: Ketika fungsi cdr digabung dengan fungsi entsel, akan mendapatkan lokasi ketika kursor
mengenai objek.
Entlast
Mendapatkan nama entity yang terakhir dibuat oleh fungsi command, dari kode yang terdapat pada gambar 6.063 ,
setelah program command berakhir tambahkan ” (setq el (entlast)) “.

Keterangan gambar: Entlast adalah sebuah fungsi yang didapat setelah Autocad melakukan fungsi pengerjaan.
Entlast adalah dari kata Entity last, fungsi ini banyak sekali digunakan dalam program Autolisp, khususnya setelah
Autocad membuat sesuatu.
Getpoint
Selain bentuk quote atau ” ‘ “, untuk mendapatkan nilai suatu kordinat , bisa digunakan getpoint, getpoint bisa dipakai
dua cara , pertama setelah pertanyaan tersebut muncul langsung diklik di area gambar, kedua langsung masukan
kordinat pada pertanyaan tersebut.
Bentuk syntax untuk getpoint adalah
(getpoint keterangan)

Keterangan gambar: Getpoint ketika dicoba dengan menggunakan kursor sebagai data input akan menampilkan
kordinat.

Keterangan gambar: Data getpoint ketika memasukan input melalui pengetikan bukan data dari kursor.
Getpoint dengan variabel
Bentuk syntax untuk getpoint adalah
(getpoint keterangan)
Getpoint berfungsi untuk mendapatkan poin atau kordinat di area gambar, pada gambar di bawah terlihat setelah
kata getpoint diikuti dengan p1, ini tujuannya agar garis tarik dari variabel p1 terus mengikuti kemana arah kursor
digerakkan. Getpoint beda dengan list atau quote, getpoint lebih bebas menentukan nilai variabel yang dikehendaki
oleh penggunanya.

Keterangan gambar: Tampilan getpoint dengan batuan variabel lain.


Getpoint dengan strcat
Bentuk syntax untuk getpoint adalah
(getpoint keterangan)

Keterangan gambar: Strcat berfungsi untuk menghubungkan antara dua kalimat yang terputus
Getpoint dengan itoa
Bentuk syntax untuk getpoint adalah,lihat gambar di atas.
(getpoint (strcat keterangan (itoa p1))
Getreal
Nilai sebenarnya bisa didapatkan dengan memakai “getreal”, sebagai contoh didalam program Autolisp untuk
mendapatkan nilai ada dua cara, yaitu getreal dan getint, getreal untuk nilai angka yang mengandung koma 1,5 atau
5,234 dan lain-lain.
Keterangan gambar: Tampilan getreal dengan hasilnya, hati-hati kalau menggunakan ini bila dipakai untuk fungsi
array
Getint
Bilangan bulat harus menggunakan getint, seperti 2 , 3 , 4 dan segala sesuatu yang tidak mengandung koma,
rumusannya seperti dibawah ini, getint asal mula dari kata get integer.
Bila memasukan data berupa bilangan real, maka akan timbul keliru, program akan menanya ulang, khususnya
dipakai untuk fungsi array.

Keterangan gambar: Aplikasi fungsi getint pada program.


Getdist
Jarak nilai ukuran selalu digunakan getdist, hasilnya bisa berupa bilangan real (ada komanya) ataupun bilangan bulat
(tampa koma), getdist singkatan dari get distance.

Keterangan gambar: Getdist ketika digunakan untuk memasukan data nilai


Getcorner
Getcorner sesuai namanya, adalah untuk mendapatkan poin sebelah atau seberang pojok dari poin yang terdahulu,
ini berarti getcorner akan bekerja kalau telah mendapatkan titik kordinat terlebih dahulu, sebagai patokan untuk
membentuk kotak yang diinginkan oleh pemakai.

Keterangan gambar: Fungsi getcorner digabung dengan variabel lain.


Getstring
Masukan dari pengguna bisa berupa angka ataupun huruf, atau bisa kemungkinan campuran, getstring adalah salah
satu untuk memasukan data dari pengguna. Kalau data masukan mengandung spasi tambahkan setelah kata
getstring dengan “T”
Getstring dengan strcase

Keterangan gambar: Hasil akhir tampil menjadi semua huruf besar.


Getstring dengan T
Bila data yang dimasukan mengandung spasi, tambahkan huruf “T” setelah fungsi getstring.

Keterangan gambar: Tampilan getstring dengan fungsi t


Getstring dengan strcat

Keterangan gambar: Strcat digabungkan dengan getstring.


Getangle
Getangle adalah sebuah fungsi Autolisp untuk mendapatkan besarnya sudut dalam satuan radian, antara dua titik
kordinat, dengan salah satunya titik kordinatnya menunggu aksi dari pemakai.

Keterangan gambar: Tampilan getangle beserta hasilnya.


Getkword
Getkword selalu dipasangkan dengan fungsi lain, diantaranya fungsi “initget”, pemakai tidak bisa memasukkan kata
lain selain yang telah diset oleh initget, bila fungsi getkword tidak memakai fungsi initget, maka fungsi tersebut tidak
akan berfungsi dengan baik, dan akan menanyakan kembali pertanyaan tersebut, dengan terlebih dahulu
mengirimkan fungsi error, yaitu “Invalid option keyword”, jadi fungsi getkword membutuhkan fungsi tambahan
sebelum kata getkword ditempatkan.
Keterangan gambar: Tampa fungsi initget fungsi getkword tidak akan jalan.
Keuntungan lain menggunakan fungsi getkword adalah, bila pemakai memasukan, kata cuma “Ad” saja , fungsi
tersebut akan langsung merespon dan memberikan jawaban menjadi “Ade”, atau pemakai cuma memasukan hanya
huruf “A”, respon yang akan muncul menjadi lengkap “Ade”.

Keterangan gambar: Penggabungan fungsi initget dengan fungsi getkword, kelebihan fungsi getkword adalah ketika
pemakai hanya memasukan satu huruf, khususnya bagian depan, fungsi tersebut sudah bisa merespon.
Tetapi bila pemakai memasukan kata diluar kata yang terdapat pada fungsi initget, langsung akan muncul pesan
error, lihat contoh dibawah ini

Keterangan Gambar: Error akan muncul bila pemakai memasukan data diluar dari batasan fungsi initget.

Getorient
Getorient adalah fungsi untuk mengukur sudut antara titik nol, titik nol pada umumnya dalam Autocad selalu dipakai
sistem east, yang titik nol nya diletakkan pada garis sumbu x disebelah kanan, dan mengarah ke sebelah kiri, atau
lebih popular melawan arah jarum jam, input masukan tergantung seting angdir dan angbase. Satuan untuk sudut
dalam fungsi getorient adalah radian.

Keterangan gambar: Data dari hasil getorient adalah dalam nilai radian lihat gambar ini.
Getfilled
Menampilkan dialog box ketika mencari lokasi folder, bisa digunakan fungsi getfilled, dengan rumusan sintak nya
sebagai berikut.
(getfiled “judul dialog box” “lokasi folder” “extension” “seting”)
Keterangan gambar: Getfilled akan diikuti tampilan lanjutan seperti yang diperlihatkan pada gbr. berikut.

Keterangan gambar: Setelah getfilled di load


Getfilled ini bisa digunakan untuk mencari folder yang berlainan ataupun drivenya, dengan nama khusus pada file
tersebut.
Ssget
Selection set get adalah singkatan untuk ssget, artinya objek yang diambil dari area gambar bisa beberapa objek,
dengan maksimal objek adalah 128, lebih dari itu Autocad otomatis akan meng nol kan objek tersebut. (Autodesk –
User’s Guide, release 13.)
Kalau pemakai menginginkan hasil seleksi lebih akurat, tambahkan filter atau saringan setelah kata ssget tersebut,
sebagai contoh , bila pemakai ingin dan hanya warna tertentu yang dipilih atau nama layer, ataupun nama object
tertentu yang dinginkan.

Keterangan gambar. Ssget tampa dilengkapi komentar, format seperti ini agak menyulitkan bagi pemakai, tampa
diketahui tujuan fungsi itu
Kalau kita ingin menambahkan komentar untuk pertanyaan, jangan langsung ditempatkan setelah ssget, lihat contoh
ini yang salah

Keterangan gambar: Bentuk ssget yang salah meletakkan komentar.


Seharusnya komentar ditempatkan sebelum ssget, terpisah dari kode utama, kalau disatukan akan terjadi error,
contoh yang benar gunakan “princ” atau “prompt”

Keterangan gambar: Bentuk fungsi ssget dengan komentar yang betul


Fungsi ssget bisa dikombinasikan dengan fungsi lain, apabila kita menghendaki hanya warna objek tertentu, atau
layer tertentu ataupun seluruh objek yang berada di area gambar, setelah kata ssget tambahkan kata seperti
dibawah ini, rumusannya adalah sebagai berikut.
Ssget dengan C

Keterangan gambar: Tambahan pada fungsi ssget sangat penting , fungsi ssget menjadi lebih selektip
Ssget dengan CP
CP = Semua objek yang disilang dan terdapat dalam kotak khusus

Keterangan gambar: Saringan dengan menggunakan kotak atau garis silang.


Ssget dengan F
F = Seleksi pagar

Keterangan gambar: Tambahan filter dengan fungsi seleksi pagar.


Ssget dengan I
:I = Objek yang dipilih ketika menggunakan pickfirst

Keterangan gambar: Tambahan filter dengan menggunakan pickfirst.


Ssget dengan L
L = objek yang terakhir terlihat

Keterangan gambar: Fungsi “L” digabung dengan ssget.


Ssget dengan P
P = Seleksi terakhir yang dibuat
Keterangan gambar: Seleksi terakhir digabung dengan ssget.
Ssget dengan W
W = Seleksi jendela

Keterangan gambar: Seleksi jendela ketika berfungsi.


Ssget dengan WP
WP = Semua objek yang terdapat didalam kotak khusus

Keterangan gambar: Semua objek dalam kotak akan ditangkap oleh filter wp.
Ssget dengan X
X = Semua objek yang terdapat di area gambar

Keterangan gambar: Seluruh objek yang terdapat di area gambar akan ditangkap dengan fungsi X.
Ssget dengan :E
:E = Sesuatu objek yang telah dipilih dengan seleksi pickbox

Keterangan gambar: Hanya objek tertentu saja yang dipilih.


Ssget dengan :N
:N = Seleksi yang digunakan untuk block dan transformasi matrik.

Keterangan gambar: Block dan transformasi saja yang diterima


Ssget dengan :S
:S = Hanya diizinkan satu seleksi

Keterangan gambar: Khusus hanya satu jenis seleksi.

Repeat
Sesuai nama, repeat adalah untuk mengulang sesuatu , fungsi ini sering sekali digunakan dalam program Autolisp,
dan malah sering digabung dengan fungsi lain.
Repeat dengan princ

Keterangan gambar: Fungsi pengulangan yang sederhana.


Hasil dari program diatas , seperti berikut
_$ Adesu is the best
Adesu is the best
Adesu is the best
Adesu is the best
Adesu is the best
Adesu is the best
Adesu is the best
Adesu is the best
Adesu is the best
Adesu is the best
“nAdesu is the best”
Angka 10 menyatakan jumlah yang harus diulang oleh program tersebut, contoh lain untuk mengulang perintah, lihat
dibawah ini
Repeat dengan command circle

Keterangan gambar: Pengulangan di gabung dengan perintah circle.


Kode diatas adalah bagaimana cara mengulang perintah, untuk membuat lingkaran dari radius 1 sampai dengan
radius 100, diatas ada variable yang bernama cnt, fungsinya untuk menambah radius sebelumnya menjadi radius
baru.
Repeat dengan command line
Contoh membuat garis dari centering sebuah arc, ke poin pada sepanjang garis arc tersebut, amati dan pelajari ,
masing- masing fungsi tersebut.
Keterangan gambar: Membuat garis supaya berulang.
Repeat dengan command text

Keterangan gambar: Membuat huruf secara individual, artinya huruf dibuat satu persatu dengan titil awal sama.

FOREACH
Foreach adalah fungsi untuk mengulang semua anggota yang terdapat dalam daftar, jadi foreach harus menpunyai
terlebih dahulu daftar yang akan diulang.
Format rumusan untuk membuat fungsi foreach adalah sebagai berikut
(foreach x lst fungsi yang diinginkan)
 X adalah urutan anggota dari daftar tersebut yang akan dievaluasi
 Lst adalah daftar anggota yang akan dievaluasi
Fungsi yang diinginkan adalah suatu fungsi yang akan dikerjakan oleh program sesuai kebutuhannya, lihat gambar
foreach dengan radius, foreach sangat bermangfaat untuk tugas yang rumit, tetapi mempunyai fleksibilitas yang
tinggi, serta membuat kode tidak terlalu panjang
Foreach dengan radius
Keterangan gambar: Membuat radius berulang dengan bantuan foreach.
Foreach dengan cons

Keterangan gambar: Membentuk daftar dengan bantuan foreach.


Foreach dengan hatch

Keterangan gambar: Keuntungan fungsi foreach ketika digunakan berulang dengan hatch.
Foreach dengan if

Keterangan gambar: Kombinasi foreach dengan if


Foreach dengan tblsearch

Keterangan gambar: Membuat layer dengan bantuan foreach


Foreach dengan text

Keterangan gambar: Fungsi text di gabung dengan foreach


Foreach dengan vl-cmdf
Keterangan gambar: Membuat layer berkat bantuan fungsi foreach
Foreach dengan spline

Keterangan gambar: Gabungan spline dengan foreach

Mapcar adalah sebuah fungsi Autolisp, yang banyak sekali gunanya dan cukup sulit bagi programmer baru, apalagi
program tersebut sering di kombinasikan dengan fungsi lain, khususnya “lambda”, hanya programmer yang sudah
ahli yang mampu menggunakan dengan baik, kalau anda sebagai pemula usahakan sementara hindari dulu dengan
fungsi mapcar tersebut, kadang kala mapcar sering membingungkan.
Mapcar
Mapcar dengan tambah

Keterangan gambar: Menambah bilangan ke dalam daftar.


Mapcar & lambda
Mapcar & lambda dengan tambah

Keterangan gambar: Membentuk bilangan baru ke dalam daftar.


Mapcar & lambda dengan nth

Keterangan gambar: Hanya bilangan tertentu yang di inginkan

Keterangan gambar: Mengkoleksi bilangan tertentu dari beberapa kumpulan daftar.

Keterangan gambar: Menambah bilangan dari dalam daftar supaya daftar jadi bilangan baru.
Mapcar & lambda dengan perkalian

Keterangan gambar: Memperkalikan seluruh daftar

Keterangan gambar: Kombinasi perhitungan.

Keterangan gambar: Membuat perkalian dengan masing-masing anggota dalam daftar.


Mapcar & lambda dengan pembagian

Keterangan gambar: Membagi masing-masing anggota daftar oleh daftar lain.


Mapcar & lambda dengan expt

Keterangan gambar: Menambahkan pangkat pada masing- masing anggota.


Mapcar & lambda dengan cons

Keterangan gambar: Menambahkan bilangan 10 ke masing-masing anggota.

Keterangan gambar: Kombinasi mapcar dengan entmake.


Mapcar & lambda dengan while

Keterangan Gambar: Kombinasi cons, while dengan mapcar.


Mapcar & lambda dengan cdr

Keterangan Gambar: Kelebihan mapcar bisa memungut hanya nilai tertentu


Mapcar & lambda dengan vl-string-right-trim

Keterangan Gambar: Merubah ektensi sekelompok file dengan bantuan mapcar.


Mapcar & lambda dengan list

Keterangan Gambar: Menggabungkan dua daftar menjadi satu daftar.


While sama seperti mapcar, foreach ataupun repeat, adalah sebuah fungsi untuk mengulang sebuah program,
dimana terdapat sebuah trigger , fungsi trigger untuk mengevaluasi ulang bila kondisinya masih “nil”, bila trigger telah
tercapai “t” , maka while akan berhenti.
While dengan append

Keterangan Gambar: Membuat gabungan daftar dengan kombinasi while


While dengan cnt

Keterangan Gambar: Fungsi cnt untuk mendapatkan nilai bertambah ketika pertanyaan muncul
While dengan comment

Keterangan Gambar: While di kombinasikan dengan komentar


While dengan cond
Keterangan Gambar: Fungsi while di kombinasikan dengan cond.
While dengan cons

Keterangan Gambar: While dan cons untuk membentuk sebuah list.


While dengan enter

Keterangan Gambar: Berkat bantuan if, pemakai hanya perlu tekan enter.
While dengan if

Keterangan Gambar: Kombinasi while dengan if


While dengan <

Keterangan Gambar: Fungsi while akan berhenti mengulang ketika bilangan pertama menyamai bilangan kedua.
Keterangan Gambar: Fungsi while memakai fungsi trigger dan khusus hanya menyeleksi lingkaran.

Keterangan Gambar: Pengulangan akan berhenti ketika variabel n menyamai nilai 10.
While dengan not

Keterangan Gambar: Ketika fungsi entsel mendeteksi hasilnya nil, dan digabung dengan not, sehingga trigger
bernilai T.

Keterangan Gambar: Karena variabel X di set ke nil maka while seakan bekerja terus.
While dengan not dan ssget

Keterangan Gambar: Variabel ss langsung diaktipkan sehingga bersifat nil.


While dengan not equal
Keterangan Gambar: Selama not equal bersifat nil, proses while berlangsung terus.
While dengan null

Keterangan Gambar: Jika variabel ss menghasilkan nil, maka fungsi princ akan aktif.
While dengan point

Keterangan Gambar: Bila variabel pt diberi input dengan kursor di klik, perintah command akan aktif
While dengan princ

Keterangan Gambar: Fungsi while tidak bisa berhenti kecuali di tekan tombol escape.
While dengan tampa input yang benar

Keterangan Gambar: Karena variabel ed bersifat nil, maka pengulangan akan terus bekerja.
If
Kondisi untuk mengevaluasi suatu objek biasanya menggunakan fungsi “if”, ada beberapa trik untuk mengadopsi
fungsi “if”, umumnya seorang programmer menggunakan fungsi if , untuk tujuan tertentu dan memastikan bahwa
object yang sedang digarapnya benar-benar sesuai dengan yang dicari, dengan penambahan beberapa fungsi lain.
If dengan and
Membuktikan bahwa variabel pt1 dan pt2 adalah ada, maka perintah pembuatan garis segera dilanjutkan, dan
apabila tidak mengandung pt1 dan pt2, maka perintah pesan error akan segera muncul.

Keterangan Gambar: Jika variabel pt1 dan pt2 masih eksis


If dengan not
Not ditambahkan ke fungsi ini, adalah untuk membuktikan bahwa variabel yang dicari , benar bukan seperti yang
diinginkan.

Keterangan Gambar: Not ketika di gunakan bersama if


If dengan or
Membuat pilihan untuk dimasukan kedalam fungsi if, yaitu dengan menambahkan fungsi or, jadi jika salah satu
pilihan tidak sesuai dengan yang diinginkan , ada salah satu pilihan lagi yang di ajukan sebagai syarat.

Keterangan Gambar: Jika data ada dua yang kriterianya sesuai yang di inginkan

Keterangan Gambar: Fungsi initget berfungsi sebagai filter


Keterangan Gambar: Contoh lain penggunaan or
If dengan alert
Pesan error ataupun pesan lainnya , bisa berupa peringatan ataupun bahwa pilihannya adalah yang benar-benar
dicari, fungsi alert adalah salah satu fungsi yang berperan cukup reprenstatif.

Keterangan Gambar: Alert digabung dengan fungsi if

Keterangan Gambar: Penggabungan fungsi alert menggunakan fungsi strcat.


If dengan cond
Kondisi ketika data yng dimasukkan adalah benar semua, tetapi fungsi harus menyeleksi atau memilah-milah data
tersebut, hanya fungsi cond yang pantas digunakan untuk hal ini

Keterangan Gambar: Salah satu bentuk penggunaan cond.


If dengan equal
Salah satu fungsi yang berguna untuk membuktikan, bahwa data yang di masukkan adalah sesuai dengan
ketentuan, gunakanlah fungsi equal.
Keterangan Gambar: Fungsi equal berfungsi mendeteksi bila variabel opt hasilnya “Y”.
If dengan getvar
Jika data yang dimasukan sesuai dengan fungsi lain, fungsi lain bisa berupa seting variabel, data ini diambil atau
didapat dari fungsi getvar.

Keterangan Gambar: Jika variabel ds hasilnya lebih kecil atau sama dengan 1, maka fungsi variabel h1 akan
menanyakan lagi

Keterangan Gambar: Ketika seting orthomode bernilai 0 , fungsi if akan langsung bekerja dan di set ke nilai 1, tetapi
bila orthomode tidak sama dengan 0, otomatis orthomode di set ke nilai 0.
If dengan if
Ketika fungsi if masih diperlukan, untuk mendeteksi variabel pada proses kelanjutannya.

Keterangan Gambar: Penggunaan if di dalam if masih memungkinkan, tergantung kebutuham dari programernya.
Keterangan Gambar: Secara beruntun pemakain if masih memungkinan, seperti yang di tampilkan gambar di atas.
If dengan member
Member hanya akan mendeteksi sekumpulan daftar, ketika variabel sebagai indikatornya terdapat kesamaan dengan
daftar.

Keterangan Gambar: Member berguna apabila terdapat data dalam sebuah list lebih dari satu, sehingga dengan
fungsi member akan disaring deretan anggota yang sesuai dengan data input.

Keterangan Gambar: Anggota yang diambil adalah yang sama dengan input data, terus menuju kesebelah
kanannya.
If dengan progn
Program diperlukan untuk melanjutkan proses yang panjang, karena fungsi if hanya akan memproses satu fungsi
saja.
Keterangan Gambar: Jika if tidak menggunakan progn, program tersebut akan timbul error, karena if hanya
melanjutkan proses berikutnya satu langkah saja.
If dengan setvar
Jika fungsi getvar tidak sama dengan nilai 0, maka fungsi setvar langsung bekerja.

Keterangan Gambar: Seting variabel bila tidak sama dengan yang diinginkan, digunakan fungsi if untuk mendapat
seting baru.
If dengan tblsearch

Keterangan Gambar: Tblsearch berfungsi untuk mendeteksi jenis style yang sedang dipakai, dari gambar tersebut di
cari apakah jenis huruf yang bernama “Arial”, masih eksis tidak, jika masih fungsi setvar bekerja. Jika tidak terdapat,
maka di lakukan loading jenis huruf tersebut.
If dengan textstyle
Fungsi ketidaksamaan akan bernilai betul atau bila variabel txs dan htx berlainan, maka loading huruf akan dimulai.

Keterangan Gambar: Kasus ini sama dengan gambar sebelumnya (if dengan tblsearch)
Cond
Cond adalah singkatan untuk condition, fungsi ini digunakan apabila mengevaluasi beberapa object atau daftar yang
benar, tetapi hanya salah satu yang bisa diterima pada proses selanjutnya, untuk lebih detilnya lihat contoh.
Cond dengan getkword
Getkword akan berfungsi sebagai pembatas input masukan, dan mengulang bila tidak ada data yang masuk serta
tidak sesuai, dengan bantuan fungsi initget

Keterangan Gambar: Gabungan fungsi antara cond dan getkword, serta pembatasan input dari fungsi initget,
memudahkan bagi pengguna untuk memasukan data ke dalam program.
Cond dengan vl-string-search

Keterangan Gambar: Dengan bantuan fungsi vl-string-search, mendeteksi lokasi spasi.


Cond dengan alert
Bila variabel opt nilainya sama dengan nilai dalam fungsi cond, salah satu alert akan berfungsi
Keterangan Gambar: variabel opt di set ke 1

Keterangan Gambar: Variabel opt di set ke 2

Keterangan Gambar: Variabel opt di set ke T

Keterangan Gambar: Variabel opt di set ke nil

Keterangan Gambar: Variabel opt di set ke enter


Cond dengan getstring
Variabel opt memilih input dari fungsi princ, bila sama dengan yang ada di fungsi cond, salah satu fungsi alert akan
bekerja.
Keterangan Gambar: Fungsi cond akan mendeteksi, masukan dari variabel opt dan fungsi alert akan memunculkan
dialog box, jika fungsi cond sama

FUNGSI MANIPULASI DATA

Acad_strsort
Untuk mengurut susunan abjad berdasarkan urutan abjad , gunakanlah fungsi acad_strsort.

Keterangan Gambar: Fungsi ini akan mengurut abjad dari data sesuai susunan abjad.
Append
Append digunakan untuk menggabungkan beberapa daftar menjadi satu daftar

Keterangan Gambar: Menggabungkan anggota daftar, agar menjadi sebuah daftar


Assoc
Assoc adalah dari kependekan kata ASSOCiative pada sebuah daftar, dipakai untuk memanggil sebuah asosiasi dari
sebuah daftar entity, contoh dibawah dipakai untuk mengetahui data dari sebuah objek yang didapat dari objek text,
assoc akan bekerja kalau fungsi “entget” telah digunakan terlebih dahulu, dan fungsi “entget” bisa bekerja bila telah
diketahui nama entity tesebut.
Keterangan Gambar: Dengan fungsi entget, sebuah objek bisa diuraikan nilai yang berhubungan dengan objek
tersebut.
Lihat contoh diatas, untuk mendapatkan jenis entity, lokasi , layer, warna, dan fungsi lain, anda bisa lihat di “F.1.
C:Program FilesAutoCAD 2005Helpacad_dxf”
Car
Contents of the Address Register disingkat menjadi car, car digunakan untuk mendapatkan data pertama dari
sejumlah daftar, atau data awal dari sekumpulan data.
Untuk lebih detil perihal car dan kaitannya, lihat di referensi ini: “G2. Artian dari Register.”

Keterangan Gambar: Memanggil atau mendapatkan nilai pertama dari sebuah daftar.
Cdr
Cdr adalah kepanjangan Contents of the Decrement Register , yaitu untuk mencari nilai kedua dan seterusnya dari
sebuah daftar, dan menghilangkan data pertama.

Keterangan Gambar: Nilai kedua dari sebuah daftar, didapat dengan bantuan fungsi cdr
Cons
Asal kata cons adalah dari construction, yaitu untuk menambahkan elemen objek terhadap awal dari sebuah daftar,
membentuk sebuah pasangan daftar.
Keterangan Gambar: Membentuk anggota baru dengan bantuan fungsi cons.
Length
Menghitung jumlah bilangan yang terdapat di dalam daftar.

Keterangan Gambar: Menghitung jumlah anggota dalam sebuah daftar.


List
Fungsi list adalah untuk membentuk satuan menjadi sebuah daftar

Keterangan Gambar: Memasukan rangkaian angka supaya menjadi sebuah daftar.


Listp
Untuk memastikan bahwa sebuah daftar adalah merupakan list

Keterangan Gambar: Untuk memastikan bahwa sebuah objek atau daftar, adalah benar-benar sebuah list
Member
Kegunaan dari member adalah untuk mencari sekumpulan anggota dari sebuah daftar anggota, berdasarkan dari
data input, fungsi ini hampir menyerupai dengan cdr.

Keterangan Gambar: Memisahkan sekelompok anggota, yang awal kelompok tersebut sama dengan data masukan.
Nth
Nth merupakan rumus atau sebuah fungsi untuk mencari sebuah anggota, berdasarkan indikator dari data input,
sebuah daftar dihitung nol mulai daftar pertama.
Keterangan Gambar: Menentukan urutan angka dari sekelompok anggota.
Reverse
Membalikkan sebuah daftar, nilai akhir dijadikan awal daftar.

Keterangan Gambar: Membalik nilai dari sebuah anggota

FUNGSI PENANGANAN OBJEK


Entget
Menguraikan data objek bisa dilakukan dengan mengggunakan fungsi entget, fungsi entget bisa berfungsi bila objek
tersebut telah diketahui nama entitinya, sebelumnya gunakan rumus dari pembahasan sebelumnya tentang fungsi
input bag.1 dan fungsi input bag.2 yang mengupas entsel, setelah itu lanjutkan dengan entget, hasil dari entget ini
akan berupa kumpulan atau asosiai dari entity tersebut .Semua entiti diwakilkan dengan angka, nama layer akan di
wakilkan dengan rumus dxf (8 . “0″), dengan menggunakan fungsi assoc , nama layer akan didapat, lihat cara
menggunakan assoc pada help file .

Keterangan Gambar: Sebuah lingkaran kalau diuraikan akan menjelaskan banyak factor, diantaranya nama objek,
nama layer, jenis warna, radius, pusat lingkaran dan lain-lain.
Entmod
Entity modification adalah kependekan untuk entmode, berfungsi untuk merubah atau memodifikasi data dxf atau
Drawing Interchange File, dari sebuah entity dengan cara menyisipkan data dxf pada entity tersebut.

Keterangan Gambar: Memodifikasi sebuah entity yang sederhana.


Entupd
Setelah dilakukan entmode, mutlak dilakukan proses entupd.
Keterangan Gambar: Setelah dimodifikasi sebuah entity, perlu untuk dilakukan update terhadap objek.
Entdel
Entdel adalah singkatan dari ENTity DELete, digunakan untuk menghapus objek gambar maupun non gambar,
objeck tersebut masih berlaku, atau objek itu hasil penyimpanan variabel dari perintah Autocad, biasanya selalu
digunakan “entlast” untuk membantu fungsi entdel tersebut, atau bisa digunakan fungsi “last”.

Keterangan Gambar: Menghapus objek di area gambar, bisa dilakukan dengan perintah command atau entdel.
Handent
Handent dari kata HANDle ENTity , yaitu mengembalikan nama entity dari sebuah asosiasi, lihat fungsi dibawah ini.

Keterangan Gambar: Untuk mengetahui atau mengembalikan nama entity, fungsi handent adalah pemecahannya.

FUNGSI PENANGANAN STRING


Read
Menghilangkan tanda kutip pada bilangan atau huruf, dan hanya mengambil nilai yang paling depan.

Keterangan Gambar: Fungsi read selalu dilengkapi dengan tanda kutip, dan menghilangkan tanda kutip, serta hanya
mengambil angka pertama

Strcase
Merubah jenis huruf dari huruf kecil menjadi huruf besar, tetapi bila dilengkapi dengan fungsi ” t “, fungsi tersebut
menjadi tidak berlaku.

Keterangan Gambar: Strcase harus selalu dilengkapi tanda kutip, merubah seluruh abjad dari huruf kecil menjadi
huruf besar
Strcat
Menggabungkan beberapa huruf ataupun angka, tapi objeknya harus dilengkapi dengan tanda kutip.

Keterangan Gambar: Menggabungkan beberapa huruf agar menjadi satu kalimat.


Strlen
Menghitung jumlah huruf yang terdapat dalam sebuah kalimat, termasuk spasi akan terhitung.

Keterangan Gambar: Menghitung jumlah huruf yang terdapat dalam satu kalimat.
Subst
Substitusi suatu objek kepada objek lain digunakan fungsi subst.

Keterangan Gambar: Menyisipkan variabel ke dalam sebuah entiti, sehingga entiti tersebut bentuk atau modelnya
menjadi berubah sesuai keinginan pemakai.

FUNGSI PENANGANAN SIMBOL

Anda mungkin juga menyukai