(defun c:ac ()
(setq ent1 (entsel”n < Select Object 1 :"))
(while ent1
(setq os (getvar “osmode” ))
(setvar “osmode” 0)
(setq ent1 (car ent1)
ent2 (entget ent1)
pt1 (cdr (assoc 10 ent2))
pt2 (cdr (assoc 11 ent2))
x11 (car pt1)
x12 (car pt2)
y11 (car (cdr pt1))
y12 (car (cdr pt2))
x21 (/ (+ x11 x12) 2.0)
y21 (/ (+ y11 y12) 2.0)
pt1 (list x21 y21))
(command”rotate” ent1 “” pt1 “90”)
(setq ent2 (entsel”n < Select Object 2 :"))
(setq ent1 (entget ent1)
ent2 (car ent2)
ent2 (entget ent2)
pt1 (cdr (assoc 10 ent1))
pt2 (cdr (assoc 11 ent1))
pt3 (cdr (assoc 10 ent2))
pt4 (cdr (assoc 11 ent2))
pt5 (inters pt1 pt2 pt3 pt4 nil))
(setvar “osmode” os)
(setq pt6 (getpoint”n < Pick Start_Point ! :")
pt7 (getpoint”n < Pick End _Point ! :"))
(command”arc” “c” pt5 pt6 pt7)
(setq ent1 (entsel”n < Select Object 1 :"))
)
)
리습입니다.
리습사용후 자꾸 오스냅이 꺼져서
글을 검색한 후
오스냅을 죽이지 않는 방법을 써봤는데
그렇게 할경우
리습작동시 기준점이 바뀌더라구요,,,
리습은 리습대로 하되
리습 사용후 오스냅이 죽지 않는 방법을 알려주세요,,,
(setq os (getvar "osmode" )) (setvar "osmode" 0) 부분이 osnap을 끄는 부분입니다. 리습의 마지막부분에 osnap복귀루틴을 포함시켜야합니다. 리습Q&A게시판에서 검색하면됩니다
거기서 찾아서 복귀라고 해서 os old인가 암튼 그걸로 바꾸어서 해도 그러더라구요,,, 그 부분을 지우고 복귀하는 걸로 하는거 말씀하신거져,,,?