import clr
family = clr.Reference[Family]()
# family is now an Object reference (not set to an instance of an object!)
success = doc.LoadFamily(path, family) # explicitly choose the overload
# family is now a Revit Family object and can be used as you wish
t = Transaction(doc, 'loadfamily')
t.Start()
try:
success, family = doc.LoadFamily.Overloads.Functions[0](path)
# do stuff with the family
t.Commit()
except:
t.Rollback()
你可以像这样得到你想要的超负荷:
这是通过创建一个对象引用来传递给函数的,方法重载resultation thingy现在知道要查找哪一个。在
假设RPS帮助中显示的重载列表与它们出现的顺序相同—我认为这是一个非常安全的假设,您也可以这样做:
^{pr2}$实际上,这将返回一个元组
(bool, Autodesk.Revit.DB.Family)
。在请注意,这必须发生在事务内部,因此完整的示例可能是:
相关问题 更多 >
编程相关推荐