• Revit API过滤元素类别(FamilySymbol与FamilyInstance)


    仅OfCategory()过滤的元素包含系统FamilySymbol
    OfClass(typeof(FamilyInstance))过滤出来文档中族实例。
    //过滤元素类别
    [Transaction(TransactionMode.Manual)]
    [Regeneration(RegenerationOption.Manual)]
    public class cmdGetCate : IExternalCommand
    {
        public Result Execute(ExternalCommandData cmdData, ref string msg, ElementSet elements)
        {
            UIDocument uiDoc = cmdData.Application.ActiveUIDocument;

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

            FilteredElementCollector collector = new FilteredElementCollector(uiDoc.Document);
            collector.OfCategory(BuiltInCategory.OST_DuctFitting);//过滤出来系统包含的Symbol与文档包含的Instance
            
    //collector.OfClass(typeof(FamilyInstance)).OfCategory(BuiltInCategory.OST_DuctFitting);
            int iSymbol = 0;
            int iFi = 0;
            foreach (Element el in collector)
            {
                if (el is FamilySymbol)
                    iSymbol += 1;
                else if (el is FamilyInstance)
                    iFi += 1;
            }
            TaskDialog.Show("count", iSymbol + "," + iFi);

            ts.Commit();

            return Result.Succeeded;
        }
    }
    url:http://greatverve.cnblogs.com/p/api-get-symbol-instance.html
  • 相关阅读:
    Python 文件Hash(MD5,SHA1)
    CDHtmlDialog探索Javascript与窗体交互
    C++ 实现不允许继承的类
    (一)JDBC入门及简介
    (二)JDBC 连接数据库
    2012年,总结
    canvas 时钟
    解决数据库日志文件过满的又一方法
    Windows XP 注册表修改大全
    windows2003中安装.netframework1.1
  • 原文地址:https://www.cnblogs.com/greatverve/p/api-get-symbol-instance.html
Copyright © 2020-2023  润新知