CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ObjectARX 开发指南

相关分类

类版本控制示例

2022-12-31 21:37| 发布者: admin| 查看: 296| 评论: 0|来自: AutoCAD

new参数确定当对象要归档时要使用的版本。保存图形时,可以通过调用文件管理器的方法来确定要保存到哪个 DWG 版本。对象文件本身不必与文件管理器的版本相同。AutoCAD 的早期版本正是这样做的,这导致了以下示例最能描述的问题。ACRX_DXF_DEFINE_MEMBERSdwgVersion()

在版本 14 中,添加了一个新的数据成员 ()。在 AutoCAD 2000 中,一个名为 的新类派生自。在AutoCAD 2000中使用时,成员未被写出,因为版本13不知道成员。如果保存的图形由版本 14 打开,则实例将作为代理加载,因为版本 14 不包含此类。当 an成为代理时,该级别下的所有数据都将由 AutoCAD 作为“代理数据”保持不变,并且不会更改。当图形由版本 14 保存时,数据将在读入时转储回 DWG 文件。结果是一个版本 14 DWG 文件,该文件的实例缺少数据。使用 AutoCAD 2000 或更高版本读取此图形时,AutoCAD(特别是)会查找该数据成员,因为文件管理器指示图形是版本 14 版本,并且数据成员应存在于 R14 图形字典对象中。但是,数据不存在,序列丢失,并且图形已损坏。mTreatElementsAsHardAcDbDictionaryAcDbDictionaryWithDefaultAcDbDictionaryacdbSaveAsR13()mTreatElementsAsHardacdbSavedAsR13()AcDbDictionaryWithDefaultAcDbObjectAcDbObjectAcDbDictionaryWithDefaultmTreatElementsAsHardAcDbDictionary::dwgInFields()mTreatElementsAsHard

这不是特定于的。ObjectARX 或第三方引入的新类可能会遇到此问题,尤其是在它们的超类之一更改了数据的情况下。AcDbDictionaryWithDefault


路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-5-19 13:51

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部