Revit 二次开发入门
文章平均质量分 68
叶雄进-橄榄山
中国Revit二次开发技术推动者和l领军者
展开
-
第十二届Revit开发训练营4月4日~9日在武汉举办
北京橄榄山软件有限公司 [2021]1号 关于举办第十二届Revit开发实战训练课程的通知各相关单位: 为贯彻落实住建部《2016-2020年建筑业信息化发展纲要》,提升国内建筑行业BIM科研和课题创新能力,强化企业和高校在各个分领域创新思想和工具应用,实现智慧建造、更好的设计与建造的信息交流,提高工程建设行业工作效率,促进本单位在BIM时代用创新技术成为时代先锋。北京...原创 2021-03-25 16:10:01 · 1184 阅读 · 1 评论 -
编程如何读取Revit墙高
Revit中如果一面墙的顶部是附着一块楼板,这时候如何获取到墙的实际高度?原创 2014-11-10 12:10:20 · 4901 阅读 · 0 评论 -
Autodesk 举办的 Revit 2015 二次开发速成( 1.5 天),教室培训, 地点武汉
2014年8月26日9:00 – 17:002014年8月27日9:00 – 12:00原创 2014-07-29 23:12:47 · 4790 阅读 · 0 评论 -
如何用Revit API获取Conduit、FlexPipe的类型
问题:已经获得Conduit对象和FlexPipe对象,我该如何获取它的类型。我现在获得到了实例,实例中得不到类型参数,那么我现在想通过这个实例获得它对应的ConduitType、FlexPipeType,我该如何做?如果是FamilySymbol的话,里面有一个变量Symbol可以直接获得,但是这个想了好久没有办法做到。答:几乎所有实例对象都提供GetTypeId() 方法,这个方法会返回实例对原创 2014-03-26 13:02:40 · 3242 阅读 · 0 评论 -
在体量文件中加载族,然后想放置构件。放置构件用什么函数?
现在在revit中使用C#做一些二次开发的工作,现在碰到一个问题:新建一个体量文件,编程实现加载族文件(已解决),现在想将族文件的构件放置到进来。如何做?需要用什么函数?请教一下。加载加来后,你可以得到体量族,以及其中的类型。然后应该调用NewFamilyInstance()方法插入体量构件到模型中。原创 2013-10-12 10:58:00 · 3669 阅读 · 0 评论 -
想获取项目浏览器中出现的所有标准族该用什么条件?
你直接用Family这个类名来获取就可以了。请看下面代码: public void GetAllFamilies() { Application app = this.Application; Document doc = this.ActiveUIDocument.Document; FilteredEleme原创 2013-07-26 14:09:00 · 3150 阅读 · 4 评论 -
在Revit中如何显示附件模块(Add Ins) 这个命令页?
在windows 7 32-bit OS 上装了 Revit Architecture 2013, 但在Tab 上没有看到 Add Ins (附加模块), 通常应该在 Manage 或 Modify 旁边。怎样让Add Ins (附加模块)出现? 同样我在windows 7 64-bit OS 上装了 Revit 2013, 但在menu 上也没有看到 Add Ins, 怎样让Add Ins 出原创 2013-08-22 13:58:05 · 12355 阅读 · 9 评论 -
Autodesk 2013 DevCamp China 2013年6月19-21日在京胜利举行
会议的议程和简介请看:www.autodesk.com.cn/adndevcamp看了这么多年国家和政府会议总结,使我很难脱离胜利这两个字来概括会议的结果。:) 习惯的力量太强大。事情也确实如此,这次在北京腾达大厦举行。腾达大厦最近感觉重新装修过似的,会议室的感觉比往年好多了。 :)首日大家都在一个大会议室,内容专注在云和移动开发。参会人数达100多人,会议室坐地满满的。AutoCAD 也走向云原创 2013-06-25 16:30:16 · 3587 阅读 · 5 评论 -
欧特克开发者训练营(Autodesk DevCamp 2013)的视频教程可以下载
Autodesk 2013 DevCamp China 2013年6月19-21日在京举行。该活动详情请看 http://blog.csdn.net/joexiongjin/article/details/9170205在该活动中的所有课程全部录制下来,可以到Autodesk AU China上去下载,下载列表如下。演讲人员来自Autodesk上海研究院的2为资深研发人员(刘培君,夏晓飞)和我本人原创 2013-08-21 16:35:52 · 5178 阅读 · 9 评论 -
Revit编程把对象加入到选择集中
接到这个问题:怎么在用Api生成模型线或其他新生成的图元之后,选择刚生成的图元,并在revit文件中显示?答:Revit对象生成后,你可以把获得的对象加入到选择集中。Selection.Elements.Add(Element elem)比如这段代码是生成一根模型线线,然后把线加入到选择集中。 Document doc = ; //get the原创 2013-07-26 13:23:21 · 5064 阅读 · 1 评论 -
获取模型线的端点引用来创建标注
我现在需要创建一个尺寸标注,标注的一端在模型线的端点上,请问如何获取一条模型线端点的引用。原创 2014-08-11 11:03:12 · 2959 阅读 · 0 评论 -
Revit 安装补丁的下载链接
Revit每个大版提供几个补丁.一般一年内发布3个左右的补丁,用于修正首发版的问题.原创 2014-09-12 15:42:30 · 4347 阅读 · 2 评论 -
第七届全国Revit开发实战训练课程2018年元旦在武汉举行,叶雄进领衔主讲
各相关单位:为贯彻落实《国家中长期教育改革和发展规划纲要(2010-2020年)》,提升国内建筑行业从业者BIM技能应用水平,改善企业BIM应用型人才紧缺的现状,提高全国工程建设行业相关单位对Revit二次开发的作用的认知,促进BIM工作流更加顺畅以及研发出符合本单位全面需要的BIM软件,北京绿色建筑产业联盟联合北京橄榄山软件有限公司共同举办全国Revit研发实战训练课程。现将有关事项通知如下:一原创 2017-11-18 22:27:33 · 2272 阅读 · 0 评论 -
全国第六届Revit开发实战训练课程将开课(8月7-12,北京)
各相关单位:为贯彻落实《国家中长期教育改革和发展规划纲要(2010-2020年)》,提升国内建筑行业从业者BIM技能应用水平,改善企业BIM应用型人才紧缺的现状,提高全国工程建设行业相关单位对Revit二次开发的作用的认知,促进BIM工作流更加顺畅以及研发出符合本单位全面需要的BIM软件,北京绿色建筑产业联盟联合北京橄榄山软件有限公司共同举办全国Revit研发实战训练课程。现将有关事项通知如下:一原创 2017-05-18 08:58:31 · 2432 阅读 · 1 评论 -
Revit二次开发从入门到精通学习之路, (含Revit二次开发教程下载)
Revit二次开发从入门到精通学习之路 Autodesk Joe Ye叶雄进 Mar. 20 2013 MSN:yexiongjin@hotmail.comRevit在国内的应用越来越广泛, Revit 2013在速度和功能上有显著的提高,所以现在对Revit应用关注更多。Revit二次开发亦受到大量的关注和评估,许多国内朋友想了解学习Revit原创 2011-02-09 14:23:00 · 92656 阅读 · 59 评论 -
关于举办第三届全国Revit开发实战训练课程的通知
关于举办第三届全国Revit开发实战训练课程的通知各建筑设计、施工、咨询、业主、高校等单位: BIM在工程建设行业的应用越来越广泛和深入,在教育、设计、施工、咨询等方面发展迅速。 随着随着应用的深入,广大BIM用户对于Revit功能的需求呈现出多样化,Revit软件现有功能不能满足多样化的需要。比如有些用户希望将Revit的模型数据导出到本单位既有ERP平台里,有些用户希望能将DWG里面的设计的幕原创 2016-06-23 13:53:48 · 5947 阅读 · 0 评论 -
Revit 2017 编程需要用Visual Studio2015 +.NET Framework 4.52
一年一度的Revit产品发布时刻,我们抢先想各位介绍下Revit 2017的变化和新功能Major changes and renovations to the Revit API API changes.NET 4.6All Revit API binaries are now built targeting .NET 4.5.2. However, Revit uses the runtime原创 2016-04-18 21:51:55 · 16575 阅读 · 1 评论 -
博主应Autodesk邀请,以2D到3D的跨越为主题做网络讲座(4.23号下午)
橄榄山软件首席技术官叶雄进应Autodesk欧特克中国的邀请,在工程建设行业三维入门级整体解决方案网络研讨会中做题为《飞越2D到3D的鸿沟,用橄榄山快模实现BIM盈利》 的讲座。 欧特克在提出BIM概念已经风靡全球,在过去近10年里将大中型的设计,施工和业主已经推动起来了。现在中小型设计,施工和业主还没有实质性的开始走向BIM。此次讲座可以欧特克向建设行业吹起冲锋的号角,全面向工程建设行业来原创 2015-04-13 09:35:36 · 2449 阅读 · 0 评论 -
与大学生谈学习BIM软件开发所需要的准备
一个大学生的来信:我是大学土木工程学院大四本科生。打扰您宝贵的时间。通过网上,得知您的公司和您本人。关于bim是最近一段时间了解到这一领域,在国内是新方向,对此有一种说不出来的好奇心。而且研究生阶段,上交邓雪原老师所研究的方向也是bim的研究和应用。在这里想听听您的指点,关于以后有意在软件开发这一方向上的发展道路,和现阶段我应该准备的东西。对于自己的评价,土建的本科学习只是懂其皮毛没有深入,二关于原创 2015-03-11 22:41:51 · 11891 阅读 · 6 评论 -
编程如何实现使用新建的Revit楼板族,创建楼板构件
问题:创建了一个新厚度的楼板族。FloorType newFamilyType = typeMoBan.Duplicate(sFmailyName) as FloorType;在板的创建接口没有设置族的地方啊Floor newFloor = m_ReviteDoc.Create.NewSlab(temCurveArr, simLevelInfo.FloorLevel, banSlopArrowLi原创 2014-12-18 11:35:27 · 8988 阅读 · 0 评论 -
Autodesk Revit 和Naviswork 众多二次开发培训视频教程一键下载
由于在ADN原网页中的提供ADN制作的视频培训教程下载页面在改版中需要删除,我们把Autodesk AEC行业(含Revit ,Naviswork等)的二次开发教程下载列在这里。需要说明下,包含所有历史培训教程,从时间可以看出录制日期。点击目标课程直接可以免费下载。enjoy it. Webcast Date DevTV: Navisworks .net plugin 1 1原创 2013-05-10 12:10:24 · 9950 阅读 · 8 评论 -
Revit编程如何提取轴线信息
问题描述:在Revit里面如何提取当前视图中轴网的信息,例如名称,标高,坐标等等?Solution:这个问题在Revit编程时是非常典型的应用情况。找到目标对象,然后获取目标对象上的信息。找到目标对象需要使用Revit的过滤机制,最核心的也是比用的类就是FilteredElementCollector类,他提供了添加过滤条件的方法,并且提供方法来获取满足条件的对象集合。获取对象信息需要用Revit原创 2013-04-16 10:47:40 · 7875 阅读 · 5 评论 -
Revit插件加载,addin文件的设置
问题描述:Revit二次开发使用addin加载时,出现如下错误。 “外部工具-不存在于附加模块对应的供应商ID节点” “无法初始化附加模块“helloworld.addin”,因为附加模块注册表中缺少所需的供应商ID节点值。可根据供应商ID节点识别附加模块应用程序的供应商。如要Revit运行附加模块,必须注册清单“helloworld.addin”文件中定义的节点” 请问这个要如何解决,谢谢 ad原创 2012-12-17 15:24:11 · 27940 阅读 · 9 评论 -
我开发的LevelGenerator 一键创建多个楼层的插件发布了,公开源代码
我开发的一个Revit插件LevelGenerator 已经在Autodesk Labs上发布了。定义好楼层高度和命名规则后,一个按钮就把所定义的楼层加入到定义表中。点击“OK”就会把楼层插入到模型中。100个具有相同层高的楼层也就是几秒钟就可以创建成功。插件可以永远免费使用。这个插件是针对全球用户,考虑到不同的国家的单位设置。抱歉的是英文是界面,readme的步骤说明也是英文写的。层高单原创 2012-02-01 10:01:15 · 6140 阅读 · 7 评论 -
【AU China 讲座视频下载】 50分钟开发一个Revit实用功能
上周我在AU China 在线课程上讲了一个专题: 50分钟开发一个实用功能。从0开始讲解了如何创建命令,现场写出了命令的源代码,并对每一行源代码进行了解释说明。演示了如何编译加载运行命令。同时大家可以学习Room API的功能,还有如何计算对象的质心位置。请大家前往下载:http://au.autodesk.com.cn/QueryCourseAction.do?id=2582原创 2011-10-26 14:49:13 · 2751 阅读 · 0 评论 -
怎样从柱参数值中获取对应的Level对象
这里有一个朋友jude2008的留言,这里转为一博文:叶老师你好,我有一个问题向您请教,现有一个COLUMN A,我新建一个COLUMN B,我想让B的BASE LEVEL等于A的TOP LEVEL,这个代码要怎么表达.我用get_Parameter(Autodesk.Revit.DB.BuiltInParameter.FAMILY_TOP_LEVEL_PARAM)这个方法一直取不出来要的值.,期原创 2011-10-26 22:01:07 · 4359 阅读 · 7 评论 -
如何识别明细表,如何读取明细表信息?
这里回答jude2008的提问:叶老师,您好,我想问一下,REVIT 2011里有没有提供对VIEWTYPE是SCHEDULE的相关API操作,也就是PROJECT BROWSER 中Schedules/Quantities 底下的那些SCHEDULE,如果我想编程对其参数进行读取(如获取行或列中的值)应该怎么做? 明细表在Revit2012以及之前的版本都使用View类来表示,但是使用V原创 2011-11-14 23:12:02 · 6214 阅读 · 2 评论 -
Revit 高效对象过滤深入讲解 下载
这是我刚刚完成的Revit二次开发的另一个视频课程:高效对象过滤。对象过滤是Revit二次开发很重要,也是最基本的。了解这个对提高你程序的速度很有帮助。另外有助于让你全面了解Revit对象过滤的内容。点击下面链接下载。http://download.autodes原创 2011-09-20 00:29:43 · 4360 阅读 · 1 评论 -
Revit 2011 可否用API来连接Rvt文件?
<br />问题:<br /> <br />REVIT 2011的API中如何实现链接rvt文件。<br />sdk里面chm文件里面好像只有导入CAD的。<br />我需要在我的rvt文件里面导入另外几个rvt文件进来并显示。<br />答复:<br /> <br />Revit 2011没有提供API来连接外部rvt文件。<br />Revit 2012 也没有开放链接外部rvt的API,但是2012提供了更多的对已经连接进来的模型的管理和查询。ExternalFileReference - A non原创 2011-05-06 10:08:00 · 3756 阅读 · 1 评论 -
近几年Revit API英文讲座
如果你是ADN会员,直接点击链接即可进入下载。如果你不是ADN用户,可以在如下页面找到所有的下载链接:http://www.adskconsulting.com/adn/cs/api_course_webcast_archive.php 下面是各个讲座录像的介绍:Revit 2012 Webcast: Revit 2012 API Updates - May原创 2011-06-23 10:04:00 · 2066 阅读 · 0 评论 -
初学编程者开始Revit 二次开发自学教程
<br /> <br />ADN 的AEC WorkGroup的Saikat 和我一起开发了一个面向初学编程,但是对Revit产品熟悉的爱好者学习Revit二次开发的自学课程。一共七课。这个课程面向全球的Revit用户,用英文表达的。其中的第1,4,5课是我主笔。ADN Team的Kristine是这个系列项目的主管,非常谢Kean,Mikako大力的帮助和支持。<br /> <br />请向有兴趣的朋友们推介这个免费的课程,有视频,有代码,有文字表达。<br /> <br />http://usa.aut原创 2011-05-24 09:42:00 · 11350 阅读 · 0 评论 -
读取参数类型是一个对象的参数值
对于字符串,整形,长度(double)型,我们可以分别通过Parameter.AsString(), Parameter.AsInteger(), AsDouble()等来访问。那么如果是Material类型的,怎么获取具体这个材料是什么呢? 此时存在在参数中的实际上是一个元素id即ElementId。可以用Parameter.AsElementId()方法获得元素Id,然后用Document.get_Element(ElementId id) 方法获取这个材料对象。原创 2011-03-08 18:28:00 · 2713 阅读 · 0 评论 -
编程把新创建的视图放到最前面,让用户可见
用编程的方式创建视图后,如何把这个视图放到最前端,让用户可见呢? 在Revit 2012版提供了一个方法来实现这个功能:UIDocument.AciveView(). public View ActiveView { get; set; } 在参数中指定目标视图对象即可。这个函数使用需要注意的一个问题。使用了这个方法的外部命名必须使用手动的事务模式,而且调用它之前,不能有打开的事务原创 2012-02-21 13:18:12 · 2737 阅读 · 0 评论 -
Revit API 历史回顾,二次开发现状和中国二次开发的展望
原来写过一篇文章 Revit二次开发现状(2009)发布在我同事BarbaraHan的博客中。现在更新一下文章发布在自己的博客里。 叶雄进 Joe Ye 2012.2.14Revit被收购之前,前东家Revit Technology Corporation计划提供完整的解决方案,提供设计人员所需要的全部功能。这个想法针对美国或局部地区是可以的,但是如何兼顾全球的市场,却非一个公司所达到。原创 2012-02-14 10:58:45 · 5432 阅读 · 0 评论 -
Revit二次开发时,处理Revit里面的坐标转换
在软件操作上看,AutoCAD的所有定位都以坐标来进行。相对的在Revit没有坐标这个概念,Revit里面对象的位置关系都是相对位置关系。但是在Revit内部,坐标是实实在在的。没有坐标无法管理对象的位置。在做Revit二次开发,特别是涉及到几何和位置关系时,需要密切关注对象的坐标,以及不同坐标系之间的坐标转换。Revit里面的几种坐标系: 模型坐标系: 也理解为全局坐标系 视图坐原创 2012-11-20 11:39:09 · 16545 阅读 · 5 评论 -
编程设置房间以及墙的上部楼层
转载请复制以下信息:原文链接: http://blog.csdn.net/joexiongjin/article/details/8000754作者: 叶雄进 , Autodesk ADN文章背景:在创建墙的时候,可能用户没有设置墙的上部楼层。是否可以通过编程的方式一次性的全部设置墙的上部楼层?同样的是否可以编程设置房间的上部楼层?这是可以通过编程实现原创 2012-09-20 16:54:13 · 22687 阅读 · 0 评论 -
Revit中如何编程旋转一个对象
转载请复制以下信息:原文链接: http://blog.csdn.net/joexiongjin/article/details/7924635作者: 叶雄进 , Autodesk ADN问:在revit中可以用RotateElement函数实现图元的转动,但是我不太清楚转动是以什么为参照物,可否以图元本身所在的点以及图元之外的一点所确定的直线为参照线旋转pu原创 2012-08-30 12:04:30 · 11009 阅读 · 2 评论 -
在revit模型中如何对建筑柱和梁进行过滤?
过滤是Revit的重要技术。用FilteredElementCollector 类可以实现对所有对象的过滤,这个类功能强大,效率也很高。可以给他添加过滤条件,从中获取过滤结果。我曾经录制过一个专题讲解高效对象过滤,请看本博这篇文章:http://blog.csdn.net/joexiongjin/article/details/6792174这里具体谈下你需要的代码原创 2012-08-30 12:00:15 · 8228 阅读 · 0 评论 -
如何编程创建有两段引线的文字
原文链接: http://blog.csdn.net/joexiongjin/article/details/7707916作者: 叶雄进 , Autodesk ADN 问:创建文字引线的时候用方法TextNote.AddLeader()创建的引线是一段直线的,请问下如何能修改创建的引线变成两段引线? 答:Revit提供了两个函数来创建文字。创建带引线的文字: N原创 2012-07-02 11:37:05 · 3526 阅读 · 0 评论 -
Autodesk.Revit.DB.Transform 类的作用
转载请复制以下信息: 原文链接: http://blog.csdn.net/joexiongjin/article/details/7598833作者: 叶雄进 , Autodesk ADN Revit 提供了Transform类来做二次开发时的坐标转换。 你可以给Transform对象进行赋值,构造一个变换矩阵。然后使用这个变化矩阵把给定的坐标点的坐标转成目标坐标系。原创 2012-05-24 16:29:46 · 7128 阅读 · 2 评论