Revit,使用Python,您可以更改族中的"Formula"值吗?



我们的族中有一个名为"族版本"的参数,在该参数中,我们将公式设置为"2019.01",以表示Revit版本和族的最新更新。即使这是一个文本字段,我们也将其设置为公式,这样最终用户就无法更改它

我的问题是:有没有办法通过Python设置公式?如果它没有设置为公式,我可以使用此代码更改值:

#Set Family Version
t = Transaction(doc, "Set Family Version")
t.Start()
parameter = [a for a in doc.FamilyManager.Parameters if a.Definition.Name=="Family Version" ][0]
doc.FamilyManager.Set(parameter, "2020.01")
t.Commit()

有办法改变公式吗?

对于任何想要这样做的人。找到了解决方案。

使用"SetFormula"而不是"Set"。还需要将文本设置为"\"2020.01\"而不是"2020.01">

以下是更新。。。

#Set Family Version
t = Transaction(doc, "Set Family Version")
t.Start()
parameter = [a for a in doc.FamilyManager.Parameters if a.Definition.Name=="Family Version" ][0]
doc.FamilyManager.SetFormula(parameter, ""2020.01"")
t.Commit()

最新更新