AcDbEntity添加到数据库如何实时显示?

作者: admin 分类: C++,CAD,ObjectARX 发布时间: 2020-07-08 21:58

AcDbEntity* pEnt = new AcDbEntity();

常规的PostToModelSpace函数中,里面有pEnt->close();有此语句,在pEnt的生命周期没有结束时,CAD也会将其绘制出来。若没有close,等pEnt生命周期结束后,CAD才会将其绘制出来。

 

使用下面的语句,也可使之在生命周期没有结束前也可显示出来。

pHatch_->recordGraphicsModified();//刷

pHatch_->draw();

总结,CAD只在对象的生命周期结束后才会显示(前提时加入了数据库),若想在生命周期未结束前显示,可使用close函数或draw函数。若使用close(),请先添加到database,然后再close,

ACDBCORE2D_PORT Acad::ErrorStatus close();

描述

关闭对象。自打开以来对对象所做的所有更改都将提交到database, 对象被标记为可分页, 以及“已关闭”通知(以及任何其他适当的通知, 例如“已修改”, “已擦除”等) ) 已发送。 

如果成功则返回Acad::eOk。 

如果该对象尚未在AcDbDatabase中, 则返回Acad::eNoDatabase。 

如果对象正在发送通知, 则返回Acad::eCloseWasNotifying。 

如果在close()方法中进行的subClos~~e()调用返回除Acad::eOk之外的任何内容, 则返回该ErrorStatus

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

标签云