本章我们只要记录下载我本人学习Revit二次开发过程的API基本概念
1.外部命令:IExternalCommand
2.外部应用:IExternalApplication
3.插件的属性(Transaction、Journaling)
4.Revit的应用类和文档类(Application和Document)
3.Revit插件的注册安装到revit
4.应用实例
一、外部命令:IExternalCommand
外部命令是IEXternalCommand是Revit API提供给开发者的通过外部命令来扩展Revit时必须要实现的外部命令实现的接口。在IExternalCommand接口中必须重写其中的抽象函数:Excute();换句话说,该函数是IExternalCommand接口的入口函数,必须重写。一下是该函数的具体形式
[Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.TransactionMode.Manual)]
public class FileterElement : IExternalCommand
{
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
{
//1.获取当视图的文档
Autodesk.Revit.UI.UIApplication uiapp = commandData.Application.ActiveUIDocument.Application;
Autodesk.Revit.ApplicationServices.Application app = uiapp.Application;
Document uidoc = uiapp.ActiveUIDocument.Document;
ElementClassFilter classfileter = new ElementClassFilter(typeof(FamilyInstance));
ElementCategoryFilter cateoryfilter = new ElementCategoryFilter(BuiltInCategory.OST_Windows);
LogicalAndFilter logicand = new LogicalAndFilter(classfileter,cateoryfilter);
FilteredElementCollector collection = new FilteredElemen