Revit二次开发案例一(第1讲)

article/2025/9/28 18:02:53

这期起,将为大家带来二次开发的小案例讲解,通过借助Revit建模与二次开发,帮助大家快速提高开发水平,快快参加吧!!!

族实例是通过族类型创建的,而创建族实例是Revit二次开发尤其重要的,因此小伙伴们要熟练掌握族实例的创建方法。

族实例重要的方法

1 FamilyInstance.Host

此方法获取族实例的宿主;
2 FamilyInstance.rotate()

此方法来旋转族实例;
3 FamilyInstance.FilpFacing()
此方法可以翻转门窗的朝向;

4 FamilyInstance.Hand()
此方法翻转开门方向。

5 FamilyInstance.GetSubComponentIds()
Component.SuperComponent()
分别获取构件的子构件与父构件。

族实例的创建方法

创建族实例的方法名为CreateFamilyInstance,存在于Autodesk.Revit.Creation.Document以及他们的父类中,他们的对象可以从Autodesk.Revit.DB.Document.Create获得。

案例讲解

本文结合之前所学的知识,首先利用公制常规模型做一个名称为底座板的族,并添加实例参数角度(这里需要注意添加实例参数还是类型参数需要视实际情况而定);族模型如下:
底座板族
底座板族
添加的族参数
添加的族参数
然后利用二次开发,创建族实例,并获取族参数,修改其角度参数。(这里需要注意程序运行前需要将底座板族载入到项目)
程序关键代码及注释如下:


UIDocument uidoc = commandData.Application.ActiveUIDocument;Document doc = uidoc.Document;FilteredElementCollector collector = new FilteredElementCollector(doc);//建立过滤器collector.OfClass(typeof(FamilySymbol));//过滤族类型FamilySymbol familySymbol = null;foreach (var ele in collector){if (ele.Name == "底座板")//得到名称为底座板的族类型{familySymbol = ele as FamilySymbol;break;}}FamilySymbol fs1 = familySymbol;XYZ xYZ1 = new XYZ(0, 0, 0);//设置创建的族的位置FamilyInstance familyInstance = null;using (Transaction tran1 = new Transaction(doc))//创建事务(创建底座板族){tran1.Start("kaishi");familyInstance = doc.Create.NewFamilyInstance(xYZ1, fs1, StructuralType.NonStructural);tran1.Commit();}IList<Parameter> list = familyInstance.GetParameters("角度");//找到角度参数  使用名称来找到参数,因为revit2016为了避免得到重复的名字,//只能用GetParameters得到一个集合,如果你只用唯一的名字,那只用取list[0]就可以了Parameter parameter = list[0];using (Transaction tran2 = new Transaction(doc)){tran2.Start("kaishi");parameter.Set(20 * Math.PI / 180);//设置参数值为20度(这里需要注意设置的值为弧度,需要换算)tran2.Commit();               //1度=Math.PI/180弧度}

运行结果如下:
在这里插入图片描述
左为改变参数前的底座板 右为改变参数后的底座板

整个步骤为:

  1. 利用公制常规模型创建名称为底座板的族,并添加主要参数,如角度参数设为40度。
  2. 通过RevitAPI二次开发,找到类型为底座板的族,调用创建族实例的方法,创建族实例。
  3. 获取族实例的角度参数,修改其角度参数。
  4. 运行Revit,首先载入底座板族,运行程序。

注意事项:

  1. 在创建族模型时,添加的角度参数为实例参数,而不是类型参数,这样可以创建族实例后在修改实例的角度参数。如果是类型参数需要先获取类型参数进行修改,再创建族实例。
  2. 在二次开发中,长度单位为英尺,角度用弧度代替,需要进行换算。
  3. 运行程序前,需要先将族模型载入到项目中。

下期更精彩:

下一期将对程序进行升级,利用Revit二次开发自动载入族模型,并激活,还会介绍其他创建族实例的方法。

欢迎关注微信公众号,学到更多BIM知识
在这里插入图片描述


http://chatgpt.dhexx.cn/article/kSW4ucsc.shtml

相关文章

【REVIT二次开发教程】01-“你好,Revit”

