비밀번호를 잊으셨나요?

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

계정이 있나요? 로그인

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 113549
다음
진행 중
Ban15
Ban15Lv.0
등록일: 2022-01-032022-01-03T00:27:56+09:00 2022-01-03T00:27:56+09:00카테고리: AutoCAD & CADian

(command “~~~”)로 만든 객체 선택 리습 질문 있습니다.

특정 선으로부터 일정 거리를 떨어진 지점에 선을 만들고 이 선까지 연장 혹은 트림 하는 리습을 제작 중입니다.  

지금 상태에서는 (command “offset” )을 통해 만들어진 객체를 한번 더 클릭해줘야 하는 불편함이 있습니다.
(원래는 xline을 사용하고 싶었으나 기준선이 pline인 경우 작동을 안해 offset을 사용하고 있습니다.)
이 객체를 따로 선택 안하고 (ssget) 등의 구문을 이용해 바로 사용하고 싶습니다.
방법 아시는 분 계시면 알려주세요 🙂

아래는 해당 리습이고 인터넷에서 얻은 리습과 결합해 만들고 있습니다. 
;————————————————————————-
(defun c:e2 (/ a ds p1 p2 )
(vl-load-com)
(setvar “CMDECHO” 0)
(command “undo” “begin”)
(setq a (car (entsel “nBase Line: “)))
(initget 128)
(setq p2 (getpoint “nDistance : “))
(cond 
((= (type p2) ‘LIST)
(setq p1 (vlax-curve-getClosestPointTo a p2))
(setq ds(distance p1 p2))
(command “offset” ds a p2 “”)
(princ ds)
)
((= (type p2) ‘STR)
(setq ds(atof p2))
(command “offset” ds a “\” “”)
)
(t)
)
(e3)
(command “undo” “end”)
(princ)
)
;;; Touch.LSP                                              *
;;; Small routine to align endpoints of lines to an edge.  *
;;; The edge have to be a line.                            *
;;; The routine works by calculating the point of inter-   *
;;; section and change the nearest endpoint to that point  *
;;; 2001 Stig Madsen, no rights reserved                   *
;;; modified by qjchen, the edge line can be line or polyline *
;
;GREAT for PROJECTING LINES FOR ELEVATIONS !!!!!!!!!!!
;
(defun e3 (/ cmd ent entl spt ept sset a lent lentl lspt lept lint)
  (vl-load-com)
  (while (not ent)
    (setq ent (car (entsel “nSelect edge line: “)))
    (if ent
      (progn
(setq entl (entget ent))
      )
    )
  )
  (if ent
    (progn
      (redraw ent 3)
      (prompt “nSelect lines to touch edge: “)
      (setq sset (ssget ‘((0 . “LINE”)))
    a 0
      )
      (if sset
(repeat (sslength sset)
  (setq lentl (entget (setq lent (ssname sset a)))
lspt (cdr (assoc 10 lentl))
lept (cdr (assoc 11 lentl))
  )
  (setq entttt (ssname sset a))
  (setq lint (nth 0 (x_intlst ent entttt acExtendOtherEntity)))
  (if lint
    (progn
      (if (< (distance lint lspt) (distance lint lept))
(entmod (subst
  (cons 10 lint)
  (assoc 10 lentl)
  lentl
)
)
(entmod (subst
  (cons 11 lint)
  (assoc 11 lentl)
  lentl
)
)
      )
    )
  )
  (setq a (1+ a))
)
(princ “nNo objects found”)
      )
      (redraw ent 4)
    )
    (princ “nNo edge selected”)
  )
  (princ)
)
;;; by kuangdao at xdcad
(defun x_intlst (obj1 obj2 param / intlst1 intlst2 ptlst)
  (if (= ‘ENAME (type obj1))
    (setq obj1 (vlax-ename->vla-object obj1))
  )
  (if (= ‘ENAME (type obj2))
    (setq obj2 (vlax-ename->vla-object obj2))
  )
  (setq intlst1 (vlax-variant-value (vla-intersectwith obj1 obj2 param)))
  (if (< 0 (vlax-safearray-get-u-bound intlst1 1))
    (progn
      (setq intlst2 (vlax-safearray->list intlst1))
      (while (> (length intlst2) 0)
(setq ptlst (cons (list (car intlst2) (cadr intlst2) (caddr intlst2))
  ptlst
    )
      intlst2 (cdddr intlst2)
)
      )
    )
  )
  ptlst
)
;————————————————————————-
  • 0
  • 4 4 답변
  • 48 조회
공유
  • Facebook

    관련 있는 질문들

    • 오토캐드 2016 맞춤법 검사기 끄는 방법 아시나요
    • 캐드에서 여러도면을 한번에 배치출력 할 수 있는 방법이 있나요
    • step파일, iges 파일을 열어서 볼 수 있는 방법이 있을까요?
    • 캐디안으로 도면을 열때 한글이 ???로 표시되는 문제

    4 답변

    • 작성 순
    • 최신 순
    • 공감 순
    1. aalan
    2. Ban15 Lv.0
      2022-01-07T15:24:39+09:00답변 등록 답변 등록 일시 2022-01-07 3:24 pm

      찾은 리습이 위 리습 아래쪽에 사용된 리습인데 아쉬운 점이 있어서 수정해보려합니다 ㅎㅎ

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    3. Ban15 Lv.0
      2022-01-07T15:23:51+09:00답변 등록 답변 등록 일시 2022-01-07 3:23 pm

      감사합니다. 한번 써보도록 할게요!

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    4. 수야12 Lv.21
      2022-01-03T11:57:36+09:00답변 등록 답변 등록 일시 2022-01-03 11:57 am

      entlast 함수를 활용하세요 ~!! 

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    5. 김보리 Lv.11
      2022-01-03T08:54:34+09:00답변 등록 답변 등록 일시 2022-01-03 8:54 am

      전에 구글에서 임의의 선을 그은 후 그 선에 맞춰 연장/트림하는 리습을 봤었습니다.. 소스가 공개된

      • 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