ObjectARX2020 CAD2020 自定义实体重写setColor

作者: admin 分类: C++,CAD,ObjectARX 发布时间: 2021-01-15 20:40

2020的改参数了

virtual ACDBCORE2D_PORT Acad::ErrorStatus setColor(    const AcCmColor& color, 
    bool doSubents, 
    AcDbDatabase * pDb);

参数

参数  描述  

color  输入AcCmColor对象, 其中包含要为其设置实体的颜色的完整真实颜色信息  

doSubents  输入bool值, 指示是否将更改传播到实体可能拥有的任何子实体  

pDb  用于在实体非db-resident时查找命名颜色  

返回

如果实体是非驻留且pDb为null, 则返回eNoDatabase。

描述

功能用法 

此方法将实体的颜色设置为颜色指定的颜色。如果实体拥有子实体并且doSubents == Adesk::kTrue, 则颜色更改也会应用于子实体。自定义类可以覆盖此方法

注意

kTrue具有影响的唯一内置实体是:AcDb2dPolyline, AcDb3dPolyline, AcDbPolyFaceMesh和AcDbPolygonMesh。 

如果成功则返回Acad::eOk。如果不成功, 将导致一般的AutoCAD错误, 因为只有在AutoCAD中出现严重错误时, 此功能才会失败。 

派生类中的函数实现 

如果重写此函数并希望设置实体的颜色, 那么它必须调用AcDbEntity::setColor()传递颜色和doSubents参数或调用AcDbEntity::setColorIndex()传递AutoCAD颜色索引和获取的doSubents值从颜色。 

此函数的实现也可以直接处理任何子实体, 并将Adesk::kFalse的doSubents值传递给AcDbEntity::setColor()或AcDbEntity::setColorIndex()。

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

发表评论

标签云