본문 바로가기
autocad

Extract Attributes

by kmlab 2026. 6. 23.
 

Attribute Extraction

One of your readers asked about a attribute extract program Here is one for you. Have a great day Peter Jamtgaard ---------------------------- ;CODING STARTS HERE (defun C:Get_Attributes (/ ATTLIST ELST ENT ETYP ) (setq ENT (car (entsel "\nSelect block: ")

www.afralisp.net

;CODING STARTS HERE
(defun C:Get_Attributes (/ ATTLIST ELST ENT ETYP )
(setq ENT (car (entsel "\nSelect block: "))
ELST (entget ENT)
ETYP (cdr (assoc 0 ELST))
)
(if (= ETYP "INSERT")
(if (assoc 66 ELST)
(princ (setq ATTLIST (atts_to_list ENT)))
(princ "\nThat block doesn't have attributes: ")
)
(princ "\nThat is not a block! ")
)
(prin1)
)
(defun ATTS_TO_LIST (ENAM)
(setq X (vlax-ename->vla-object ENAM))
(if (= (cdr (assoc 66 (entget ENAM))) 1)
(progn
(mapcar '(lambda (X) (cons (vla-get-tagstring X)
(vla-get-textstring X)
)
)
(vlax-safearray->list
(variant-value
(vla-getattributes
(vlax-ename->vla-object ENAM)
)
)
)
)
)
)
)
;CODING ENDS HERE

 

(setq ATTLIST (atts_to_list (car (entsel))))
(setq ATTLIST (atts_to_list (ssname (ssget) 0)))
;;result
((프로젝트번호 . 23025D) (프로젝트명 . Y-1 Ph2 Project) (도면번호 . YI-Y01P2C01-AR-A70-000001) (도면명 . 잡상세도-1\P(TRENCH-1)) (날짜 . ) (축척A1 . 5) (축척A3 . 10) (REV.NO . ) (제작사 . SK 에코플랜트))(("프로젝트번호" . "23025D") ("프로젝트명" . "Y-1 Ph2 Project") ("도면번호" . "YI-Y01P2C01-AR-A70-000001") ("도면명" . "잡상세도-1\\P(TRENCH-1)") ("날짜" . "") ("축척A1" . "5") ("축척A3" . "10") ("REV.NO" . "") ("제작사" . "SK 에코플랜트"))

반응형

'autocad' 카테고리의 다른 글

열린 도면 모두 저장하기  (0) 2026.06.24
XREF 도각 경로를 새로 업데이트 하기  (0) 2026.06.24
PPT의 벡터 선을 캐드로 가져오기  (0) 2026.06.15
Pick Point 좌표 표시  (0) 2026.05.28
Deleting a selection set  (0) 2026.05.27