C# Revit二次开发基础/核心编程--- IExternalCommand/IExternalApplicaiton

本篇博客详细介绍了C#在Revit中的二次开发,重点讲解了IExternalCommand外部命令和IExternalApplication外部应用的基本原理及实现。通过实例展示了如何创建并执行外部命令,如何利用addin文件注册插件,以及如何将插件功能添加到Revit选项卡。同时,还涵盖了错误处理和调试方法。
摘要由CSDN通过智能技术生成

一、本节课程
C# Revit二次开发基础/核心编程--- IExternalCommand/IExternalApplicaiton

二、本节要讲解的知识点

    IExternalCommand/IExternalApplicaiton帮助入门的案例

  • 具体内容

1、IExternalCommand外部命令

(1)基本原理:如果Revit没有其他命令在调用,或者是没有处于编辑模式,ExternalCommand会被激活。一旦插件被选中,外部命令对象就会被创建出来,并且执行Execute函数。执行完毕后,外部命令对象就被销毁。在两个命令之间数据不能保存在对象中,要通过其他方式来保存。

(2)IExternalCommand,用户通过外部命令来拓展功能的话,必须实现这个接口。重载Execute函数。作为外部命令的主函数来调用。

    public interface IExternalCommand

    {

        Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements);

    }

 

   public Autodesk.Revit.UI.Result Execute(ExternalCommandData revit, ref string message, ElementSet elements)

        {

            TaskDialog.Show("Revit", "Hello World");

            return Autodesk.Revit.UI.Result.Succeeded;

        }

(3)输入参数 ExternalCommandData

包含了外部命令所需要的Application以及一些视图的引用。在外部命令中,所有的Revit的数据都可以通过这个参数直接或者间接的取到。Application和Document是处于最顶层的,主要分为Application、UIApplication、Document、UIDocument这几个大类。

UIApplication uiApplication =revit.Application;

Application application=uiApplication.Application;

UIDcument uiDocument=uiApplication.ActiveUIDocument;

Document document=uiDocument.Document;

(4)输出参数message

外部命令可以通过这个参数返回执行过程中的错误信息。这个参数作用于整个外部命令的执行过程,用户可以在外部命令执行过程中的任何时候给这个信息设值或者追加信息。当外部命令的Execute函数返回Autodesk.Revit.UI.Result.Failed或者Autodesk.Revit.UI.Result.Canceled,这个错误信息将被显示在UI上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值