CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ObjectARX 开发指南

使用实体创建新数据库

2023-1-1 05:57| 发布者: admin| 查看: 286| 评论: 0|来自: AutoCAD

函数的其他三种形式创建一个新数据库,其模型空间块表记录包含输入数据库中的指定实体。此函数的第一种形式从命名块表记录中复制实体。函数的第二和第三种形式都复制实体数组,但其中一个包含指定如何处理新数据库中重复符号或字典条目的参数。AcDbDatabase::wblock()

复制命名块

以下函数等效于使用块定义的名称调用 WBLOCK 命令:

Acad::ErrorStatus
AcDbDatabase::wblock(
    AcDbDatabase*& pOutputDb,
    AcDbObjectId blockId);

参数表示输入数据库中的块表记录。此块表记录中的实体将复制到新数据库的模型空间块表记录中。新数据库的插入基是块表记录的源。blockId

复制实体数组

以下函数等效于调用 WBLOCK 命令,然后使用该选项选择特定对象并指定插入基点:

Acad::ErrorStatus
AcDbDatabase::wblock(
    AcDbDatabase*& pOutputDb,
    const AcDbObjectIdArray& outObjIds,
    const AcGePoint3d* basePoint);

此函数创建一个新数据库,其中包含参数中指定的实体。实体(可以位于输入数据库的模型空间或图纸空间块表记录中)放置在新数据库的模型空间中。新数据库中还包括这些实体拥有或引用的对象,以及这些对象的所有者。指定的点是新图形的原点(以世界坐标为单位)(即,它是新数据库的模型空间中的插入基点)。outObjIds

该函数的最终版本还复制实体数组并指定插入基点,但它有一个附加参数,指定如何处理新数据库中的重复符号或字典条目:AcDbDatabase::wblock()

Acad::ErrorStatus
AcDbDatabase::wblock(
    AcDbDatabase*& pOutputDb,
    const AcDbObjectIdArray& outObjIds,
    const AcGePoint3d* basePoint,
    AcDb::DuplicateRecordCloning drc);

有关参数的详细信息,请参阅ObjectARX 参考中的函数文档。drcwblock()


路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-5-19 12:23

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部