乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 111|回复: 7

请问用ARX中用什么来删除一个实体对象 ?在线等待

[复制链接]

2

主题

3

帖子

1

银币

初来乍到

Rank: 1

铜币
11
发表于 2005-11-13 16:09:00 | 显示全部楼层 |阅读模式
目前已有该实体的AcDbObjectId,用什么方法把它从当前数据库中删除?
回复

使用道具 举报

124

主题

837

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1333
发表于 2005-11-13 22:07:00 | 显示全部楼层
1.
inline Acad::ErrorStatus
acdbOpenObject(
AcDbObject *& pObj,
AcDbObjectId id,
AcDb::OpenMode mode);
2.调用obj的erase方法
回复

使用道具 举报

10

主题

131

帖子

7

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
171
发表于 2005-11-15 15:37:00 | 显示全部楼层
等于没说。
上面的都是已知的,关键是erase是在obj打开后就进行还是obj关闭后进行。还是自己试试看
回复

使用道具 举报

124

主题

837

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1333
发表于 2005-11-15 18:18:00 | 显示全部楼层

晕!!!!!!
从ID得到对象用acdbOpenObject(AcDbObject*& pObj,AcDbObjectId id, AcDb::OpenMode mode);其中pObj是输出参数,id是已知参数,要操作对象当然要先打开对象了,关闭后还怎么操作它啊?不明白你在回答什么???
希望对你的回答负责!
回复

使用道具 举报

13

主题

121

帖子

6

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
173
发表于 2005-11-15 21:55:00 | 显示全部楼层
acdbOpenObject(pObj,id,acdb::kforwrite);//pobj:AcDbEntity *
pobj->erase();
pobj->close();
回复

使用道具 举报

0

主题

1

帖子

1

银币

初来乍到

Rank: 1

铜币
1
发表于 2005-11-18 13:46:00 | 显示全部楼层
erase() is a method of AcDbObject, it doesn't really remove the object/entity from the database, it just set the erase bit to true, when drawing is going to be persisted, any objects with true erase bit will not be persisted.
So do as tigerhu do:
open the object/entity
call erase method
close the object/entity
回复

使用道具 举报

1

主题

9

帖子

1

银币

初来乍到

Rank: 1

铜币
13
发表于 2005-11-24 19:45:00 | 显示全部楼层
mark等待牛人解答
回复

使用道具 举报

1

主题

6

帖子

2

银币

初来乍到

Rank: 1

铜币
10
发表于 2011-10-17 18:52:00 | 显示全部楼层

对象指针已经删了,在关闭还有意义吗???
By default, you cannot open an erased object with the acdbOpenObject() function. If you attempt to do so, the eWasErased error code will be returned.
extern Acad::ErrorStatus
acdbOpenObject(
    AcDbObject*& obj,
    AcDbObjectId objId,
    AcDb::OpenMode openMode,
    Adesk::Boolean openErasedObject = Adesk::kFalse);
To open an erased object, use kTrue for the last parameter of the acdbOpenObject() function
所以对块表中不存在的对象,要这样打开,才可以关闭吧。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-5 15:00 , Processed in 0.218987 second(s), 79 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表