设计加速器的部件无法更名

原文链接:

http://adndevblog.typepad.com/manufacturing/2015/01/component-occurrence-cannot-be-renamed.html


通常,我们可以对装配部件进行更名,甚至替换。但如果是设计加速器的部件环境,当你尝试更名,会得到如下的错误:

“Request Rename Component cannot be run on document Synchronous Belts”

中文意思就是无法在此环境进行更名。

Changename


从API的角度,调试看,设计加速器将Document.DisabledCommandTypes设置为33,即kNonShapeEditCmdType + kShapeEditCmdType 两个值的组合。也就是它阻止了更名的操作。

以下是一个列表,显示哪些枚举值是允许部件或文档的更名。

Public Sub SetDisabledCommandTypes()
' Type / Can you rename occurrences? / Can you rename document?
' kEditMaskCmdType = 57 (&H39) / No / No
' - kNonShapeEditCmdType (32)
' - kUpdateWithReferencesCmdType (16)
' - kFilePropertyEditCmdType (8)
' - kShapeEditCmdType (1)
' kFileOperationsCmdType = 4 / Yes / Yes
' kFilePropertyEditCmdType = 8 / Yes / Yes
' kNonShapeEditCmdType = 32 (&H20) / No / No
' kQueryOnlyCmdType = 2 / Yes / Yes
' kReferencesChangeCmdType = 64 (&H40) / Yes / Yes
' kSchemaChangeCmdType = 128 (&H80) / Yes / Yes
' kShapeEditCmdType = 1 / Yes / Yes
' kUpdateWithReferencesCmdType = 16 (&H10) / Yes / Yes

  ' You can test the effect of the various enum values here
  ThisApplication.ActiveDocument.DisabledCommandTypes = _
    kNonShapeEditCmdType
End Sub

所以,理论上,你可以设置Document.DisabledCommandTypes=0, 这样就能修改部件名了。最后再还原回其原值。但我们并不建议这样做,这是干扰了设计加速器本身的流程。除非以后提供了特别的API,或者设计加速器考虑到这一问题,主动允许修改。所以在目前的设计状态下,你得自己评估修改后的风险。本文只是让你了解当遇到文章开头的那种错误,背后的原因。


论坛推荐阅读:

如何修改iFeature的输入参数?

http://forums.autodesk.com/t5/inventor-customization/how-to-edit-ifeature-parameters-via-vba/m-p/4817511/highlight/true#M48522

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值