Graebert Japan ヘルプセンター

9/17開催 | 無料オンラインイベント「Graebert neXt Japan 2026」

  1. Home
  2. /
  3. FAQ
  4. /
  5. ARES LISP ガイド
  6. /
  7. レイアウトを調べる

レイアウトを調べる

ディクショナリオブジェクトに格納されている非図形オブジェクトの検索とリストの方法を紹介します。

図形リストで調べるには

レイアウトはディクショナリに保存されているので、dictsearch 関数や、dictnext 関数を使います。

図面の名前付きオブジェクトを管理するディクショナリは namedobjdict 関数でアクセスできます。

(setq root (entget (namedobjdict)))

レイアウトの一覧は、キー値 ACAD_LAYOUT のディクショナリを見るとわかります。

(setq dic (dictsearch (namedobjdict) “ACAD_LAYOUT”))

特定のディクショナリを検索するには次のようになります。

(setq obj (dictsearch (cdr (car dic)) “シート1”))

dictseach 関数が返す図形リストはすべてのプロパティを含む図形リストなので、そのままプロパティの取得や修正に使うことができます。

dictnext 関数は2つパラメータが必要で、最初はディクショナリの図形名、2番目は T は巻き戻しをします。nil を指定すると次のデータを取得します。戻り値はすべてのプロパティを含む図形リストか nil です。

オートメーションで調べるには

レイアウト(layout)にはレイアウト コレクション(layouts)があります。レイアウト名で取得するには Item メソッドを使います。vlax-for 関数を使えば、コレクションからレイアウトを一つずつ取得できます。

: (setq dic (vla-get-Layouts doc))

 #<VLA-OBJECT IAcadLayouts 6c549c80>

: (setq obj (vla-item dic “シート2”))

 #<VLA-OBJECT IAcadLayout 6c55f380>

: (vlax-dump-object obj)

オートメーションでコレクションの内容をすべて取得するには、vlax-for 関数を使います。

(vlax-for obj dic

(princ (strcat (vla-get-name obj) “\n”))

)

結果は次のようになります。

Model

シート1

シート2

ディクショナリに保存されているオブジェクトは他に、グループ 、イメージ参照定義、マルチラインスタイル、表スタイル、マルチ引出線スタイル、印刷設定、印刷スタイル、マテリアル、表示スタイル、注釈尺度、色名など多数あります。


画層、線種などを調べるに戻る プログラムをロードするに進む

短縮URL: https://jp-help.graebert.com/?p=38987

ARES CAD 活用リソース

ARES Commander 2027 リリース

ARES の最新バージョン ARES 2027 がリリースされました。ARES 2027 は、AI・自 動化・BIM・クラウドという、CADの各領域を強化した最新版です。

DWG図面をリンク1つで共有

表示専用リンクを使えば、DWG図面をリンクだけで安全に共有できます。
CADソフトを持っていない相手でもブラウザから閲覧し、コメントやマークアップを追加できます。

DWG図面を無料でオンライン表示

ARES Kudoの無料ビューアーを使えば、DWG図面をブラウザから簡単に表示できます。
インストール不要で図面の確認や計測ができ、コメントやマークアップで共同作業も可能です。