乐筑天下

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

对象启用程序

[复制链接]

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2013-10-7 10:00:04 | 显示全部楼层 |阅读模式
我想我需要复习一下对象使能器....
假设我们使用AutoCAD MEP (AMEP) 2010作为创作软件,使用AutoCAD Structural Detailing(ASD)2013作为查看/编辑/保存软件。
对象启用程序不是应该允许您打开带有ASD的AMEP图形,查看AEC对象,进行编辑,然后将其保存回2010年,而不会损坏AEC对象吗?

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

16

主题

506

帖子

6

银币

中流砥柱

Rank: 25

铜币
570
发表于 2013-10-7 10:05:15 | 显示全部楼层
可能是2010年DWG格式(我不是ASD用户,只是一个经常使用OE的用户),但*不是* 2010年垂直(MEP)内容格式。文件的垂直内容将与用于打开它的程序版本一致,在本例中为2013。
对象启用程序几乎从不允许编辑,只允许查看。
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2013-10-7 10:14:44 | 显示全部楼层
好吧,那么OE的意义何在? 您可以查看仅启用代理图形。
回复

使用道具 举报

LE3

10

主题

149

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
189
发表于 2013-10-7 10:31:02 | 显示全部楼层

如果最初的开发人员将其设置为AcDbProxyEntity::kNoOperation,则自定义对象只是可见的。
回复

使用道具 举报

24

主题

204

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
300
发表于 2013-10-7 10:39:16 | 显示全部楼层

ObjectEnablers仅用于查看第三方自定义对象。故意这样做,所以如果您想编辑它们,您必须购买第三方应用程序。代理对象并不总是显示自定义对象的确切表示,但启动器会。
回复

使用道具 举报

16

主题

506

帖子

6

银币

中流砥柱

Rank: 25

铜币
570
发表于 2013-10-7 14:06:37 | 显示全部楼层

ObjectEnablers仅用于查看第三方自定义对象。这是故意的,所以如果您想编辑它们,您必须购买第三方应用程序。代理对象并不总是显示自定义对象的精确表示,但启用程序会。

上面突出显示的部分不完全正确,您需要对象启用程序的原因是为了让AutoCAD知道如何绘制自定义对象。如果没有它,你将得到你所看到的3d矩形或者存储在绘图文件中的非常简化的形状。
当您创建自定义对象时,您必须创建代码,以便不仅存储自定义数据,还存储几何图形以及如何绘制它。
这是在一个. dbx文件(对象启用程序)中完成的,该文件与ARX(即dll)相同,但它不包含用于用户交互的代码,该代码在ARX中为自定义对象应用程序提供。
简单来说,object enabler包含自定义对象的“蓝图”,因此AutoCAD知道如何绘制它们,ARX包含创建和修改它们的代码,这是您需要付费的ARX。干杯,米克。
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2013-10-7 16:48:17 | 显示全部楼层

ObjectEnablers仅用于查看第3方自定义对象。故意这样所以如果您想编辑它们,您必须购买第三方应用程序。代理对象并不总是显示自定义对象的确切表示,但启用程序会显示。

上面突出显示的部分不太正确,您需要对象启用程序的原因是为了让AutoCAD知道如何绘制自定义对象。没有它,您将获得您看到的3d矩形或存储在绘图文件中的非常简化的形状。
当您创建自定义对象时,您必须创建代码以不仅存储自定义数据,还存储几何形状以及如何绘制它。
这是在一个. dbx文件(对象启动器)中完成的,该文件与ARX(即dll)相同,但它不包含用于用户交互的代码,这是在ARX中为自定义对象应用程序提供的。
简而言之,对象启动器包含自定义对象的“蓝图”,因此AutoCAD知道如何绘制它们,ARX包含创建和修改它们的代码,它是你需要支付的ARX。
干杯,
米克。

哈哈,你刚才是不是说我说的不是真的,然后用更冗长的版本说我做的同样的事情?真的吗?
回复

使用道具 举报

24

主题

204

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
300
发表于 2013-10-8 07:33:43 | 显示全部楼层
不。
我指出了我认为不正确的地方,并试图为可能遇到此线程的其他人推断自定义对象应用程序的工作原理。
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2013-10-8 16:25:57 | 显示全部楼层

因此,当你说“故意这样”是一个不真实的说法。您的意思是您描述的模型呈现(.dbx)和应用程序(.arx)分离不是由Autodesk故意完成的? 我同意,你确实推断了自定义对象的工作原理,但你从来没有解释为什么“故意这样”是不正确的。
回复

使用道具 举报

27

主题

242

帖子

18

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
335
发表于 2013-10-8 17:06:27 | 显示全部楼层
开发人员仍然可以选择将他的自定义对象放在ARX中(仅限),并允许最终用户进行任何可用的操作,见图。为这个简单的自定义对象做了5分钟的快速编码,如果有人想尝试一下,请下载autocad 14和x64的arx文件。命令:我的命令例如,这个对象可以更改他的颜色或作为代理擦除。-ACRX_DXF_DEFINE_MEMBERS(。
段,AcDbEntity,。
AcDb::kDHL_CURRENT,AcDb::kMRelease电流,。
AcDbProxyEntity::允许删除|AcDbProxyEntity::允许更改,段,//AcDbProxyEntity::kNo操作。
“DBXAPP”。
"|产品设计:对象的描述"。
"|公司:您的公司名称"。
"|WEB地址:您的公司WEB站点地址"。
)。
//----- AcDbEntity协议。
#ifdef_ACADTARGET17。
Adesk::Boolean Segment::world Draw(AcGiWorldDraw*模式){。
#其他。
Adesk::Boolean Segment::subWorldDraw(AcGiWorldDraw*模式){。
#endif。
assertReadEnable();。
//返回(AcDbEntity::subWorldDraw(模式));。

AcGeVector3d规范;。
norm.set(0.0,0.0,1.0);。

//mode->几何(),圆(this->位置(),0.00000000001,范数);。

//mode->subEntityTraits(). setSelectionMarker(1);。
//mode->subEntityTraits(). setColor(1);。
模式->几何(),圆(this->位置(),2.0,范数);。

返回(Adesk::kTrue);。
}这取决于开发人员,选项可供选择。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-11 06:22 , Processed in 0.395981 second(s), 72 queries .

© 2020-2025 乐筑天下

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