배치에서 뷰포트 작업시 궁금한 점입니다.
뷰포트를 설정하고 move를 하면 뷰포트 내부의 모습은 유지되고 뷰포트 사각형이 이동하잖아요.
뷰포트와 연동하여 내부도 같이 이동 가능하게 할 수 있나요?
예를 들어 현재 뷰포트는 1-1 도곽을 비추는데 제가 move로 오른쪽으로 이동하면
옆에 있는 1-2 도곽이 보이게 하는 방법이요.
따로 설정같은 것에서 조정할 수 있나요?
예제 도면 첨부합니다.
비밀번호를 잊으셨나요? 비밀번호를 재설정하려면 이메일 주소를 입력해주세요.
해당 질문을 신고하는 이유를 간단히 입력해주세요.
해당 답변을 신고하는 이유를 간단히 입력해주세요.
해당 유저를 신고하는 이유를 간단히 입력해주세요.
제가 고수는 아니라서 다른 방법이 있을지는 모르겠습니다만 오토캐드 기능상 님이 원하시는 방법은 없는것 같습니다.
수고스럽더라도 배치창에서 하나하나 설정해주시야 할것 같습니다.
배치창에서 뷰포트내부로 들어가셔서 대각선으로 모서리 2점을 오스냅으로 엔드포인트을 잡으시면 쉽게 설정될것 같습니다.
그렇군요,, 안그래도 그렇게 하고 있는데 복사해서 일일이 하는게 여간 시간잡는 일이 아니라서요.
배치에서 모든 행동?은 모델뷰에서 연관성이 제로 입니다.
이것은 가장 기본인데..
우짜쓰까나
오토캐드에서는 리습이라는 것을 제공하므로서 조립식장난감을 준것입니다.
레고블록 조각의 형태는 못바꾸지만 배치하고 가지고 노는것은 아이들 마음대로 입니다.
돌드럼님도 짧은 코드를 몇번 바꾸어 보신 것으로 알고 있습니다.
자신이 손으로 하는 작업을 리습으로 옮기는 방법에 익숙해 지시면
간단한 반복 작업들은 편해집니다.
리습을 구현하는 것은 잘못된 방법을 선택하는 것이 아니면 안되는건 거의 없습니다.
손으로 작업할때 방법을 구식 코드로 구현한 것이니 참조하시기 바랍니다.
(defun c:vp_join(/ ss ent_ ent_list p_cen m_cen p_high sc n p_ce p_h ct pd_xy md_xy m_xy)
(prompt “기준VIEWPORT창과 선택한 VIEWPORT창을 위치참조하여 동일한 줌으로 설정”)
(command “pspace”)
(prompt “기준 VIEWPORT를 선택:”)
(setq ss (ssget “+.:S” ‘((0 . “VIEWPORT”)))) ; VIEWPORT 하나만 선택
(setq ent_ (ssname ss 0))
(setq ent_list (entget ent_))
(setq p_cen (cdr (assoc 10 ent_list))) ; 기준창 중심
(setq m_cen (cdr (assoc 12 ent_list))) ; 기준줌 중심
(setq p_high (cdr (assoc 41 ent_list))) ; 기준창 높이
(setq m_high (cdr (assoc 45 ent_list))) ; 기준줌 높이
(setq sc (/ p_high m_high)) ; 기준줌 스케일
(prompt “동기화시킬 VIEWPORT를 선택:”)
(setq ss (ssget ‘((0 . “VIEWPORT”)))) ; VIEWPORT 선택
(command “mspace”)
(setq n 0)
(while (setq ent_ (ssname ss n))
(setq ent_list (entget ent_))
(setq p_ce (cdr (assoc 10 ent_list))) ; 변경창 중심
(setq p_h (cdr (assoc 41 ent_list))) ; 변경창 높이
(setq ct (cdr (assoc 69 ent_list))) ; 변경창 번호
(setq pd_xy (mapcar ‘- p_ce p_cen)) ; 기준창과 변경창 중심거리
(setq md_xy (mapcar ‘(lambda (x) (/ x sc)) pd_xy ) ) ; 창의거리를 실제거리로 환산
(setq m_xy (mapcar ‘+ m_cen md_xy)) ; 화면중심
(setq m_h (/ p_h sc) ) ; 창의 높이를 실제높이로 환산
(setvar “cvport” ct) ; 변경창으로 이동
(command “zoom” “c” m_xy m_h) ;중심 이동 기준줌크기로 변경
(setq n (1+ n))
);while
(command “pspace”)
);defun
추가댓글 달아주신 것을 이제서야 확인했네요.