・異なる編集セッションで特定の図形オブジェクトの図形名を取得
(entsel) や (ssname)
等で返される図形名は、編集セッションによって変わる可能性があります。
つまり、図面を開きなおした場合、図形名が変わってしまうということです。
また、この図形名というのは、TEXTファイル等に書き出した場合、単なる文字列となってしまい、データタイプ:図形名
として認識させることが困難になってしまいます。
ハンドルを使うことで、こういった不具合を解消することができます。
ハンドルは異なる編集セッションにおいても、常に不変です。
また、ハンドルは単なる文字データですので、TEXTファイル等に書き出しても、簡単に読み取ることができます。
ハンドルを取得するには
ハンドルはエンティティーデータのグループコード5 の値です。
(setq str_handl (cdr (assoc 5 (entget (car (entsel)))))) のようにして取り出せます。
ハンドルから図形名を取得するには
( handent str_handl ) のように (handent) を使って取得します。
コマンド: (setq str_handl (cdr (assoc 5 (entget (car (entsel))))))
オブジェクトを選択: "156B"
コマンド: (handent str_handl)
<図形名: 400d5ed8>