หยิบมาฝากกัน AutoLISP เขียนตำแหน่งระยะห่างเสาไฟฟ้า ไปเห็นมาจากเว็บน่าสนใจดี
ที่มา : http://www.phosat.com/
ลองนำไปใช้ดูได้นะครับ
;สร้าง block eploe ขนาด 1x1 มี insert point อยู่ตรงกลาง และ layer epole
(defun c:epole ()
(setq ins_pnt (getpoint "\nStart point :")) ;จุดเริ่มต้นวางเสา
(setq i (getint "\nNumber of blocks :")) ;จำนวนเสาที่จะวาง
(if (> i 1) (setq dist1 (getdist "\nDistance :")))ระยะห่างของเสา
(setq w1 (getdist "\nWidth :"));ขนาดเสา ความกว้าง
(setq l1 (getdist "\nLenght :"));ความยาว ปกติก็ให้ 1x1
(setq rot_txt (getangle "\nRotation angle<0>:"));การหมุนของเสา
(if (not rot_txt)
(setq rot_txt 0.0)
)
(setq rot_txt (rtod rot_txt))
(if (> i 1) (setq txt_dir (getangle "\nPutting direction:"))) ;แนวการวางเสา
(if (not dist1) (setq dist1 0.0))
(if (not txt_dir) (setq txt_dir 0.0))
(setvar "clayer" "epole")
(repeat i
(command "_insert" "epole" ins_pnt w1 l1 rot_txt) ;คำสั่งวางเสา
(setq ins_pnt (polar ins_pnt txt_dir dist1))
)
)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น