revit二次开发-HelloWorld,入门

因为在程序中反复需要用到revit的模型,可是revit模型的操作对于开发来说,局限性很大,因此做一些插件进行自动化管理。
本文先根据教程,做一个HelloWorld程序,为了方便,本文安装的revit版本是2014版,visual studio使用的是vs2012。
1、安装revit及其sdk
revit的安装不复述,但是装完后还需要安装其sdk。
revit解压缩后,找到解压路径下的“\Utilities\SDK\RevitSDK.exe”运行,指定sdk解压路径。
下载AddInManager配置文件,可以网络搜索,或者使用作者分享的文件链接: http://download.csdn.net/download/xuwuxiu/9898218

然后,在revit解压目录下搜索“AddInManager”,可以得到如下文件:
revit二次开发-HelloWorld,入门_第1张图片
此步骤网络上很多教程都说revit的sdk目录下自带AddInManager,但是作者没找到,并且因此废了不少时间,最终以此方法得到这些文件。

复制其中的AddInManager.dll的目录路径,然后使用记事本打开下载下来的Autodesk.AddInManager.addin及Autodesk.AddInManager-Automatic.addin,如图,将原来的AddInManager.dll的路径替换为本机AddInManager.dll的路径。
revit二次开发-HelloWorld,入门_第2张图片
接下来,将Autodesk.AddInManager.addin及Autodesk.AddInManager-Automatic.addin复制到目录C:\ProgramData\Application Data\Autodesk\Revit\Addins\2014
过程中可能会遇到“documentsandsettings拒绝访问”等问题,解决办法可以参照http://jingyan.baidu.com/article/1e5468f92afe08484961b793.html
打开revit,在附加模块-外部工具即可看到如图菜单。
revit二次开发-HelloWorld,入门_第3张图片
2、创建项目
1)打开VS,点击【新建项目】→【Visual C#】→【类库】,然后输入程序名称,如:Hello World。
2)点击【项目】→【添加引用】→【浏览】,在Revit安装目录下找到【RevitAPI.dll】和【RevitAPIUI.dll】并添加。
3)此步骤并非必须。
在【解决方案资源管理器】中,右键【RevitAPI】和【RevitAPIUI】,点击【属性】,将属性【复制本地】改False。
4)编写代码
revit二次开发-HelloWorld,入门_第4张图片
添加using及对应代码,代码如下:

using Autodesk.Revit;
using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
using Autodesk.Revit.Attributes;

namespace helloworld
{
    [Transaction(TransactionMode.Manual)]
    public class Command : IExternalCommand
    {
        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
        {
            try
            {
                TaskDialog.Show("Hello", "First Revit Program.");
            }
            catch (Exception e)
            {
                message = e.Message;
                return Result.Failed;
            }
            return Result.Succeeded;
        }
    }
}

5)选择【项目】→【属性】→【调试】→【启动外部程序】,找到Revit安装目录,选择Revit.exe,点击保存。然后点击启动生成,在Debug目录下会生成HelloWorld.dll
revit二次开发-HelloWorld,入门_第5张图片

3、部署插件
1)打开目录“C:\Users\你的用户名\AppData\Roaming\Autodesk\Revit\Addins\2014”,创建一个addin文件,如HelloWorld.addin,用记事本打开编辑,添加如下内容:


<RevitAddIns>
    <AddIn Type="Command">
    <VendorId>mirorVendorId>
    <Text>Hello RevitText>
    <Description>Hello World to Revit.Description>
    <FullClassName>helloworld.CommandFullClassName>
    <Assembly>E:\1hololens\projects\revit\helloworld\helloworld\bin\Debug\helloworld.dllAssembly>
    <AddInId>2A7F31C5-8FDE-417F-8FE7-CF38768A5D69AddInId>
    AddIn>
RevitAddIns>

其中,各个字段的意义如下:
【VendorId】,开发商Id,可以自己随意取名。
【Text】,Revit中插件的名称。
【Description】,插件的描述信息。(可不写这项)
【FullClassName】,类名。注意:得填写完整的【命名空间.类名】,如本例的命名空间为helloworld,类名为command。
【Assembly】,需要加载的程序集的完整路径,调试的时候,可以填写debug目录下的dll路径。
【AddIn】,在VS的【工具】→【创建GUID】,选择注册表格式,可以取得,点击复制,粘贴到字段为“{2A7F31C5-8FDE-417F-8FE7-CF38768A5D69}”,删除前后括弧即可。

2)重启revit,可以看到你的第一个插件了。
revit二次开发-HelloWorld,入门_第6张图片

你可能感兴趣的:(Revit)