エンティティ|図形の情報を取得・変更する
要点
図形の名前を取得し、entgetでDXFデータを読み取ります。色の変更とentmodの流れを、小さな図形で順番に確認します。
始める前に
先に確認すると読み進めやすい記事:
確認の手順
- 練習用図面に線を1本描き、対象を選びます。
- entgetで取得したリストの図形種別と画層を確認します。
- 掲載例で色のデータを変更し、entmodで反映します。
- 画面の色とプロパティを照合し、削除の例は別の練習図形で試します。
エンティティとは?
AutoCADにおける「エンティティ(Entity)」とは、図面内の個々の図形要素のことです。
線、円、ポリライン、テキスト、寸法など、すべてがエンティティとして扱われます。
エンティティには以下のような特徴があります:
- 一意の「図形名(Entity Name)」が割り当てられている
- 属性情報(レイヤー、色、線種など)を持っている
- AutoLISPで取得・編集・削除・作成が可能
エンティティの構造を覗いてみよう
AutoLISPでは、エンティティの情報を「Dxfコード」と呼ばれる形式で取得します。
以下は、線分(LINE)のエンティティ情報の例です:
(entget (car (entsel)))返ってくるリストはこんな感じ:
((0 . "LINE") (8 . "0") (10 0.0 0.0 0.0) (11 100.0 100.0 0.0) (62 . 256))| DXFコード | 意味 |
|---|---|
| 0 | エンティティの種類(LINEなど) |
| 8 | レイヤー名 |
| 10, 11 | 始点・終点座標 |
| 62 | 色番号 |
エンティティ操作に使うAutoLISP関数
| 関数名 | 目的 |
|---|---|
entsel | ユーザーにエンティティ選択を促す |
entget | エンティティ情報を取得する |
entmod | エンティティ情報を変更する |
entdel | エンティティを削除する |
entmake | 新しいエンティティを作成する |
entnext | 次のエンティティを取得する |
entlast | 最後に作成されたエンティティを取得 |
assoc | DXFコードから特定情報を抽出する |
チュートリアル:エンティティの色を変更する
ステップ1:エンティティを選択
(setq ename (car (entsel "\n図形を選択してください: ")))ステップ2:情報を取得
(setq edata (entget ename))ステップ3:色を赤(1)に変更
(setq edata (subst (cons 62 1) (assoc 62 edata) edata))ステップ4:変更を反映
(entmod edata)エンティティの削除と復元
削除
(entdel ename)※削除されたエンティティは、図面を閉じる前なら復元可能です。
復元
(entdel ename) ; 再度呼び出すことで復元まとめ:図形操作の要点
エンティティは、AutoCADの図形操作の“核”です。
AutoLISPを使えば、エンティティの取得・編集・作成・削除が自在に行えます。
このチュートリアルを通じて、図面の自動化や効率化の第一歩を踏み出しましょう!
結果の確認
選択した図形だけが変更されたか確認します。DXFデータに必要なコードがあるか、選択がnilになっていないかも確認してください。
参照資料
対象環境・動作確認
AutoLISP対応環境(関数・OSごとの対応は要確認)。内容更新:2026年10月5日。掲載コードのCAD実機検証は未実施です。図形を変更する例は、コピーした図面で結果を確認してください。