Revit PromptForFamilyInstancePlacementOptions 族放置API
程序员文章站
2022-06-10 23:26:31
...
这段时间在做族库,在做到最后需要与Revit连同时,希望可以用户选择下载然后直接在Revit中布置构件,查找API ,发现可以使用PromptForFamilyInstancePlacementOptions
方法实现族放置。
代码 比较简单,只不过需要记住,由于PromptForFamilyInstancePlacementOptions
会自己创建一个事务,所以使用的话需要将此方法挪出事务。
code:
Family family;
using (Transaction trans = new Transaction(app.ActiveUIDocument.Document,"load family"))
{
trans.Start();
var loadFamily = app.ActiveUIDocument.Document.LoadFamily(
localPath + ttn.Name + ".rfa", new RevitLoadFamily(),
out family);
//如果下载失败则提示
if (!loadFamily)
{
MessageBox.Show(ttn.Name +
$"cant find the family , \r\n localPath:{localPath + ttn.Name + ".rfa"}");
return;
}
trans.Commit();
}
var symbol =
app.ActiveUIDocument.Document.GetElement(family.GetFamilySymbolIds().First()) as
FamilySymbol;
app.ActiveUIDocument.PromptForFamilyInstancePlacement(symbol);
上一篇: 深入浅析Node环境和浏览器的区别
下一篇: 详解vue-cli3使用