本教程全程采用VS2022,Revit2022。
1.新建项目
打开VS2022,创建新项目,选择项目类型为C#,Windows,然后点击下一步。
2.添加引用
选择右上角【解决方案管理器】中的【依赖项】,右键点击,选择【添加项目引用】。
进入【引用管理器】后,选择【浏览】。
打开本地Revit2022的本地安装位置,选择【RevitAPIUI】【RevitAPI】两个dll文件,然后点击【添加】。
在【解决方案资源管理器】中的【依赖项】中的【程序集】看到刚才引用的的两个动态链接库,即表示引用成功!
修改选中刚才引用的的两个动态链接库,修改其属性中的【复制本地】为【否】,这样可以避免在编译的时候将这两个文件复制到本地目录。
3.代码编写
在程序书写栏中输入以下代码。
using System;
using Autodesk.Revit.UI;
using Autodesk.Revit.DB;
namespace hellorevit
{
[Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.TransactionMode.Manual)]
public class Class1:IExternalCommand
{ public Autodesk.Revit.UI.Result Execute(ExternalCommandData revit,
ref string message, ElementSet element)
{
TaskDialog.Show("revit", "你好 revit");
return Autodesk.Revit.UI.Result.Succeeded;
}
}
}
点击【Debug】进行运行程序,然后再项目保存文件夹中的【bin】-【Debug】-【net6.0】中可以看到编译好的程序。
在c#项目文件中,新建一个文本文件,将文件名命名为【hellorevit.addin】,然后输入以下代码并修改,将标签中的位置替换为你的自己的项目保存文件夹中的【bin】-【Debug】-【net6.0】中的hellorevit.dll的位置,例如我的是E:\code\hellorevit\bin\Debug\net6.0\hellorevit.dll,最后点击保存保存。
<?xml version="1.0" encoding="utf-8"?>
<RevitAddIns>
<AddIn Type="Command">
<Assembly>【.dll文件所在路径 】</Assembly>
<ClientId>7d4e1893-3a27-4df2-8075-4fa3754537aa</ClientId>
<FullClassName>hellorevit.class1</FullClassName>
<VendorDescription>adsk</VendorDescription>
</AddIn>
</RevitAddIns>
4.执行插件
打开Revit2022–附加模块–外部工具,点击Add-In Manager,进入插件加载页面。
选择Load加载插件。
选择编译生成的项目文件里面的【hellorevit.dll】,然后选择【hellorevit.问候语】,点击【save】即可。
最后选择外部工具中的【问候语】,即可运行成功。