양쪽으로 옵셋 후 색깔 변경
컨텐츠 정보
- 82 조회
- 3 댓글
- 0 추천
- 0 비추천
-
목록
본문
아래 리습은 양쪽으로 옵셋해주는 리습인데요…
문제는 옵셋하면 일반 실선으로 옵셋이 되는 문제입니다.
가령 현재 선택한 선종류 그대로 옵셋하면 파란색으로 변경되게끔…
리습을 바꿀수는 없을지 문의드려요…
판금전개하다보니 이런 작업류가 많은데…도면이 수백장 될때는 정말 힘들더라구요…
전문가님들의 도움을 부탁드립니다.
(defun dtr (a)(* pi (/ a 180.0)))
(defun rtd (a)
(/ (* a 180.0) pi)
)
(defun c:WW()
(setvar “osmode” 0)
(setvar “cmdecho” 1)
(setq off100(getDIST “nSelect line of Distance : “))
(setq off1(* off100 0.5))
(SETQ a1(SSGET))
(SETQ NUM(SSLENGTH a1))
(SETQ INDEX 0)
(REPEAT NUM(SETQ b1(entget(ssname a1 index)))
(setq kkke(cdr(assoc 0 b1)))
(IF(= “LINE” kkke)
(progn
(setvar “osmode” 0)
(setq c1(assoc 10 b1))
(setq c2(assoc 11 b1))
(setq d1(cdr c1))
(setq d2(cdr c2))
(setq ang(angle d1 d2))
(setq p1(polar d1(+ ang(dtr 90)) off1))
(setq p2(polar d1(- ang(dtr 90)) off1))
(setq p3(polar d2(+ ang(dtr 90)) off1))
(setq p4(polar d2(- ang(dtr 90)) off1))
(command “line” p1 p3 “”)
(command “line” p2 p4 “”)
(setq index(+ index 1))
(command “osmode” 161)
(SETQ KIS OFF100)))
(if
(= “ARC” kkke)
(progn
(setvar “osmode” 0)
(setq cc1(assoc 10 b1))
(setq rr1(assoc 40 b1))
(setq c1(assoc 50 b1))
(setq c2(assoc 51 b1))
(setq dd1(cdr cc1))
(setq r1(cdr rr1))
(setq d1(cdr c1))
(setq ang1(rtd d1))
(setq d2(cdr c2))
(setq ang2(rtd d2))
(setq ptt1(+ r1 off1))
(setq ptt2(- r1 off1))
(setq kkkk1(strcat “@”(rtos ptt1) “<“(rtos ang1)))
(setq kkkk2(strcat “@”(rtos ptt1) “<“(rtos ang2)))
(setq kkkk3(strcat “@”(rtos ptt2) “<“(rtos ang1)))
(setq kkkk4(strcat “@”(rtos ptt2) “<“(rtos ang2)))
(command “arc” “c” dd1 kkkk1 kkkk2)
(command “arc” “c” dd1 kkkk3 kkkk4)
(command “osnap” “int”)
(setq index(+ index 1))
(SETQ KIS OFF100)
(setvar “osmode” 161)))))
색깔변경
양쪽옵셋
옵셋
관련자료
김보리님의 댓글
;;죄송합니다 아마추어라 선을 고대로 복사하는 수정은 못하겠어요… 대신 색깔변경구문을 추가했고 스냅이 달라지는게 보기 싫어서 스냅을 저장했다가 오프했다가 다시 불러오는걸로 바꿔봤습니다. 2019버전에서는 잘 되네요..
저도 매그니 선배분들께 도움을 많이 받았는데 도움이 됬으면 바래봅니다.
(defun dtr (a)(* pi (/ a 180.0)))
(defun rtd (a) (/ (* a 180.0) pi) ) (defun c:V112() (setq os (getvar “osmode”)) ;(setvar “osmode” 0) (setvar “cmdecho” 1) (setq off100(getDIST “nSelect line of Distance : “))
(setq off1(* off100 0.5)) (SETQ a1(SSGET)) (SETQ NUM(SSLENGTH a1)) (SETQ INDEX 0) (REPEAT NUM(SETQ b1(entget(ssname a1 index))) (setq kkke(cdr(assoc 0 b1))) (IF(= “LINE” kkke) (progn (setvar “osmode” 0) (setq c1(assoc 10 b1)) (setq c2(assoc 11 b1)) (setq d1(cdr c1)) (setq d2(cdr c2)) (setq ang(angle d1 d2)) (setq p1(polar d1(+ ang(dtr 90)) off1)) (setq p2(polar d1(- ang(dtr 90)) off1)) (setq p3(polar d2(+ ang(dtr 90)) off1)) (setq p4(polar d2(- ang(dtr 90)) off1)) (command “line” p1 p3 “”) (command “change” (entlast)”” “p” “c” “6” “”) (command “line” p2 p4 “”) (command “change” (entlast)”” “p” “c” “6” “”) (setq index(+ index 1)) (command “osmode” os) (SETQ KIS OFF100))) (if (= “ARC” kkke) (progn (setvar “osmode” 0) (setq cc1(assoc 10 b1)) (setq rr1(assoc 40 b1)) (setq c1(assoc 50 b1)) (setq c2(assoc 51 b1)) (setq dd1(cdr cc1)) (setq r1(cdr rr1)) (setq d1(cdr c1)) (setq ang1(rtd d1)) (setq d2(cdr c2)) (setq ang2(rtd d2)) (setq ptt1(+ r1 off1)) (setq ptt2(- r1 off1)) (setq kkkk1(strcat “@”(rtos ptt1) “<"(rtos ang1))) (setq kkkk2(strcat "@"(rtos ptt1) "<"(rtos ang2))) (setq kkkk3(strcat "@"(rtos ptt2) "<"(rtos ang1))) (setq kkkk4(strcat "@"(rtos ptt2) "<"(rtos ang2))) (command "arc" "c" dd1 kkkk1 kkkk2) (command "arc" "c" dd1 kkkk3 kkkk4) (command "osnap" "int") (setq index(+ index 1)) (SETQ KIS OFF100) (setvar "osmode" os)))))
CATS_Developer님의 댓글
옵셋 후 레이어 지정할 수 있는 기능입니다. 참고해주세요 ^^ https://cafe.naver.com/autocats/143
그리고 캣츠 판금 리습 기능들이 있으니 참고해보세요~~