我们的族中有一个名为"族版本"的参数,在该参数中,我们将公式设置为"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()