符号表记录和字典中使用的名称必须遵循以下规则:
AutoCAD 数据库包含以下符号表(括号表示类名和用于添加条目的 AutoCAD 命令):
每个表都包含相应子类的对象。AcDbSymbolTableRecord 每个符号表类都提供用于查找按名称指定的记录的函数。函数的重载形式的签名如下。(代表九种符号表类类型中的任何一种。getAt()getAt()##BASE_NAME## Acad::ErrorStatus AcDb##BASE_NAME##Table::getAt(const char* pEntryName, AcDb##BASE_NAME##TableRecord*& pRecord, AcDb::OpenMode mode, bool openErasedRecord = false) const; 或 Acad::ErrorStatus AcDb##BASE_NAME##Table::getAt(const char* pEntryName, AcDbObjectId& recordId, bool getErasedRecord = false) const; 此函数的第一个版本返回指向打开的记录的指针,如果找到匹配的记录并且打开操作(使用指定的模式)成功。如果为 true,该函数也会返回对象,即使它已被擦除。Ifis false,该函数返回指针和错误状态 对于已删除的对象。pRecordopenErasedRecordopenErasedRecordNULLeWasErased 函数的第二个版本返回由值中的名称指定的记录如果找到匹配的记录。如果为 true,该函数将返回匹配的对象,即使它已被擦除。对象未打开。getAt()AcDbObjectIdrecordIdgetErasedRecord 获取记录并将其打开后,可以获取和设置不同的成员值。有关类成员函数的完整列表的特定符号表记录类,请参阅 ObjectARX 参考。 所有符号表类提供的其他重要函数是 theandfunctions。请参阅创建和修改图层表记录中的示例。函数的签名是has()add()has() bool AcDb##BASE_NAME##Table::has(const char* pName) const; bool AcDb##BASE_NAME##Table::has(AcDbObjectId id) const; 如果表包含名称匹配的记录,则该函数返回 true。has()pNameid 该函数具有以下签名:add() Acad::ErrorStatus AcDb##BASE_NAME##Table::add(AcDb##BASE_NAME##TableRecord* pRecord); Acad::ErrorStatus AcDb##BASE_NAME##Table::add(AcDbObjectId& recordId, AcDb##BASE_NAME##TableRecord* pRecord); 此函数将指向 byby 的记录添加到包含表的数据库和表本身。如果添加成功且参数为 non-,则将其设置为数据库中的记录。pRecordrecordIdNULLAcDbObjectId |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-1-8 19:32
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.