突然发现以前在Autodesk论坛上解答过的问题,还没有写成博客。
问题很简单,就是如何用API创建不同类型的用户参数。通常情况下,参数是double型的,用户们没啥困难,但如果是字串或bool型,有些用户犯难了,尤其是AddValue的第三个参数该填什么呢?其实我也是用通过大量测试,得到以下的代码。
Sub test()
Dim oDoc As PartDocument
Set oDoc = ThisApplication.ActiveDocument
'bool
Dim oUserParam1 As UserParameter
Set oUserParam1 = oDoc.ComponentDefinition.Parameters.UserParameters.AddByValue("Ready", True, "BOOLEAN")
'text
Dim oUserParam2 As UserParameter
Set oUserParam2 = oCompDef.Parameters.UserParameters.AddByValue("Name", "rocky", "TEXT")
'double
Dim oUserParam3 As UserParameter
Set oUserParam3 = oCompDef.Parameters.UserParameters.AddByValue("Length", 5, kCentimeterLengthUnits)
End Sub
若是工程图,将oDoc.ComponentDefinition 替换为drawing document即可。