REVIT二次开发创建工程和环境配置

  • 新建一个类库

  • 将设置修改成如下图

注意:不用版本的Revit对应的目标框架不同,Revit2016对应的是.Net Framework 4.5

  •  调试设置

  • 引用Dll

引用Revit安装目录下的RevitAPI.dll和RevitAPIUI.dll

本机Revit安装路径C:\Program Files\Autodesk\Revit 2016

引用System.Windows.Forms.dll

  • 两种方式来扩展Revit的功能

方式一:外部命令(External Command)功能:添加一个Revit命令

描述: 由用户点击按钮来启动命令,使用最频繁

方式二:外部应用(External Application)功能:

可以添加菜单和工具条,或其它初始化命令

描述:在启动和关闭Revit.exe时自动执行,一般会用到,用量不多

  • 加载外部命令

命令加载方式一: 通过addin文件

*.addin文件可用任意文件名,只要扩展名是addin即可,只能存放在指定的目录C:\Users\[UserName]\AppData\Roaming\Autodesk\Revit\Addins\2016或者

C:\ProgramData\Autodesk\Revit\Addins\2016中,

在该文件夹下可有多个*.addin文件并存,Revit会依次加载其中设置的加载项目

  • 创建外部应用

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using Autodesk.Revit.UI;

using Autodesk.Revit.DB;

using Autodesk.Revit.ApplicationServices;

using Autodesk.Revit.Attributes;

using Autodesk.Revit.UI.Selection;

namespace RvtSample

{

    //外部应用(External Application):

    //可以添加菜单和工具条,或其它初始化命令

    //在启动和关闭Revit.exe时自动执行

    [Transaction(TransactionMode.Automatic)]

    [Regeneration(RegenerationOption.Manual)]

    public class SampleApp : IExternalApplication

    {

        public Result OnStartup(UIControlledApplication application)

        {

            //MessageBox.Show("Start Revit !");

            AddRibbon(application);

            return Result.Succeeded;

        }

        public Result OnShutdown(UIControlledApplication application)

        {

            return Result.Succeeded;

        }

    }

}

创建命令

namespace RvtSample

{

    //外部命令(External Command):由用户点击按钮来启动命令

    [Transaction(TransactionMode.Automatic)]

    [Regeneration(RegenerationOption.Manual)]

    [Journaling(JournalingMode.NoCommandData)]

    public class Hello : IExternalCommand

    {

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

        {

            WinForm.MessageBox.Show("Hello World");

            return Result.Succeeded;

        }

    }

}

创建窗口

运行效果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值