ObjectARX自定义实体的数据存储

  1. 众所周知自定义实体需要重写一些函数,其中关于自定义实体数据存储的两个:
    将自定义实体对象写入到DWG文件时调用的函数。
    virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler* pFiler) const;
    从DWG文件中读取自定义实体对象时需要访问的函数。
    virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler* pFiler);
    如果自定义实体对象还要保存或读取DXF文件,则还需要重写:
    virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler* pFiler);
    virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler* pFiler) const;
  2. 创建三角形的自定义实体的数据存储的实现如下:
    实现dwgOut函数,向导生成了一些代码,我们要做的仅仅是把成员变量写入到外部:
    Acad::ErrorStatus dwgOutFields (AcDbDwgFiler *pFiler) const
    {
    assertReadEnabled () ;
    //—– Save parent class information first.
    Acad::ErrorStatus es =AcDbEntity::dwgOutFields (pFiler) ;
    if ( es != Acad::eOk )
    return (es) ;
    //—– Object version number needs to be saved first
    if ( (es =pFiler->writeUInt32 (kCurrentVersionNumber)) != Acad::eOk )

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值