비밀번호를 잊으셨나요?

비밀번호를 잊으셨나요? 비밀번호를 재설정하려면 이메일 주소를 입력해주세요.

계정이 있나요? 로그인

You must login to ask a question.

비밀번호를 잊으셨나요?

아직 계정이 없으신가요? 회원가입 하기

해당 질문을 신고하는 이유를 간단히 입력해주세요.

해당 답변을 신고하는 이유를 간단히 입력해주세요.

해당 유저를 신고하는 이유를 간단히 입력해주세요.

로그인회원가입

고캐드 – 캐드(CAD) 정보의 중심

고캐드 – 캐드(CAD) 정보의 중심 Logo 고캐드 – 캐드(CAD) 정보의 중심 Logo

고캐드 – 캐드(CAD) 정보의 중심 Navigation

  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
검색
질문하기

Mobile menu

닫기
질문하기
  • 홈
  • 카테고리
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 투표
  • 커뮤니티 그룹
  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
홈/ 질문/Q 112355
다음
진행 중
바라떼
바라떼Lv.0
등록일: 2020-05-182020-05-18T14:57:45+09:00 2020-05-18T14:57:45+09:00카테고리: AutoCAD & CADian

옵션 기능이 추가된 Move 명령어(리습)를 만들고 싶습니다.

리습관련 하여 질문드립니다.

현재 기존의 Move 명령어를 아예 대체할 리습을 만들고자 합니다.
기존 Move기능에 옵션에 따라 X축, Y축으로만 움직이게 하고 싶습니다.
(defun C:mm (/ a b option sel)
   (setvar “cmdecho” 0)
   (initget “X Y T”)
   (setq a (entsel “nMOVE 객체 선택 또는 [x축(X)/y축(Y)/중간점(T)]:”))
   (if (= a “X”)
       (progn
           (setq ss (ssget))
           (command “._move” ss “” pause “.y” “@” pause)
           (setq ss nil)
       )
   )
   (if (= a “Y”)
       (progn
           (setq ss (ssget))
           (command “._move” ss “” pause “.x” “@” pause)
           (setq ss nil)
       )
   )
   (if (= a “T”)
       (progn
           (setq ss (ssget))
           (command “._move” ss “” pause “_m2p” pause)
           (setq ss nil)
       )
   )    
   (if (and (/= a nil)(/= a “X”)(/= a “Y”)(/= a “T”))
       (progn
           (setq SEL (ssadd (car a) SEL))
           (command “_select” SEL pause)
           (setq SEL (ssget “_P”))
       )
   )
   (if (= a nil)
       (progn
               (command “_select” “_BOX” (cadr (grread T)) pause)
               (setq ss (ssget “_P”))
               (command “._move” ss “”)
       )
   )
)
현재 까지 작성한 리습인데 명령어를 먼저 입력하고 객체를 선택하면 문제가 없는데
객체를 선택한 상태에서 명령어를 입력하면 문제가 발생합니다.
명령어를 입력 후 객체 선택, 이후 포인트1, 2를 순서대로 찍으면
기존의 Move 명령어와 동일하게 작동합니다.
하지만 객체를 선택한 상태에서 명령어를 입력하고 포인트를 찍으면
객체를 다시 선택하라고 나옵니다. (X, Y 등의 옵션을 입력하면 정상 작동합니다.)
이 부분 수정을 도와주시거나 팁만 주셔도 감사하겠습니다.
  • 0
  • 2 2 답변
  • 89 조회
공유
  • Facebook

    관련 있는 질문들

    • 캐드 기계설계 보조 프로그램을 찾고있습니다.
    • 오토리습 open함수 질문
    • 3D 작업중 화면이동시 좌표계가 계속 돌아감
    • 선배님들 덕트 엘보 작성 리습좀 봐주세요

    2 답변

    • 작성 순
    • 최신 순
    • 공감 순
    1. aalan
    2. 바라떼 Lv.0
      2020-05-19T15:17:34+09:00답변 등록 답변 등록 일시 2020-05-19 3:17 pm
      X나 Y 옵션은 잘 되는데 먼저 선택한 후 명령어 넣고 클릭하면 Move가 안되네요

      그리고 굳이 이런 짓을 하는 이유는 원래 MX, MY로 사용하다가

      M이 익숙하다보니 M을 입력했다가 취소하고 다시 하게 되어서 그렇습니다…ㅠ
      그냥 빈 곳에서 가로, 세로로만 이동하는건 직교모드로 가능한데
      A에서 B까지 지점을 찍고 거기서 가로나 세로의 거리만 움직이려면 리습을 이용하거나
      점필터를 이용해야하는데 리습으로 해결하려니 복잡하네요..
      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    3. 수야12 Lv.21
      2020-05-18T16:23:19+09:00답변 등록 답변 등록 일시 2020-05-18 4:23 pm

      리습 잘돼는 되용?? 명령어를 먼저 하든 선택후 명령이든 잘됩니다  

      그런데 구지 이걸 리습으로 만들 필요 있습니까?? 그냥 쉬프트 이동이 작업 속도가 더 빠를듯 한데요
      보통 리습 사용 이유가 한 작업공정이라도 줄이기 위해서 인데 ..명령어 누르고 옵션 선택하고 하면 오히려 한공정 늘어나는거 아닌가요??  아니면 아예 저 같은 경우는 여러개의 명령을 만들어 사용하겠습니다 
      앞두자 mm은 사용하면서 x는 mmx y 는 mmy  처럼 
      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter

    Sidebar

    질문하기
    공지사항

    • AI CAD의 미래! 캐디안 2025 1+1 프로모션 안내 2025-05-14

    Adv 234x60

    aalan

    Adv 234x60

    aalan

    Adv 120x600

    aalan

    Explore

    • 홈
    • 카테고리
      • AutoCAD & CADian
      • Inventor & Solidworks
      • Revit & ArchiCAD
      • 자유질문
      • 기타
    • 투표
    • 커뮤니티 그룹
    aalan

    Footer

    Support

    • 회사 및 서비스 소개
    • 자주 묻는 질문
    • 문의하기

    Guide

    • 제휴/협업 안내
    • 광고 서비스 안내

    Policy

    • 서비스 이용약관
    • 개인정보 처리방침
    • 광고성 정보 수신 동의

    Contents

    • 고밍스토리
    • 리습 시리즈

    정소프트 | 사업자등록번호 : 677-40-00198 | 대표 : 정은숙 | 이메일 : gocad.manager@gmail.com
    주소 : 서울특별시 강서구 양천로 400-12, 6층 614,615,617호(등촌동, 더리브골드타워)
    Copyright. 2012-2024 GOCAD All rights reserved