Sds entmakex
- 構文
- int sds_entmakex (const struct sds_resbuf *entity-list, sds_name new-entity);
- 機能
- sds_entmake関数と同じ。
- 当初の目的は、図面に保存されていないオブジェクトを作成するためにオーナー割り当てされないことを除いて、sds_entmakeに類似した機能を提供することであった。ただし、互換性の理由から、sds_entmakex とオーナーを割り当てた場合は図面に保存されるため、該当するADS関数と同様の機能にならない。
- 引数
-
- *entity-list : エンティティリスト
- new-entity : エンティティ名
- 戻り値
- 成功なら RTNORMを返す。データベースを更新することができなければ、RTREJ を返す。
- サンプル
struct sds_resbuf *listbuf = NULL; struct sds_resbuf *databuf = NULL; sds_name xname; sds_name newxname; sds_name nmdict; /* エンティティリストの作成 */ listbuf= sds_buildlist(RTDXF0, "DICTIONARY", 100, "AcDbDictionary", 0); /* エンティティリストのエンティティを作成 */ if ( sds_entmakex(listbuf,xname) != RTNORM ) sds_printf("\nエンティティ生成エラー : listbuf."); /* ディクショナリから named object を取得 */ sds_namedobjdict(nmdict); /* ディクショナリテーブルにレコードを追加 */ sds_dictadd( nmdict, "MY_DICTIONARY", xname); /* 拡張データのエンティティリストを作成 */ databuf= sds_buildlist(RTDXF0, "XRECORD", 100, "AcDbXrecord", 1, "My Data", 0); /* エンティティリストのエンティティを作成 */ if ( sds_entmakex(databuf,newxname) != RTNORM ) sds_printf("\nエンティティ生成エラー : databuf."); /* ディクショナリテーブルにレコードを追加 */ sds_dictadd( xname, "MY_DICTIONARY", newxname);
関連事項