• 회원가입
  • |
  • 로그인
  • |
  • 장바구니
  • News
    뉴스 신제품 신간 Culture & Life
  • 강좌/특집
    특집 강좌 자료창고 갤러리
  • 리뷰
    리뷰
  • 매거진
    목차 및 부록보기 잡지 세션별 성격 뉴스레터 정기구독안내 정기구독하기 단행본 및 기타 구입
  • 행사/이벤트
    행사 전체보기 캐드앤그래픽스 행사
  • CNG TV
    방송리스트 방송 다시보기 공지사항
  • 커뮤니티
    업체홍보 공지사항 설문조사 자유게시판 Q&A게시판 구인구직/학원소식
  • 디렉토리
    디렉토리 전체보기 소프트웨어 공급업체 하드웨어 공급업체 기계관련 서비스 건축관련 업체 및 서비스 교육기관/학원 관련DB 추천 사이트
  • 회사소개
    회사소개 회사연혁 출판사업부 광고안내 제휴 및 협력제안 회사조직 및 연락처 오시는길
  • 고객지원센터
    고객지원 Q&A 이메일 문의 기사제보 및 기고 개인정보 취급방침 기타 결제 업체등록결제
  • 쇼핑몰
오토캐드 스마트 유저되는 방법 (21) 完
2017-03-03 11,476 38
LISP 강좌 Ⅳ

맹영완
E-mail | tajideux@naver.com
블로그 | blog.naver.com/tajideux

현재 한미글로벌에서 일하고 있다. 미국 토목 기술사 P.E.와 대한민국 토목기사이며, 프로젝트 관리 전문가(PMP)이다. 국민대학교 토목환경공학과를 졸업하고, AutoCAD 파워유저 1기를 수행했으며, 오토캐드 토목 3D 로컬라이제이션 SME, 오토캐드 베타 테스터로 활동 중이다. 저서로는 <오토캐드 파워유저 맹영완과 함께하는 Design, Engineer & AutoCAD>가 있다.

지난 호에서 다뤘던 L I S P 을 본격적으로 활용해보자. Sample2.lsp 파일의 내용을 다시 가져와보자. 이번 호에서 사용된 예제 파일은 캐드앤그래픽스 홈페이지(http://www.cadgraphics.co.kr)의 자료창고에서 받을 수 있다.

(defun c:eee (/ a b c d n)
(setq a (entget (car (entsel "\nSelect Only one Polyline : ")))
(setq n 0)
(setq b (length a))
(setq c '())
(while (< n b)
(setq d (nth n a))
(if (= 10 (nth 0 d))
p(rogn
(setq c (append c (list (cdr d))))
(setq n (1+ n))
) ; ned of 1st progn
p(rogn
(setq n (1+ n))
) ; ned of 2nd progn
) ; end of if
) ; end of while
(princ c)
) ; end of defun

이 LISP을 사용해 보기 위해 예제를 하나 그려보자. 이왕이면 필자가 그린 것과 동일하게 작도해 보자.

¸Ϳµ¿Ï (1).jpg


그림 1. 예제 도면 작도

다 그렸다면 에디터로 돌아가서 ctrl+alt+E를 이용해 불러온 다음 다시 명령행에 명령어인 eee를 입력해서 실행해 보자. 그리고 마
우스로 위의 polyline을 선택하면 <그림 2>와 같은 메시지를 볼 수 있을 것이다.

¸Ϳµ¿Ï (2).jpg


그림 2. 명령행에 결과 출력

그러니까 앞에서 우리가 해석한 것과 같이 폴리라인(polyline)의 정점 리스트를 추출하는 구문인 것이다. 눈치 빠른 사용자들은 여
기서 응용의 유혹을 느낀 사람도 있을 것이다. 이것 저것 테스트해보고 싶은 마음이 드는 사람들이 많을 것이다. 그럼 같이 해보자.
첫 번째, sample1 해석 당시 그림과 도표까지 그려가며 열심히 설명했던 객체 선택 방법을 사용하면 안될까? 당연히 된다. 위의 프
로그램을 실행하고 마우스로 폴리라인 아래에 그렸던 라인(line)을 선택하거나 빈 공간을 선택하게 되면 당연히 에러가 나게 될 것이다. 따라서 사용자의 실수를 원천적으로 봉쇄하기 위한 수단으로 사용될 수 있을 것이다. 다음과 같이 프로그램을 수정한 후 다시
프로그램을 실행시켜 보면 무엇이 달라졌는지를 분명히 확인할 수 가 있을 것이다.


기사 상세 내용은 PDF로 제공됩니다.
 

맹영완 tajideux@naver.com


출처 : CAD&Graphics 2017년 03월호

포인트 : 1,000P (정기구독자 무료 다운로드)

© 캐드앤그래픽스 무단전재 및 재배포금지, 기사 게재 희망시 당사 문의
  • kakao

댓글 0

로그인 후 댓글을 달수있습니다
등록된 코멘트가 없습니다.