저번에 한번 올렸는데, 예제가 없어서 답변이 없네요~~
아래는 현재 쓰고 있는 지시선 리습입니다.
많이 불안해서 수정을 좀 해야할거 같습니다.
캐드파일 열어보시면 상세히 설명돼 있습니다.
현재의 복선지시선을 단선지시선으로 바꾸고 화살표 크기를 스케일의 1.5배 크기인
LISP로 만들고 싶습니다.
고수님들, 아래 리습 수정 좀 부탁드립니다.
캐드는 2004로 저장돼 있습니다.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:A3 (/ sc scx adk SP ANGP ARRANG LENG EP)
(SETVAR “BLIPMODE” 0)
(setq sc (getvar “LTSCALE”))
(Setq ang_ 45);;각도
(if (= ad nil)
(setq ad 3)
)
(setq adk (getreal (strcat “nArrow Length<” (rtos ad 2) “>: “)))
(if (numberp adk)
(setq ad adk)
)
(setq SP
(getpoint “nPick Start Point: “)
)
(setq ANGP
(getpoint SP “nPick Second Point: “)
)
(setq ARRANG (angle SP ANGP))
(setq LENG (* ad (getvar “LTSCALE”)))
(if (= ad 2)
(setq scx sc)
(setq scx (* sc 1.5))
)
(Setq p1 (polar sp (- arrang (dtr ang_)) leng))
(setq p2 (polar p1 (+ arrang (- (dtr 90) (dtr ang_))) ad))
(setq p3 (polar sp arrang (/ ad (sin (dtr ang_)))))
(setq p5 (polar sp (+ arrang (dtr ang_)) leng))
(setq p4 (polar p5 (- arrang (- (dtr 90) (dtr ang_))) ad))
(setvar “cmdecho” 0)
(COMMAND “COLOR” “BYLAYER”)
(command “donut” “0.0” scx “”)
(command “pline”
sp
p1
p2
p3
p4
p5
sp
ANGP
)
(setvar “cmdecho” 1)
(princ)
)
(defun dtr (a)
(* a (/ pi 180))
)
(defun rtd (a)
(* a (/ 180.0 pi))
)
공유