;========================================
; < cross-sungai.lsp >
; ** crss **
; plot data cross sungai
; 20 September 2003
;========================================
(defun c:crss ()
(setvar "dimzin" 1)
(setvar "blipmode" 1)
(setvar "cmdecho" 1)
(princ "\n Format data <10><10>: B1:<No Patok> B2<Datum> B3<Jarak - Elv> ")
(setq p0 (getpoint "\nTitik Awal Gambar Cross : "))
(setq p00a (polar p0 (* 1.5 pi) 150))
(setq p00b (polar p0 (* 1.5 pi) 300))
(setvar "dimzin" 0)
(setvar "blipmode" 0)
(setvar "cmdecho" 0)
;=======================
; skala gambar
;=======================
; (setq ssv (getreal "\nSkala Vertikal < 100 200 : 100 >?:"))
(setq ssv 100)
(setq ssh 100)
(if (equal ssv nil)
(setq scy 100.0)
(setq scy ssv)
)
;(setq ssh (getreal "\nSkala Horizontal < 100 200 500 : 100 >?:"))
(if (equal ssh nil)
(setq scx 100.0)
(setq scx ssh)
)
(setq scv (/ 1000 scy)
sch (/ 1000 scx)
)
;======== INPUT FILE DATA ++++
(setq fnam1 "/Procad/Data/")
(setq fnam2 "*.prn")
(setq lastLL 2 lastRR 5)
(setq f (getstring (strcat "\nFile Input Data Cross c:/procad/data/ < " fnam2 " > ? : ")))
(if (/= f "") (setq fnam2 f))
(setq fnam (strcat fnam1 fnam2))
(setq check (findfile fnam))
(while (= check nil) (prompt "\nFile Not Found .....! ")
(setq f (getstring (strcat "\nFile Input Data Cross c:/procad/data/ < " fnam2 " > ? : ")))
(if (/= f "") (setq fnam2 f))
(setq fnam (strcat fnam1 fnam2))
(setq check (findfile fnam))
) ; while
;===================================================================
;====== BACA DATA ======================================== BARIS 1 =
(setq fp (open fnam "r"))
(setq file (read-line fp)) ; baris 1 no. patok
(if (= file "") (setq file nil))
(if (= file nil) (setq stop 1) (setq stop 0))
(setq noptk (atof (substr file 11 10))) ; No.patok
(setq file (read-line fp)) ; baris 2
(setq eldat (atof (substr file 11 10))) ; Elevasi datum
(setq file (read-line fp)) ; baris 3
(setq file (read-line fp)) ; baris 4
(setq jar0 (atof (substr file 1 10))) ; jarak datar 0
(setq elt1 (atof (substr file 11 10))) ; elevasi titik pertama
(setq p01 (polar p0 (* 0.5 pi) (* (- elt1 eldat) scv)))
(command "color" 20 "-linetype" "s" "dashed2" "")
(command "line" p0 p01 "")
(command "color" 20 "-linetype" "s" "continuous" "")
(command "line" p0 (polar p0 (* 1.5 pi) 20) "")
(command "color" 7)
(setq p01tx (polar p0 (* 1.5 pi) 5))
(setq p50 (polar p0 pi 20))
(setq p51 (polar p0 pi 30))
(setq p52 (polar p51 (* 1.5 pi) 5))
(setq p53 (polar p52 (* 1.5 pi) 10))
(setq p54 (polar p0 pi 33))
(setq p55 (polar p54 (* 1.5 pi) 10))
(setq p56 (polar p55 (* 1.5 pi) 10))
(command "text" "j" "tc" '(346.0 113.0) "3.5" 0 (strcat "P." (rtos noptk 2 0)))
(command "text" "j" "tc" p01tx "2.5" 90 (rtos elt1 2 2))
(if (> eldat 0)
(command "text" "j" "bl" p51 "2.5" 0 (strcat "+" (rtos eldat 2 2) " m"))
(command "text" "j" "bl" p51 "2.5" 0 (strcat (rtos eldat 2 2) " m"))
);if
(command "text" "j" "ml" p52 "2.5" 0 "ELEVASI (m)")
(command "text" "j" "ml" p53 "2.5" 0 "JARAK (m)")
(command "color" 50 "-linetype" "s" "continuous" "")
(command "line" p0 p54 "")
(command "color" 20 "-linetype" "s" "continuous" "")
(command "line" p55 (polar p55 (* 0.0 pi) 33) "")
(command "line" p56 (polar p56 (* 0.0 pi) 33) "")
(command "line" p54 p56 "")
(setq file (read-line fp)) ; baris 4
(setq jar1 (atof (substr file 1 10))) ; jarak datar 1
(setq elt (atof (substr file 11 10))) ; elevasi titik pertama
;====
(if (= jar1 "")
(setq jar1 nil)
)
(if (= jar1 nil)
(setq stop 1)
(setq stop 0)
)
(while (= stop 0)
(setq jar (- jar1 jar0))
(setq jar0 jar1)
(setq p2 (polar p0 0 (* jar sch))
p21 (polar p2 (* 0.5 pi) (* (- elt eldat) scv))
)
(command "color" 20 "-linetype" "s" "dashed2" "")
(command "line" p2 p21 "")
(command "color" 20 "-linetype" "s" "continuous" "")
(command "line" p01 p21 "")
(command "color" 50 "-linetype" "s" "continuous" "")
(command "line" p0 p2 "")
(command "color" 20 "-linetype" "s" "continuous" "")
(command "line"
(polar p0 (* 1.5 pi) 10)
(polar p2 (* 1.5 pi) 10)
""
)
(command "line"
(polar p0 (* 1.5 pi) 20)
(polar p2 (* 1.5 pi) 20)
""
)
(setq p22 (polar p2 (* 1.5 pi) 20))
(command "line" p2 p22 "")
(setq p2tx1 (polar p2 (* 1.5 pi) 5)
p2tx3 (polar p0 0 (* (/ jar 2) sch))
p2tx2 (polar p2tx3 (* 1.5 pi) 15)
)
(if (< (* jar sch) 10)
(setq sdttx2 90) (setq sdttx2 0))
(command "color" 7)
(command "text" "j" "bc" p2tx1 "2.5" 90 (rtos elt 2 2))
(command "text" "j" "mc" p2tx2 "3.0" sdttx2 (rtos jar 2 2))
(setq p0 p2)
(setq p01 p21)
(setq file (read-line fp)) ; baris 5 dst
(setq jar1 (atof (substr file 1 10))) ; jarak datar 1
(setq elt (atof (substr file 11 10))) ; elevasi titik pertama
;plot patok
(if (= jar1 "")
(setq jar1 nil)
)
(if (= jar1 nil)
(setq stop 1)
(setq stop 0)
)
) ;while
(close fp)
)
;;defun
Berikut langkah-langkah menggunakan program ini :
1. Copy dan paste list program diatas di note pad atau di program AutoLisp, simpan dengan nama cross-sungai.lsp atau langsung download program autolisp yang sudah saya siapkan (cross-sungai.lsp ) dan tempatkan di folder yang anda pilih
2. Buat file input data dengan excel sebagai berikut :
• Buka lembar kerja baru dalam excel
• Edit lebar kolom A dan B menjadi 10 dengan cara (select kolom A dan B > Format> column width> 10> OK)
• Pada cell A1 : isi dengan nomor patok, misalnya : P1
• Pada cell A2 : isi dengan elevasi datum (bidang referensi) dari gambar cross section. (ambil elevasi terendah dari data yang akan digambar (mis:13.45), kurangi dengan 3 sampai 5 dan ambil harga bulat, (misalnya diambil nilai datum 10.00))
mohon toritorialnya gan
BalasHapusane masih bingung ne,,
ndak terbaca perintah "crss" di autoCAD bro!!!
BalasHapusBarangkali belum diloading aplikasinya..
Hapusmohon pencerahan petunjuk pengisian data untuk dimesi cross untuk design..sy sudah download tapi untuk berm dan tanggung sy binggung mau ngisi dimana
BalasHapusregards,
febrinoviansyah@yahoo.com
Untuk menggambar profil melintang yang sudah ada desainnya lebih baik gunakan Procad saja
Hapusada nggak procad untuk desain gambar long & cross jalan raya yang sudah di modifikasi!!!!
BalasHapusSetahu saya belum ada.. barangkali rekan-rekan yang punya bisa dishare disini
Hapushasil gambarnya nanti skalanya berapa? apa kita bisa mengatur skalanya sendiri?
BalasHapuskarena saya biasa menggunakan skala yang berbeda untuk vertikal dan horizontalnya. mohon pencerahan terima kasih.
Hasilnya dengan Skala gambar 1:100 untuk ukuran kertas gambar A1. Kalau mau dibuat skala berbeda antara vertikal dan horisontal perlu dirubah dulu di dalam programnya. Untuk praktisnya pakai saja program procad yang bisa didownload di blog ini. Disana untuk gambar cross section bisa diatur skala gambarnya.
Hapusmohon diperjelas tutorialnya gan, soalnya masih bingung
BalasHapushttps://www.facebook.com/Budiyanto-Mayulu-344893475587767
BalasHapusmau tanya gan, itu kan untuk menggambar satu profil, kalau mau menggambar lebih dari satu profil, apanya yang dirubah dari lispnya?? mohon pencerahannya
BalasHapussaya terhitung baru dalam hal ini pak bagaimana untuk mencari koordinat x-y dengan bacaan benang tengah dan atas kemudian sudut mohon bantuannya pak....
BalasHapusMaaf linknya mati ya
BalasHapusLink sudah diperbaharui
HapusMaaf linknya mati ya
BalasHapusLink sudah diperbaharui, silahkan dicoba
Hapusfile nya sudah tidak bisa didownload
BalasHapus