本教程全程采用VS2022&#xff0c;Revit2022。 1.新建项目 打开VS2022&#xff0c;创建新项目&#xff0c;选择项目类型为C#&#xff0c;Windows&#xff0c;然后点击下一步。 2.添加引用 选择右上角【解决方案管理器】中的【依赖项】&#xff0c;右键点击&#xff0c;选择【…

运放的差分放大电路

该放大器的传递函数为&#xff1a;    若R1 R3 且R2 R4&#xff0c;则公式 1 简化为&#xff1a; 应用电路&#xff1a; 电路一&#xff1a; 用运放做电流采样&#xff0c;再用单片机AD采集处理。 注&#xff1a; 1、Rp10、Rp11、Cp8、Cp9&#xff0c;是对输入做的RC…

模电(十四)差分放大电路

目录 差分放大电路 双端输入双端输出 Q点分析 抑制共模信号 放大差模信号 双端输入单端输出 Q点分析 差模信号分析 共模信号分析 单端输入双端输出 单端输入单端输出 四种接法比较 具有恒流源的差分放大电路 差分放大电路的改进 差分放大电路 采用引入支流负反馈&a…

差分放大电路基础

该放大器的传递函数为&#xff1a; 若R1 R3 且R2 R4&#xff0c;则公式 1 简化为&#xff1a; 应用电路&#xff1a; 电路一&#xff1a; 用运放做电流采样&#xff0c;再用单片机AD采集处理。 注&#xff1a; 1、Rp10、Rp11、Cp8、Cp9&#xff0c;是对输入做的RC滤波&…

6.深入浅出:差分放大电路——参考《模拟电子技术基础》清华大学华成英主讲

如果你想理解差分电路共模信号和差模信号&#xff0c;共模放大倍数&#xff0c;差模放大倍数&#xff0c;共模抑制比等&#xff0c;本文或许能给你比较系统的认知&#xff0c;主要包括&#xff1a; 什么是零点漂移&#xff1f; 引入差分电路 两个共射极放大电路对称布置&…

差分放大电路的构成(零点漂移、差分放大电路是怎么构成的、共模信号、差模信号)

差分放大电路的构成 直接耦合放大电路 零点漂移现象 输入短接&#xff0c;输入为零的时候&#xff0c;输出不是一条直线&#xff0c;就是交流量不是零。 一、产生原因 温漂&#xff0c;温度变化使静态工作点发生变化&#xff0c;产生零点漂移 二、抑制温漂的方法 加射极电阻…

干货 | 教你轻松掌握差分放大电路,看完这篇不踩坑

要想掌握差分放大电路&#xff0c;首先就要知道什么是差分放大电路以及它的作用。 差分放大电路是模拟集成运算放大器输入级所采用的的电路形式&#xff0c;差分放大电路是由对称的两个基本放大电路&#xff0c;通过射极公共电阻耦合构成的&#xff0c;对称的意思就是说两个三极…

全差分运算放大器浅析

全差分放大器(Fully-Differential)是一种应用在将单端信号转换为差分信号&#xff0c;或者将差分信号转换为差分信号的芯片。 全差分放大器的配置特点&#xff0c;就是全对称匹配。即两侧输入阻抗配置完全一致&#xff08;阻抗包括源内阻&#xff09;&#xff0c;反馈配置完全…

运算放大器——4种基本运放电路(同相放大、反相放大、加法器、差分放大电路)实际设计中需要考虑的实际问题

运算放大器——4种基本运放电路(同相放大、反相放大、加法器、差分放大电路)在实际设计中需要考虑的实际问题 前言 第一篇博客就从运放入手吧&#xff0c;话不多说。正文开始&#xff1a;想必大家对运放电路都熟悉的再不能熟悉了。可是这里为什么又再拿出来写呢&#xff1f;肯…

高压电压采样之差分放大电路

在高压电压采样方案研究一文中提到&#xff0c;可以使用差分放大电路进行高压电压采样。如下图&#xff1a;   该方案有缺陷&#xff0c;如下。整车车身与12V电池负极连接到一起&#xff0c;同属于低压电路&#xff0c;我们可以称之为大地。没有绝对的绝缘体&#xff0c;电池…

