앙리CADLv.0 등록일: 2023-08-032023-08-03T10:08:28+09:00 2023-08-03T10:08:28+09:00카테고리: AutoCAD & CADian 사각형(정사각형이 아닙니다)을 선택하면 양 모서리에 딱 맞게 X그려지는 리습을 구할 수 있을까요. 정사각형이 아닌 기울기가 있는 도곽파일(네점을 가진 사각형이지만 정,직사각형이 아닙니다)을 다중선택하여 각각의 도곽안에 X표시를 한번에 하는 리습 구할 수 있을까요 ㅠㅠ 부탁드립니다. 공유 Facebook 관련 있는 질문들 아이콘을 바꾸고 싶습니다. 질문 검색 안되나요? 배치화면에서의 작업은 엌덯게 하나요 오토캐드 명령어창 ui 관련 질문 답변을 남겨주세요응답 취소답변을 등록하기 위해서는 로그인이 필요합니다. 아이디 또는 이메일* 비밀번호* 아이디 기억 비밀번호를 잊으셨나요? 4 답변 작성 순 최신 순 공감 순 캐드플러스 Lv.17 2023-08-03T12:09:44+09:00답변 등록 답변 등록 일시 2023-08-03 12:09 pm (수정됨) https://www.gocad.co.kr/wp-content/uploads/2023/08/중심선-그리기.mp4 캐드플러스 입니다. 사각형 모서리 그리는 리습 프로그램이 있습니다만(동영상 참조) 위 프로그램은 공개용에서는 두개 라인에 중심선을 그려주는 기능만 가능 하고 프로그램을 구매 히시면 동영상 처럼 중심선 그려주는 프로그램에서 가능합니다. 자료실 13731 에 Cadplus_X 설치 프로그램이 있습니다. 트리플렌지 Lv.0 2023-08-04T12:23:05+09:00답변 등록 답변 등록 일시 2023-08-04 12:23 pm (defun c:aaa ( / os ss ssno smember pt1 pt2 pt3 pt4) (defun *error* (msg) (setvar "osmode" os) (princ) ) (setq os (getvar "osmode")) (princ "n사각형을 선택하세요.") (setq ss (ssget '((0 . "LWPOLYLINE")))) (if (= ss nil) (progn (alert "사각형이 선택되지 않았습니다.") (exit) )) (setq ssno 0) (repeat (sslength ss) (setq smember (ssname ss ssno)) (setq ssno (1+ ssno)) (Bndchk smember) (setvar "osmode" 0) (command "line" llp urp "") (command "line" (polar llp (dtr 90) (- (cadr urp) (cadr llp)) ) (polar urp (dtr 270) (- (cadr urp) (cadr llp)) ) "") (setvar "osmode" os) );repeat ) (vl-load-com) (defun Bndchk (blkent / entname vlentname minpoint maxpoint lowleftpoint lowleftpointx lowleftpointy lowleftpointxlist lowleftpointylist uprightpoint uprightpointx uprightpointy uprightpointxlist uprightpointylist sspt sgap sgap2 pt1 pt2 ) ;min max ) (defun *error* (msg) (princ) ) (setq entname blkent) (setq vlentname (vlax-ename->vla-object entname)) (vla-getboundingbox vlentname 'minpoint 'maxpoint) (setq lowleftpoint (vlax-safearray->list minpoint)) (setq lowleftpointx (car lowleftpoint)) (setq lowleftpointxlist (cons lowleftpointx lowleftpointxlist)) (setq lowleftpointy (cadr lowleftpoint)) (setq lowleftpointylist (cons lowleftpointy lowleftpointylist)) (setq uprightpoint (vlax-safearray->list maxpoint)) (setq uprightpointx (car uprightpoint)) (setq uprightpointxlist (cons uprightpointx uprightpointxlist)) (setq uprightpointy (cadr uprightpoint)) (setq uprightpointylist (cons uprightpointy uprightpointylist)) (setq lowleftpointxlist (vl-sort lowleftpointxlist '<)) (setq lowleftpointylist (vl-sort lowleftpointylist ')) (setq uprightpointylist (vl-sort uprightpointylist '>)) (setq llp (list (nth 0 lowleftpointxlist) (nth 0 lowleftpointylist))) (setq urp (list (nth 0 uprightpointxlist) (nth 0 uprightpointylist))) ) (defun rtd (a)(/ (* a 180.0) pi)) (defun dtr(a)(* pi(/ a 180.0))) no9002 Lv.5 2023-08-08T06:40:54+09:00에게 댓글을 달았습니다. 답변 등록 일시 2023-08-08 6:40 am 감사합니다. no9002 Lv.5 2023-08-08T06:44:53+09:00에게 댓글을 달았습니다. 답변 등록 일시 2023-08-08 6:44 am 감사합니다.
캐드플러스 입니다.
사각형 모서리 그리는 리습 프로그램이 있습니다만(동영상 참조) 위 프로그램은 공개용에서는 두개 라인에 중심선을 그려주는 기능만 가능 하고 프로그램을 구매 히시면 동영상 처럼 중심선 그려주는 프로그램에서 가능합니다.
자료실 13731 에 Cadplus_X 설치 프로그램이 있습니다.
(defun c:aaa ( / os ss ssno smember pt1 pt2 pt3 pt4)
(defun *error* (msg) (setvar "osmode" os) (princ) )
(setq os (getvar "osmode"))
(princ "n사각형을 선택하세요.")
(setq ss (ssget '((0 . "LWPOLYLINE"))))
(if (= ss nil) (progn
(alert "사각형이 선택되지 않았습니다.")
(exit)
))
(setq ssno 0)
(repeat (sslength ss)
(setq smember (ssname ss ssno))
(setq ssno (1+ ssno))
(Bndchk smember)
(setvar "osmode" 0)
(command "line" llp urp "")
(command "line"
(polar llp (dtr 90) (- (cadr urp) (cadr llp)) )
(polar urp (dtr 270) (- (cadr urp) (cadr llp)) )
"")
(setvar "osmode" os)
);repeat
)
(vl-load-com)
(defun Bndchk (blkent / entname vlentname minpoint maxpoint lowleftpoint lowleftpointx
lowleftpointy lowleftpointxlist lowleftpointylist uprightpoint uprightpointx
uprightpointy uprightpointxlist uprightpointylist
sspt sgap sgap2 pt1 pt2 ) ;min max )
(defun *error* (msg) (princ) )
(setq entname blkent)
(setq vlentname (vlax-ename->vla-object entname))
(vla-getboundingbox vlentname 'minpoint 'maxpoint)
(setq lowleftpoint (vlax-safearray->list minpoint))
(setq lowleftpointx (car lowleftpoint))
(setq lowleftpointxlist (cons lowleftpointx lowleftpointxlist))
(setq lowleftpointy (cadr lowleftpoint))
(setq lowleftpointylist (cons lowleftpointy lowleftpointylist))
(setq uprightpoint (vlax-safearray->list maxpoint))
(setq uprightpointx (car uprightpoint))
(setq uprightpointxlist (cons uprightpointx uprightpointxlist))
(setq uprightpointy (cadr uprightpoint))
(setq uprightpointylist (cons uprightpointy uprightpointylist))
(setq lowleftpointxlist (vl-sort lowleftpointxlist '<))
(setq lowleftpointylist (vl-sort lowleftpointylist '))
(setq uprightpointylist (vl-sort uprightpointylist '>))
(setq llp (list (nth 0 lowleftpointxlist) (nth 0 lowleftpointylist)))
(setq urp (list (nth 0 uprightpointxlist) (nth 0 uprightpointylist)))
)
(defun rtd (a)(/ (* a 180.0) pi))
(defun dtr(a)(* pi(/ a 180.0)))
감사합니다.
감사합니다.