revit二次开发——内部命令

1.PostableCommand Enumeration

枚举API应用程序可以发布的所有内置命令。

2.FilterDialog Class

允许显示用于在Autodesk Revit中创建和编辑FilterElements的对话框。

Revit可以给视图添加过滤器的功能,这个添加过滤器,有一个比较完善的界面,可以添加各种各样的过滤器,

 API里也可调用这个界面了,为API创建过滤器提供了不少方便。

下面是一个简单的例子,

用这个FilterDialog个当前视图添加一个过滤器:

            Document doc = commandData.Application.ActiveUIDocument.Document;
            FilterDialog myDialog = new FilterDialog(doc, "test");
            myDialog.Show();
            ElementId filterId = myDialog.NewFilterId;


            View v = doc.ActiveView;
            Transaction trans = new Transaction(doc, "test");
            trans.Start();
            v.AddFilter(filterId);
            trans.Commit();

3.FilterCategoryRule Class

匹配一组类别中的元素的筛选规则

4.FamilyElementVisibility 

提供一组属性用于控制元素在指定细节层或者视图中是否被显示。这些属性如下:

IsShownInCoarse:是否在“粗糙”细节层中显示(只限项目文档);
IsShownInMedium:是否在“中度”细节层中显示(只限项目文档);
IsShownInFine:是否在“精细”细节层中显示(只限项目文档);

IsShownInFrontBack:是否在“前/后”视图中显示(只限项目文档);
IsShownInLeftRight 是否在“左/右”视图中显示(只限项目文档);
IsShownInTopBottom:是否在“顶/底”视图中显示(只限项目文档);

IsShownInPlanRCPCut:当在 Plan/RCP 中被剪切时是否显示(如果其类别允许的话);
IsShownOnlyWhenCut:是否只在其被剪切时显示;

VisibilityType:FamilyElementVisibilityType 枚举值
- Model:只在3D视图中显示;
- ViewSpecific:只在创建视图中显示,一般用于细节组件、注释以及针对视图的导入

猜你喜欢

转载自blog.csdn.net/helloyangkl/article/details/127958772