溜溜问答 > 模型制作 > Revit > 如何创建Revit二次开发插件?
Wengxiu
Wengxiu
邀请你来回答
84人阅读 2021-12-02

如何创建Revit二次开发插件?

我要回答
1个回答

Revit插件制作实例步骤:
1.创建你的第一步骤插件

启动 viSUal c# 速成版开发环境:
打开 viSUal c# 2010年速成版使用 Windows 开始菜单,选择所有程序,然后 Microsoft viSUal studio 2010 速成,然后 Microsoft viSUal c# 2010年速成版的子菜单项。

2.创建一个类库项目:
里面 viSUal c# 速成版,在文件菜单上单击新建项目。在已安装的模板选项卡的左侧窗口中,单击 viSUal c#。在中间的窗口中,单击类库。在名称框中输入 lab1placegroup。然后单击确定。

3.viSUal c# 速成版将会为您创建一个默认的代码项目并在代码窗口中显示的代码。
保存项目:
在文件菜单上单击全部保存。在显示窗口中键入 c:\test 在位置框中的,然后单击保存。

4.添加引用的文件:
在 viSUal c# 速成版窗口右侧的解决方案资源管理器窗口中,右键单击引用,然后单击添加引用的文件

5.单击浏览选项卡在添加引用对话框中的,浏览到 Revit 产品安装的子文件夹。(子文件夹路径上取决于在安装有 Revit 建筑 201x。默认的路径是 c:\Program files\Autodesk\Revit architecture 201x\Program)。

路径不同可能因您使用 Autodesk Revit安装的位置。

您将从该文件夹中添加两个引用文件。选择 Revitapi.dll,在按住 ctrl 键和选择 RevitapiUI.dll,然后单击确定。现在这两个接口在您的项目中引用的 dll 文件。所有 Revit api 都公开的这些接口文件和您的项目可以使用那些可用的 api。
6.设置引用的文件副本属性值:

在解决方案资源管理器窗口中您看到在步骤 5 中,单击 Revitapi 引用节点下。在属性窗口中,单击复制本地属性,然后单击下拉列表中,选择 false。重复相同的步骤,RevitapiUI 的复制本地属性值更改为 false。

7.设置目标.net 框架:
注意: Autodesk Revit 2011 支持.net framework 3.5 的使用。欧特克 Revit 2012 以及更高支持.net 框架 4.0,viSUal c# 2010年表示使用默认情况下的使用。需要以下步骤,以便使用正确的版本。如果您正在使用的 Revit 体系结构版本支持.net 框架 4.0,你可以跳过步骤 7、 8 和 9。

在解决方案资源管理器窗口中,右击 lab1placegroup 项目,然后单击属性

8.在显示项目属性表单中,请单击应用程序选项卡上的窗口左侧,单击目标框架下方的下拉列表,然后单击列表中的.net framework 3.5 选项。

9.下面的消息框会显示要求您确认。单击是以确认更改。

10.添加的代码:
class1.CS 在解决方案资源管理器窗口中的显示代码编辑窗口,请双击。删除在此窗口中的所有内容,然后键入下面的 c# 代码。
包括例如智能感知功能的使用 ,与开发经验我们建议您键入从本指南,而不是复制和粘贴代码。说,如果你也可以复制并粘贴到 viSUal c# 速成版代码窗口中,虽然这减少了从直接与代码工作获得的经验,最好是自己写一遍。
using system;
using system.collections.generic;
using system.linq;
using Autodesk.Revit.db;
using Autodesk.Revit.db.architecture;
using Autodesk.Revit.UI;
using Autodesk.Revit.UI.selection;
using Autodesk.Revit.applicationservices;
using Autodesk.Revit.attributes;

[transactionattribute(transactionmode.manual)]
[regenerationattribute(regenerationoption.manual)]public class lab1placegroup : iexternalcommand{ public reSUlt execute( externalcommanddata commanddata, ref string message, elementset elements)
{ //get application and document objects
UIapplication UIapp = commanddata.application;
document doc = UIapp.activeUIdocument.document; //define a reference object to aCCept the pick reSUlt.
reference pickedref = null;

//pick a group
selection sel = UIapp.activeUIdocument.selection;
pickedref = sel.pickobject(objecttype.element, "please select a group"); element elem = pickedref.element;
group group = elem as group; //pick a point
xyz point = sel.pickpoint("please pick a point to place group"); //place the group
transaction trans = new transaction(doc);
trans.start("lab");
doc.create.placegroup(point, group.grouptype);
trans.commit(); return reSUlt.SUCCeeded;
}
}

不要太担心看不懂代码,我们在下面将会看到这些代码的效果,慢慢的体会其中的意思!

11.保存该文件:
在文件菜单上单击全部保存。
12.生成项目:

注意: 如果您正在使用 Revit 2012 api,您将看到一个警告,指出 'Autodesk.Revit.db.reference.element' 已过时。此时,不要担心此警告
如果您正在使用 Revit 2013 年和更高的 api,你将需要替换下面的代码行:
element elem = pickedref.element;

替换成
element elem = doc.getelement(pickedref);

就这么简单 !这就是一个简单的Revit插件!

查看全部
2021-12-02
(3) 回复 采纳

相关问题

Revit 二次开发中如何得到楼层平面数据?
共1条回答 >
墨斗: 想掌握Revit的二次开发需要了解如下内容:1、bim平台软件的操作、功能,比如Revit软件的操作和功能了解。2、了解平台软件的api的用法,比如Revitapi3、阅读Revitsdk中的帮助文档和例程代码。4、自己手动编写几个简单的小程序来学习bim
回复
Revit二次开发斜板自适应梁
共1条回答 >
信: 有很多插件,功能不一样。像建模大师主要是快速翻模(CAD转化)、快速建模和模型深化。族库大师是提供常用族的插件,总体上是提高Revit使用效率的。
回复
Revit 二次开发 什么 语言?
共1条回答 >
Gawyn Leung: 首先会一种编程语言,然后看Revit软件api接口,就可以写程序了
回复
如何系统的学习Revit二次开发?
共1条回答 >
朱少东: AliasMaya:玛雅Rhino:犀牛Grasshopper:主要是为了提供设计师一个新的模型工具,采用程序算法生成新造型的方法,是一个与Rhino紧密结合的图形算法编辑器,不同于RhinoScrip,不需要有任何的程序相关知识,通过一些简单的流程方法就可以达到设计师所想要的模型。原理基本上和GC是类似的,图形化的界面比GC来得更友好一点。ParaCloud:犀牛的插件.可以将Excel™的电子表格转换成功能强大的参数建模器,用以扩充CAD软件的功能。ParaCloud提供Rhin....
回复
Revit如何创建剖面?
共1条回答 >
Rice大米: 1、打开软件(如图所示),接着打开我们画好的模型,切换至场地标高。2、在视图选项卡选择剖面按钮,在模型的中间绘制一条直线,绘制完成后会出现剖面符号标记(如图所示)3、接着我们在软件左侧项目浏览器中找到(剖面1),点击打开,可以看到这是剖面图已经创建完成了。4、剖面图创建完成后,可以将生成的文件导成CAD文件,选择导出设置,新建导出设置,加载ISO标准图层,点击确定。5、在软件主界面选择导出为DWG格式,导出设置选择上面设置的(设置1)点击下一步,重命名进行保存,就导出完成了。6、导出后的剖面图C....
回复
发表成功!
感谢您的分享!
好的
官方微信群

(微信添加“妙妙”或“笑笑”,邀您进群)