안녕하세요, 레이져, 절곡에 종사하는 흔한 눈팅유져입니다.
일전에 질문 올렸다가 아키님 수야님이 도와주셔서 리습을 찾았는데요.
https://www.gocad.co.kr/qa_cad/3397595/page/6
사람 욕심이라는게 점점 더 편해지려 하다보니 보충 질문 드립니다.
양끝 선분 남기는 리습인데요, 라인 색상을 “7”번으로 바꾸고 싶습니다.
아래 리습에서 추가 구문 부탁합니다.
감사합니다.
(defun c:QTT( / sl-mapcar-ens ss)
(vl-load-com)
(defun sl-mapcar-ens (func ss) (mapcar func (vl-remove-if ‘listp (mapcar ‘cadr (ssnamex ss)))))
(princ “n선 양끝 남기기”)
(and
(setq ss (ssget ‘((0 . “LINE”))))
(or *dis* (setq *dis* 20))
(setq *dis* (cond ((getdist (strcat “n남길 길이 입력 <” (vl-princ-to-string *dis*) “>:”))) (*dis*)))
(sl-mapcar-ens
‘(lambda (en / ent1 len ep ent2 sp)
(setq ent1 (entget en) len (vlax-curve-getdistatparam en (vlax-curve-getendparam en)))
(if (> len *dis*)
(progn
(setq ep (vlax-curve-getpointatdist en *dis*) sp (vlax-curve-getpointatdist en (- len *dis*)))
(setq nen (entmakex (vl-remove ‘(lambda (-1 5)) (entget en))) ent2 (entget nen))
(entmod (subst (cons 10 sp) (assoc 10 ent1) ent1))
(entmod (subst (cons 11 ep) (assoc 11 ent2) ent2))
)
(princ “n입력한 길이보다 선이 짧습니다.”)
)
)
ss
)
)
(princ)
)
;;;
(entmod (subst (cons 11 ep) (assoc 11 ent2) ent2))
아래에
(entmod (subst (cons 62 7) (assoc 62 ent2) ent2))
추가하시면 될듯….