建筑信息模型及应用Revit建筑模型建立及二次开发.docx
《建筑信息模型及应用Revit建筑模型建立及二次开发.docx》由会员分享,可在线阅读,更多相关《建筑信息模型及应用Revit建筑模型建立及二次开发.docx(16页珍藏版)》请在冰豆网上搜索。
建筑信息模型及应用Revit建筑模型建立及二次开发
建筑信息模型及应用
实验报告
2021年11月
实验一使用Revit软件创建简单模型
一、实验内容
安装Revit软件,了解软件界面,学习创建墙、柱、梁等基本构件的简单操作。
二、实验目的
熟悉Revit软件的安装,初步了解基本建筑构件的绘制操作。
三、实验条件
计算机1台、AutodeskRevit软件1套。
四、实验步骤及结果
1.新建项目
点击软件图标,依次点击“新建—项目”,出现以下图1-1对话框,选择样板文件,点击“浏览”,找到DFD工业建筑样板2013文件,确定并在新建栏目下选择项目,确定,完成项目的新建。
图1-1新建项目
2.绘制标高
标高主要用来确定建筑本身在高度方向的信息,如层高、室内外高差等。
此建筑为单层建筑,主体梁底标高6.0m,辅房为两层,层高3m,室内外高差0.15m。
双击项目浏览器中“南立面”,进入项目的正立面,将在此立面上绘制标高,如下图2所示
图2绘制标高
3.放置柱子
在一层平面视图中,单击“建筑”选项卡“构建”面板中的“柱”工具。
在左侧实例属性栏中单击实例类型下拉栏,选择对应的H型钢柱类型,并在实例属性栏输入柱相应的顶部标高和底部标高。
如下图3所示。
图3修改柱子属性
将鼠标光标移动到轴网中柱的位置,单击左键放置柱,按下Esc键完成,通常柱放置的位置并不准确,这时需要进行调整。
选中柱,单击“修改”选项卡“修改”面板中“移动”工具,快捷键“MV”,如下图4所示,将柱移动到相应位置,按下Esc键结束,并依次完成所有柱的放置过程。
图4放置柱子并修改
4.绘制墙体
切换至“室外标高”视图,单击“建筑”选项卡“构建”面板中的“墙”工具,在左侧实例属性栏墙体类型下拉栏选择相应的墙体类型,选择墙体的底部限制条件为“室外标高”,顶部约束为“直到标高:
梁底标高”。
如下图5所示。
在视图区域单击鼠标左键,作为起点,沿墙体所在位置的轴线进行绘制,再次单击鼠标右键作为终点,按下Esc键,结束墙体的绘制。
依次绘制四周的墙体。
图5放置墙体
5.创建立面视图
RevitArchitecture中会随着项目的建立自动生成四个方向的常规立面,如下图6所示,。
图6三维视图
五、总结
在实验过程中遇到了很多麻烦,通过网上寻找教程过程指导以及老师同学的帮助,这些麻烦也都一点解决,通过这些经历我对结构建模有着自己一点心得体会。
一、结构建模前,首先要做好准备工作,收集好建模需要的全部资料。
二、Revit软件本身对电脑的要求配置很高,使用工作集以后能够将已建好的模型根据自己的需要在平、立、剖面视图或者三维视图里面任意的隐蔽,这样能够很大程度地减少电脑内存的占用,从而加速软件的使用速度。
如果不用工作集除了画图过程中电脑会很卡甚至频繁出现死机以外,而且建出来的模型的结构构件没有系统性,无法拆分,模型的利用率也就大大降低。
三、结构建模创建项目工作集时,工作集的划分尽可能地细化为好,工作集的细化有如下几点好处:
1)方便修改,不易混淆;2)方便结构模型的可视化管理,将结构模型逐层逐块分解;3)直接将Project进度计划文件直接导入就可以,从而避免重新定义结构树,提高工作的效率。
实验二使用Revit族编辑器
一、实验内容
利用Revit族编辑器创建自定义族模型。
二、实验目的
了解Revit族的概念,学习基本的族模型建模方法。
三、实验条件
计算机1台、AutodeskRevit软件1套。
四、实验步骤及结果
1.新建族—选择样板文件(基于墙的公制常规模型)
2.修改族类别(选择窗,勾选总是垂直)窗体在窗户插入点的包络,并且使窗户玻璃安装在墙体的任意位置。
主要步骤:
1.创建窗户
图1窗户正面图
图2窗户标高示图
2.创建二维详细构件(窗包络)
3.嵌套二维详细构件
(1)添加参考平面,设置参数“内墙距中心距离”
3.设定基本属性。
点击菜单栏中的“族类别和族参数”,弹出“族类别和族参数”对话框,如图2所示,过滤器列表中只勾选“管道”,随后在下方列表中,选择“管道附件”,在BIM中,阀门属于管道附件。
零件类型选择“标准”,圆形连接件大小选择“直径”。
图3设置参数
3.建模,确定一个工作平面,准备建模。
这里以“前立面”为基准面,做阀门的轮廓截面,标记好尺寸之后,确认此模型。
图4放置窗体模型
4.建立族类型参数,一般地,一个族文件包括多个族类型参数。
菜单栏【创建】---【族类型】,弹出“族类型对话框”,点击“参数添加”。
输入参数名称,参数类型,添加值或方程式等,确认参数。
五、总结
建族前要明确构件的所属类型,不同的构件不仅选择的族样板不一样。
在保证族的参数、功能化前提下,就是考虑族的大小了,因为族载入项目中占用的空间太多,会影响项目文件的读取、操作。
族的创建是一项非常消耗时间的工作,如果时间比较急,可考虑使用现成的族文件。
实验三简单的Revit二次开发
一、实验内容
搭建Revit二次开发环境,实现简单的自定义Revit外部命令和外部应用插件开发。
二、实验目的
熟悉Reivt二次开发的环境搭建,掌握外部命令、外部应用的基本开发步骤。
三、实验条件
计算机1台、AutodeskRevit软件1套、RevitSDK软件1套、VisualS软件1套。
四、实验步骤及结果
1.Revit二次开发环境搭建
1.下载安装VS搭建语言开发环境。
图1配置语言开发环境
2.下载RevitSDK开发库包,并安装配置。
配置AddinManager
SDK安装后包含了REVITSDK文件和AddInManager,插件用来允许外部二次开发代码。
在windows7以上环境中需打开显示隐藏文件才能进行看到下面的目录录:
\ProgramData\Autodesk\Revit\Addins\2019复制SDK文件下的Add-InManager目录下的AddInManager.dll和Autodesk.AddInManager.addin文件到上面的目录中,更改Autodesk.AddInManager.addin文件中的标签中的东西,里面的路径为SDK的实际安装路径,然后保存。
图2配置相关文件
4.打开revit,观察安装的附件插件是否安装成功
图3插入成功后的Revit
2.二次开发创建外部命令
具体步骤如下:
1、新建一个类库工程
2、引用Revit接口定义文件RevitAPI.DLL和RevitAPIUI.DLL
将复制本地属性改为False
3、命名空间引用
4、为命名类加属性
5、新建类从IExternalCommand派生
6、重载Execute()方法
7、在Execute中添加代码来实现命令功能
引入RevitAPI,RevitAPIUI后,属性中复制本地改为False.
图4Revit二次开发流程
3.外部插件开发
1.创建项目工程
图5创建插件开发项目
2.引用Revit相关API
图6引用API
图7选择需要引用的API
3.编写插件程序
本程序能够实现在Revit中调用时显示输出HelloWorld。
具体代码如下:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
usingAutodesk.Revit.DB;
usingAutodesk.Revit.DB.Architecture;
usingAutodesk.Revit.UI;
usingAutodesk.Revit.UI.Selection;
usingAutodesk.Revit.ApplicationServices;
usingAutodesk.Revit.Attributes;
usingSystem.Windows.Forms;
namespaceHelloWorld
{
[TransactionAttribute(TransactionMode.Manual)]
publicclassHelloWorld:
IExternalCommand
{
publicResultExecute(ExternalCommandDatacommandData,refstringmessage,ElementSetelements)
{
MessageBox.Show("HelloWorld","HelloWorld");
returnResult.Succeeded;
}
}
}
4.编译并生成链接文件
5.在Revit中导入编写的插件
五、总结
本次实验让我了解到了Revit二次开发的环境搭建步骤,二次开发步骤,体会到了Revit给建筑行业带来的伟大革新和巨大便利。
计算机在建筑行业的应用是一个成功的结合,对行业的实质性的变化。
实验四Revit建模与二次开发综合实验
一、实验内容
使用Revit软件对一个完整的建筑物进行三维建模,并构建二次开发命令插件实现特定建筑元素的检索。
二、实验目的
熟悉利用Revit软件构建完整建筑模型的基本操作,掌握RevitSDK中过滤器的使用方法。
三、实验条件
计算机1台、AutodeskRevit软件1套、RevitSDK软件1套、VisualS软件1套。
四、实验步骤及结果
1.创建项目
在Revit中,项目是整个建筑物设计的联合文件。
建筑的所有标准视图、建筑设计图以及明细表都包含在项目文件中。
只要修改模型,所有相关的视图、施工图和明细表都会随之自动更新。
创建新的项目文件是开始设计的第一步。
启动Revit软件,单击左上角“应用程序菜单”按钮,在弹出的下拉菜单中依次单击“新建”>“项目”命令。
2.绘制标高
在项目浏览器中展开“立面”项,双击视图名称“东立面”进入东立面视图,东立面如图1所示。
系统默认设置了两个标高:
标高1和标高2,可根据需要修改标高高度。
3.创建柱体
单击“建筑”选项卡>“构建”面板>“柱”下拉菜单>“结构柱”命令,在属性面板选择“混凝土-圆形-柱200mm”,在轴线的交点处单击插入结构柱。
图1东立面示图
4.绘制慕墙
打开“楼层平面:
F1”,单击“建筑”选项卡>“构建”面板>“墙”下拉菜单>“墙”命令,在“属性”栏中选择“幕墙”,修改“无连接高度”为7350,沿轴网Ⓐ绘制一面长10550mm的幕墙。
打开南立面,选择刚才绘制的幕墙,单击“修改|墙”选项卡>“模式”面板>“编辑轮廓”命令,对幕墙轮廓进行修剪。
单击“修改”选项卡>“模式”面板>“√”命令,完成幕墙轮廓的编辑。
图2南立面示图
5.添加门窗及内部场景创建
打开一层平面,单击“建筑”选项卡>“构件”面板>“门”命令,选择“单扇玻璃门800×2250mm”,沿墙体单击插入门,如图所示。
图3一层平面示图
6.创建屋顶
打开“楼层平面:
F1”,单击“建筑”选项卡>“构建”面板>“构件”下拉菜单>“内建模型”命令,在弹出的“族类别和族参数”面板中选择“屋顶”,进入模型的绘制。
图4楼层平面图
7.总体3D示图
图53D示图
8.进行二次开发
在VS中使用过滤器编写程序,统计模型中窗户数量,并编译成插件,嵌入模型,并展示统计结果。
具体代码如下:
//获得所有窗户
FilteredElementCollectorcollector=newFilteredElementCollector(doc);
//创建一个收集器
collector.OfClass(typeof(FamilyInstance)).OfCategory(BuiltInCategory.OST_Windows);
IListlists=collector.ToElements();
stringstrNsg=string.Format("当前模型有{0}个窗户",,lists.Count);
MessageBox.Show(strNsg);//显示窗体数量
FilteredElementCollectorcollector2=newFilteredElementCollector(doc);
ElementClassFilterclassFilter=newElementClassFilter(typeof(FamilyInstance));
ElementCategoryFiltercatFilter=newElementCategoryFilter(BuiltInCategory.OST_Doors);
LogicalAndFilterlogicalFilter=newLogicalAndFilter(classFilter,catFilter);
collector2.WherePasses(logicalFilter);
IListlist2=collector2.ToElements();
returnAutodesk.Revit.UI.Result.Succeeded;
}
}
9.编译并将插件添加到模型项目中
图6插件插入情况
10.点击运行插件查看运行结果
如图七所示,在项目中运行Filter,最终成功显示窗户数量。
图8运行结果
五、总结
在Revit中,族是其核心它贯穿于整个设计项目中,是最基本的构成单元,整个项目的实现都是通过族来实现的,要想真正掌握它必须先掌握族,只有先掌握了族才能说对整个软件有所了解,才能在项目设计中把自己的设计意图完整的表达出来,才能把软件的功能最大的发辉出来,才能真正的提高设计效率。
建筑设计从开始到建设施工,一个项目在不断的产生变化。
创建图纸是完成项目的手段之一,同时它也是一个探寻事实的过程。
建筑,经常会导致设计修改,Revit能在设计中快速地做出修改和变动。
用Revit进行施工图设计中其另一优势是明细表的创建,因现在建筑设计中紧向建设方提供门窗明细表是远远不能满足其需求的,往往建设方和施工单位还要花大量的人力对相应的建筑材料和装修材料作出统计,而这些数据的准确性还以人为有很大关系,但这些数据用Revit在建筑设计中已自动生成,你需要作的就是创建各种明细表。
以前一直接触的都是CAD二维图纸,需要发挥想象力来想象结构的样子。
运用revit软件建立三维结构模型,可以使技术交底工作变的更加简单化、直观化。
而且可以通过模型的建立过程来检察施工设计图纸不合理的地方,对于施工设计图纸会审有很大帮助。
在感受到它强大的同时,也还有很多需要进一步优化的地方。
随着BIM行业的不断发展,相信revit软件也会越来越成熟,对于revit软件的应用学习也将还有很长的路要走。
以上便是我对revit软件的一点简单感想。