- 积分
- 226
- 明经币
- 个
- 注册时间
- 2003-10-3
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
楼主 |
发表于 2003-10-4 10:48:00
|
显示全部楼层
找到答案了:
除了要用MARCO: ACRX_DECLARE_MEMBERS()外
还要用MARCO: ACRX_DXF_DEFIND_MEMBERS();
而且在初始化时用Beam::Inirx();和RebuildClassHierarchy();
另外还有问题:
对于Beam的对象能否用appendAcDbEntity()将其自身及其中数据成员
加入数据库中,
即
Command()
{
....(OpenBlockTableRecord and Get the *pBlockTableRecord as pointer)
Beam *b = new Beam;
b->i = 50;
AcDbObjectId id;
pBlockTableRecord->appendAcDbEntity(id,b);
b->close();
pBlockTableRecord->close();
}
书上说似乎要在Beam的定义中
重载dwgInField();dwgOutField();等四个虚函数
不知是否,请不吝赐教
还有,书上说禁止从AcDbPoint,AcDbLine,AcDbArc等中派生新类
这是什么意思,我的Beam类正是从AcDbLine中派生的. |
|