異尺度注釈図形が持っている尺度(文字列)を表示する
;;;
;;; LISTANNOSCALE.LSP
;;;
(defun C:LISTANNOSCALE ( / el id f)
(setq f T)
;異尺度注釈図形を選択
(if (setq el (entget (car (entsel "異尺度注釈を選択:"))))
;拡張ディクショナリを選択
(if (setq id (cdr (assoc 360 el)))
;AcDbContextDataManagerデータを選択
(if (setq id (cdr (assoc -1 (dictsearch id "AcDbContextDataManager"))))
;ACDBANNOTATIONSCALESデータを選択
(if (setq id (cdr (assoc -1 (dictsearch id "ACDB_ANNOTATIONSCALES"))))
;オブジェクトコンテキストデータを取得
(while (setq el (dictnext id f))
(if (setq sl (entget (cdr (assoc 340 el))))
(princ (strcat (cdr (assoc 300 sl)) ","))
(princ "\nSCALEがありません")
)
(setq f nil)
)
(princ "\nAcDbObjectContextDataがありません")
)
(princ "\nAcDbContextDataManagerがありません")
)
(princ "\n拡張ディクショナリがありません")
)
(princ "\n図形選択エラー")
)
(princ)
)