例: AutoCAD グループにアクセスする(AutoLISP)

この例では、グループに含まれている図形にアクセスする方法の 1 つを示します。

この例では、G1 という名前のグループが現在の図面に存在するものと仮定しています。

(setq objdict (namedobjdict))
(setq grpdict (dictsearch objdict "ACAD_GROUP"))

これは、変数 grpdict に ACAD_GROUP ディクショナリの図形定義リストを代入し、次のような結果を返します。

((-1 . <Entity name: 8dc10468>) (0 . "DICTIONARY") (5 . "D")
(102 . "{ACAD_REACTORS") (330 . <Entity name: 8dc10460>)
(102 . "}") (100 . "AcDbDictionary") (3 . "G1")
(350 . <Entity name: 8dc41240>))

次のコードは、変数 group1 にグループ G1 の図形定義リストを代入します。

(setq group1 (dictsearch (cdar grpdict) "G1"))

((-1 . <Entity name: 8dc10518>) (0 . "GROUP") (5 . "23")
(102 . "{ACAD_REACTORS") (330 . <Entity name: 8dc10468>)
(102 . "}") (100 . "AcDbGroup") (300 . "line and circle") (70 . 0) (71
. 1) (340 . <Entity name: 8dc10510>)(340 . <Entity name: 8dc10550>))

グループ コード 340 は、グループ G1 に属する図形です。