프로그램
캐드 분류

리습 새내기입니다. 잘 안돼서 질문 드립니다.

컨텐츠 정보

본문

; 일괄 스케일 적용

—————————————–

(defun c:scv (/ ss pt p1 p2 p3 d1 d2)
 (setvar "cmdecho" 0)
  (setq ss (ssget))
  (setq pt (assoc 62 (entget (ssname ss)))))
  (setq p1 (getpoint "n first :"))
  (setq p2 (getpoint "n second :"))
  (setq p3 (getpoint "n third :"))
  (setq d1 (distance p1 p2))
  (setq d2 (distance p1 p3))
  (commnad "scale" ss "" pt "r" "" d1 d2)
 (prin1)
)

이렇게 작성해서 적용해보려 했는데 인수가 너무 작습니다. 라는 오류가 뜹니다.
다운받아 쓰던 리습들 짜맞춰서 만들어봤는데 역시 안되네요.
이제 막 공부 시작한 새내기입니다… 가르침 부탁드리겠습니다.
이 외로 캐드 내에서 (setq ss (ssget))을 쳐서 selection set을 작성하였는데
move등의 명령어를 치고 ss를 치면 유효하지 않은 선택이라고 뜨는점에 대해서도
조언 부탁드리겠습니다.

관련자료

댓글 7

수평조절목님의 댓글

우와… 눈이 핑핑 돌아가네요…

만들어주신것 감사하게 사용하겠습니다!

bee누님의 댓글

어떤걸 원하시는지 모르겠지만 좌측하단 선택해서 기준점 잡아주는걸로 만들어봤어요

수평조절목님의 댓글

수야님

다른글에 답변해주신것 보고 여태 리습을 수정해보기도 해서 답글 달아주신게 더 감사합니다.

penpen07님의 댓글

(ssname ss 0)은 제일 먼저 생성된 객체가 아니라, 제일 먼저 선택된 객체입니다.

수야12님의 댓글

62번은 색상코드 입니다  선택한 객체들이 line 이라는 조건에서 

(setq pt(cdr(assoc 10(entget(ssname ss 0)))) 선택셋트중 제일 먼저 생성된(선택된이 아님니다..)
여분필드1 여분필드2 여분필드3
전체 64 / 1 페이지
번호
제목
이름
알림 0