도면을 그리다 보면 종종 “동일선상에 있지 않습니다”
라고 뜨거든요?
그렇게 되면 fillet이 안먹혀요…
어떻게 해야 하죠? 도와주세요~
그리고 어떤 도면은 move가 엄청 느리게 실행되구요..
그런 왜그런거죠?ㅠㅠ
SPLINE 에 관해 어떻게 설명을 해야 할지는 모르겠으나,
직접 그려보셨으면 아시겠지만.. 정점(VERTEX)과 정점 사이를 임의의 정점들로 되어진 자유곡선으로 이루어진 것이 SPLINE 입니다.
해서.. 그 SPLINE의 특성을 잃어버리게 되면 수많은 VERTEX 로 된 PLINE 이 될 것 입니다.
어째뜬… “ⓞ8₂ㅈ£”님꼐서 첨부하신 파일은.. Z값때문도 아니고, FILLET 값때문도 아닌, 위와 같은 SPLINE 의 특성에 의해서 해당 LINE 는 FILLET 이 안 되는 듯 합니다.
좀더 구체적으로 얘기 하자면, 두 선간의 정점의 연장선(자율곡선) 값을 찾지 못해서 인듯 합니다.
해서… FILLET 이 안되는.. 짧은쪽 선을… 연장(STRETCH)을 하시면 그제서야 FILLET 이 되는 것을 확인 하실 수 있습니다.
위 해답이 정확 한 것이라고는 할 수 없겠으나.. SPLINE 의 특성 때문에 그런 것이라 판단 됩니다. ^^
그럼…. 좋은 한 주 되세요…
레이버스 -캐니-
move가 느리게 되는 것은 용량이 크기때문에 그런경우가 많습니다.
용량이 크다고 항상 느린것은 아닙니다. 용량이 작아도 느릴수 있습니다.대부분 트루타입폰트가 원인입니다./fillet 이 안되는것은 z좌표가 서로 다르기때문입니다. 두선이 서로 다른 높이에 있는것입니다.
Z좌표가 맞지 않기 때문입니다.
다음 LISP으로 Z축을 0으로 바꾸면 Fillet 명령을 사용할 수 있습니다.
Support 폴더의 acad2000.lisp(AutoCAD 2002의 경우) 에 붙여넣기 하시고
AutoCAD를 재실행하시면 됩니다.
;/////////////////////////////////////////////////////////////////////;z값을 0으로 바꾸는 명령
;/////////////////////////////////////////////////////////////////////
(defun c:z0 (/ ss n k ptz en spt ept ptz sptx spty eptx epty)
(prompt “nCommand: 2D Entity…”)
(prompt “nZ값을 0으로 하고자하는 대상 선택-> “)
(setq ss (ssget))
(setq n (sslength ss))
(setq k 0)
(setq ptz 0)
(while (<= 1 n)
(setq en (ssname ss k))
(setq spt (cdr (assoc 10 (entget en))))
(if (/= spt nil)(progn
(setq sptx (car spt) spty (cadr spt))
(setq spt (list sptx spty ptz))
(entmod (subst (cons 10 spt) (assoc 10 (entget en))(entget en)))
))
(setq ept (cdr (assoc 11 (entget en))))
(if (/= ept nil)(progn
(setq eptx (car ept) epty (cadr ept))
(setq ept (list eptx epty ptz))
(entmod (subst (cons 11 ept) (assoc 11 (entget en))(entget en)))
))
(setq elept (cdr (assoc 38 (entget en))))
(if (/= elept nil)(progn
(entmod (subst (cons 38 0) (assoc 38 (entget en))(entget en)))
))
(setq n (- n 1))
(setq k (+ k 1))
)
(princ)
)
;/////////////////////////////////////////////////////////////////////
z값 0으로 만들려면 change 에서 elevation옵션 쓰면 한줄에 끝나는데..이건 좀 길군요.