电子电路:差分放大器分析

1. 差分放大器与共模抑制比 1.1差分放大器 差分放大器有两个输入端和一个输出端&#xff0c;它可以获取两个输入电压之间的差值&#xff0c;并将这个差值放大后送到输出端&#xff0c;差分放大器的模型如下&#xff1a; 输入电压 v i 1 , v i 2 v_{i1}, v_{i2} vi1​,vi2​…

常规放大电路和差分放大电路

常规放大电路和差分放大电路 0、小叙闲言 有一个两相四线的步进电机&#xff0c;需测量其A、B两相的电流大小&#xff0c;电机线圈的电阻为0.6Ω&#xff0c;电感为2.2mH。打算在A、B相各串接一个0.1Ω的采样电阻&#xff0c;然后通过放大电路&#xff0c;送到单片机采样&…

AD623单电源供电差分放大的电路设计与仿真

目录 一 前言 二 需求分析 三 放大电路设计与仿真 3.1 AD623参数 3.2 电路设计 3.3 仿真验证 一 前言 AD623单电源供电差分放大 二 需求分析 最近需要做一个拉力检测模块&#xff0c;由于所选购的拉力传感器输出的是差分信号&#xff0c;且差模电压是mv级别的&#xff…

差分运算放大器的计算

难得手工计算分析了一下&#xff0c;居然计算出来了&#xff0c;挺高兴的&#xff0c;之后要更努力 分析的关键是放大器的虚短和虚断。 首先看从V2经R3和R4到地这一回路。严格来说&#xff0c;经过R3的电流应该等于流进放大器正相输入端的电流和经过R4电阻的电流之和。但是放…

差分放大电路及动态分析

由温度引起的零点漂移成为温漂&#xff0c;引入负反馈 加入Re电阻 从抑制温度漂移的角度来说 希望Re越大越好 但是会导致放大倍数变小 加一个镜像的电路可以让两边一起浮动 但是两个Re可以共用一个 于是改成下面的 形式 Re电阻现在的作用变成了原来的两倍 可以将Vbb共用…

(十)【模电】(多级放大电路)差分放大电路

[模电专栏] 文章目录 A 差分放大电路A.a 零点漂移现象及其产生的原因A.b 长尾式差分放大电路的组成A.c 长尾式差分放大电路的分析A.c.a 静态分析A.c.b 动态分析 A.d 差分放大电路的四种接法A.d.a 双端输入单端输出差分放大电路A.d.b 单端输入双端输出差分放大电路 A.e 具有恒流…

差分放大电路在信号传输的作用及设计原理

一、为什么要有差分放大电路 1.将一个信号从一个地方传输到另一个地方&#xff0c;如果近距离的传输那么直接用串口&#xff0c;IIC等常用的通信方式就行了&#xff1b;如果长距离传输呢&#xff1f; 2.长距离传输至少要考虑传输过程中&#xff0c;外界环境对信号的影响。 3.先…

多级放大电路以及差分放大电路

一.多级放大电路 1.电压放大倍数 多级放大电路的电压放大倍数是每一级电压放大倍数之积。得到这个结论的前提是每一级的电压放大倍数是在带负载的情况下得出来的。 例如&#xff1a;如果现在有一个三级放大电路&#xff0c;第一级的输出电阻一定是第二级的输入电阻&#xff0…

差分运算放大电路原理解析

差分运算放大电路&#xff0c;对共模信号得到有效抑制&#xff0c;而只对差分信号进行放大&#xff0c;因而得到广泛的用。 注&#xff1a; &#xff08;1&#xff09;共模信号   共模信号&#xff08;common mode signal&#xff09;是指同时作用于多个电路或电子设备上的信…

关于差分放大电路,你了解多少?

关注“心仪脑”查看更多脑科学知识的分享。 经常做脑电实验&#xff0c;大家或多或少听说过差分电路&#xff0c;差分放大器等术语&#xff0c;但是&#xff0c;关于EEG放大器为什么要使用差分放大电路这种设计&#xff0c;你了解多少呢&#xff1f;下面请跟随我来了解一下吧。…