Revit二次开发之“取得所选元素的族名称”

本文介绍了一种在Revit API中通过FamilyInstance对象获取其所属族名称的方法。使用Transaction开始事务,并通过选取元素的方式得到FamilyInstance实例,进而获取到该实例对应的族名称、实例名称及类别名称。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

start
// 根据族实例FamilyInstance找到Family的方法:FamilyInstance.Symbol.Family
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
// [Journaling(JournalingMode.NoCommandData)]
public   class  cmdFamily : IExternalCommand
{
    
public  Result Execute(ExternalCommandData cmdData,  ref   string  message, ElementSet elements)
    {
        UIDocument uiDoc 
=  cmdData.Application.ActiveUIDocument;
        Selection selection 
=  uiDoc.Selection;

        Transaction ts 
=   new  Transaction(uiDoc.Document,  " FamilyName " );
        ts.Start();

        Reference refelem 
=  selection.PickObject(ObjectType.Element,  " 选择 " );
        Element el 
=  uiDoc.Document.get_Element(refelem.ElementId);
        FamilyInstance fi 
=  el  as  FamilyInstance;
        TaskDialog.Show(
" title " , fi.Symbol.Family.Name  +   " | "   +  fi.Name  +   " | "   +  fi.Category.Name);

        ts.Commit();

        
return  Result.Succeeded;
    }
}
from: http://revit.5d6d.com/thread-1217-1-1.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值