AutoCAD/Lisp

Entity 선택 함수

Jaybi 2021. 4. 7. 10:58

1. entsel

(1) 기능

뒤에 오는 ""안의 문자열을 출력하며, 한번에 하나의 Entity를 선택할 수 있습니다.

선택 후 Entsel은 자동으로 종료되며, ""안의 문자열을 생략할 경우 "Select object:"가 자동으로 출력됩니다.

(2) 사용법

(entsel  "Message")

(3) 예

(setq  a  (entsel "\n Select Object : "))

(<Entity name: 3310500> (196.153 148.687 0.0))

 

2. ssget

(1) 기능

entsel와는 다르게 함수 뒤에 ""를 사용하여 Message를 사용할 수 없으며, 한번에 하나 이상의 Entity를 선택할 수 있습니다.

또한, 선택 Mode를 옵션에 따라서 Window, Crossing, Last의 세가지 선택이 가능합니다.

선택 모드 옵션을 생략할 수 있으며, 실행 후("Select object:")에도 옵션을 주는 것이 가능합니다.

한 개 이상의 Entity를 선택할 수 있으므로, 자동으로 종료되지 않으며 마우스 오른쪽 버튼이나 Enter를 통해서 사용자가 종료해야 합니다.

Mode

설 명

C

 걸치기 선택

CP

다각형 선택(지정된 다각형의 내부 및 걸쳐 있는 모든 객체)

F

울타리 선택

I

묵시적 선택( PICKFIRST가 유효한 동안 선택된 객체)

L

데이터베이스에 추가된 마지막 가시적 객체

P

작성된 마지막 선택 세트

W

Window 선택

WP

WPolygon (지정된 다각형 내부의 모든 객체)

X

전체 데이터베이스. X 선택 방법을 지정하고 filter-list를 제공하지 않으면, ssget은 꺼져 있거나, 동결 또는 가시 화면에서 벗어나 있는 도면층의 모든 요소를 포함하여 데이터베이스의 모든 요소를 선택합니다.

:E

커서의 객체 선택점 내의 모든 것

:N

ssnamex를 호출하여 ssget 작업 중에 선택된 요소에 대한 변환 행렬 및 컨테이너 블록에 대한 추가 정보를 얻을 수 있습니다. 이 추가 정보는 Window, 걸치기 및 점 선택과 같은 그래픽적 선택 방법을 통하여 선택된 요소에 대해서만 이용할 수 있습니다.

다른 객체 선택 방법과 달리, :N은 선택 세트 내의 동일한 요소 이름을 가진 다중 요소를 리턴할 수도 있습니다. 예를 들어, BlockReference, PolygonMesh, 또는 구식 유형의 폴리선과 같은 복잡한 요소의 하위 요소를 선택하는 경우, ssget은 하위 요소가 이미 선택되었는지 결정할 때 이 하위 요소를 검색합니다. 그러나, 실제로 ssget은 주 요소(BlockReference, PolygonMesh, 등)를 선택 세트에 추가합니다. 이 결과는 선택 세트 내의 동일한 요소 이름을 가진 다중 요소가 될 수 있습니다. (각각은 ssnamex가 보고할 다른 하위 요소 정보를 갖게 됩니다)

:S

단일 선택만 허용함

 

객체 선택 방법을 지정하는 문자열. 적합한 선택 방법은 다음과 같습니다.

 

 

 

 

 

 

 

 

(2) 사용법

(ssget)

(ssget  Mode  Point-1 Point-2)

* Point-1, Point-2는 생략 가능

(3) 예

  (setq a (ssget))

 

  (setq b (ssget "w"))

 

  (setq c (ssget))

  Command: (setq c (ssget))

  Select objects: c

  First corner:

  Other corner:  2 found

 

 

3. ssget "x" 

 

 

4. entlast

(1) 기능

도면에서 가장 마지막에 생성된 요소(Entity)를 선택합니다.

""안의 Message는 사용할 수 없으며, Entity를 선택한 후 자동으로 Entity의 이름을 출력합니다.

사용법이 간단하여, 개인적으로 가장 즐겨 쓰는  엔티티 선택함수입니다.

(2) 사용법

(entlast)

(3) 예

(setq a (entlast))

 

 

5) sslength

6) ssname

7) entget

8) grtext

9) entnext

 

출처 : www.lispcenter.net/Lisp/Lisp_19.htm