完善主体资料,免费赠送VIP会员!
* 主体类型
* 企业名称
* 信用代码
* 所在行业
* 企业规模
* 所在职位
* 姓名
* 所在行业
* 学历
* 工作性质
请先选择行业
您还可以选择以下福利:
行业福利,领完即止!

下载app免费领取会员

NULL

revit二次开发教程_revit二次开发叶雄进_revit二次开发教程高级教程

revit二次开发可以用于建筑项目进度管理系统的开发,在项目进行前通过编写计划,设置好项目的时间信息,建筑信息,项目信息等,通过一些列的数据信息建立模型和生成明细表等,有了模型数据和明细表之后,就可以用来做资源分析和计划优化等,从而能使项目计划更加科学高效。

分享给朋友

推荐课程学习

(免费)小火车:Revit二次开发教程

2017/06/05

DikyEggs

课程介绍:小火车:Revit二次开发教程

Civil 3D二次开发视频教程

2018/05/15

东成西就

课程介绍:Civil 3D的二次开发

Dynamo For AdvanceSteel二次开发的节点尝试钢箱梁建模

2018/11/20

东成西就

课程介绍:Dynamo For AdvanceSteel 二次开发的节点尝试钢箱梁建模

Dynamo For Advance steel二次开发实现钢箱梁建模思路

2018/12/10

东成西就

课程介绍:Dynamo For Advance steel二次开发实现钢箱梁建模思路

叶雄进:Revit 二次开发视频教程合集

2019/06/26

橄榄山

课程介绍:叶雄进:Revit 二次开发视频教程合集

Revit 二次开发入门详解

2019/07/19

一通教育

课程介绍:Revit 二次开发入门详解

面向工程人员的Revit二次开发课堂

2020/05/25

黑夜de骑士

课程介绍:面向工程人员的Revit二次开发课堂 

Revit原生二次开发-地砖排版[单购可以获取源文件]

2022/04/11

房景

课程介绍:单购本门课程可以联系老师获取源文件,微信号:17553101005(备注:腿腿教学网地砖排版单购学员) 让学员掌握revit非插件开发,充分扩展revit的自身功能 。

Revit原生二次开发-csv文件详解及应用

2022/04/11

房景

课程介绍:整个课程主要讲解的是对revit自身隐藏的功能的开发 该课程以实例为讲课背景,学完就能用到工程实际。本课程不提供课件素材

Revit原生二次开发-一键生成支吊架

2022/04/11

房景

课程介绍:整个课程主要讲解的是对revit自身隐藏的功能的开发  该课程以实例为讲课背景,学完就能用到工程实际 。本课程不提供课件素材

Revit二次开发-快速创建管道

2022/04/11

房景

课程介绍:本课程针对编程零基础的BIM工程师,自己制作插件工具。学会了本视频的课程,对关于Revit的二次开发会有一个更清晰的认识。本课程不提供课件素材

推荐文章阅读

程序员进行REVIT二次开发所需要的知识储备有哪些?

2022/09/29 网友投稿

2524

文章介绍:程序员进行REVIT二次开发所需要的知识储备有哪些?

如何配置Revit二次开发环境(下)?
Revitlookup提示.png

2021/01/22 王锡金

6044

文章介绍:暂无

如何配置Revit二次开发环境(上)?
Development Requirements.png

2021/01/22 王锡金

7723

文章介绍:暂无

二次开发教程:Revit开发读取CAD信息

2019/08/26 网友投稿

13350

文章介绍:暂无

二次开发教程:Revit开发设置模型线颜色

2019/08/26 网友投稿

10974

文章介绍:暂无

二次开发教程:Revit开发之导出明细表到Excel

2019/08/26 网友投稿

9848

文章介绍:暂无

二次开发教程:Revit开发之判断参数是否为项目参数

2019/08/26 网友投稿

8172

文章介绍:暂无

二次开发教程:Revit开发通过Category设置构件颜色

2019/08/26 网友投稿

9491

文章介绍:暂无

二次开发教程:Revit开发获取房间内的构件

2019/08/26 网友投稿

9878

文章介绍:暂无

二次开发教程:Revit开发通过轴网创建柱子

2019/08/26 网友投稿

7962

文章介绍:暂无

二次开发教程:Revit开发之放弃重做操作

2019/08/26 网友投稿

6034

文章介绍:暂无

二次开发教程:Revit开发之警告和错误处理

2019/08/26 网友投稿

8912

文章介绍:暂无

二次开发教程:Revit开发创建部件和部件视图

2019/08/26 网友投稿

6522

文章介绍:暂无

二次开发教程:Revit开发之AddInManager安装包简单制作

2019/08/26 网友投稿

5123

文章介绍:暂无

二次开发教程:Revit开发AddinManager原理探索

2019/08/26 网友投稿

6236

文章介绍:暂无

二次开发教程:Revit开发之梁柱分段

2019/08/26 网友投稿

5687

文章介绍:暂无

二次开发教程:Revit开发管道风管分段

2019/08/26 网友投稿

6384

文章介绍:暂无

二次开发教程:Revit开发RibbonPanel底部添加命令

2019/08/26 网友投稿

5342

文章介绍:暂无

二次开发教程:Revit开发柱附着和分离

2019/08/23 网友投稿

5275

文章介绍:暂无

二次开发教程:Revit开发之标注创建

2019/08/23 网友投稿

6906

文章介绍:暂无

二次开发教程:Revit开发通过API 创建族

2019/08/23 网友投稿

8500

文章介绍:暂无

二次开发教程:Revit开发楼梯创建

2019/08/23 网友投稿

5697

文章介绍:暂无

二次开发教程:Revit开发将WPF的Ower设置为Revit窗体

2019/08/23 网友投稿

4974

文章介绍:暂无

二次开发教程:Revit开发之多线程

2019/08/23 网友投稿

5125

文章介绍:暂无

二次开发教程:WPF通过异常来验证用户输入

2019/08/23 网友投稿

3967

文章介绍:暂无

二次开发教程:Revit开发之调用Revit命令的另一种方法

2019/08/23 网友投稿

6490

文章介绍:暂无

二次开发教程:Revit开发之快捷键相关类

2019/08/23 网友投稿

5303

文章介绍:暂无

二次开发教程:Revit开发获取梁的宽和高

2019/08/23 网友投稿

5754

文章介绍:暂无

二次开发教程:WPF 使用net 资源多语言

2019/08/23 网友投稿

3830

文章介绍:暂无

二次开发教程:C#键盘钩子

2019/08/23 网友投稿

5178

文章介绍:暂无

二次开发教程:Revit开发关于创建Tab的问题

2019/08/23 网友投稿

5152

文章介绍:暂无

二次开发教程:C#DynamicObject和ExpandoObject

2019/07/25 网友投稿

5261

文章介绍:暂无

二次开发教程:WPF 使用INotifyDataErrorInfo小例子

2019/07/25 网友投稿

4475

文章介绍:暂无

二次开发教程:Revit开发自定义警告

2019/07/25 网友投稿

4280

文章介绍:暂无

二次开发教程:C# 读取config文件

2019/07/25 网友投稿

4492

文章介绍:暂无

二次开发教程:WPF 设置快捷键

2019/07/25 网友投稿

4158

文章介绍:暂无

二次开发教程:C# udp小程序

2019/07/25 网友投稿

3352

文章介绍:暂无

二次开发教程:C# 通过MVVMLight探索IOC

2019/07/25 网友投稿

4094

文章介绍:暂无

二次开发教程:MVVMLight的Messenger

2019/07/25 网友投稿

4600

文章介绍:暂无

二次开发教程:Revit开发区分基本墙,幕墙,叠层墙

2019/07/25 网友投稿

5364

文章介绍:暂无

二次开发教程:WPF使用其他dll里的样式

2019/07/25 网友投稿

4945

文章介绍:暂无

二次开发教程:C# 使用弱引用释放静态资源

2019/07/25 网友投稿

4094

文章介绍:暂无

二次开发教程:WPF 模板选择器

2019/07/25 网友投稿

4017

文章介绍:暂无

二次开发教程:ICommand接口

2019/07/25 网友投稿

3939

文章介绍:暂无

二次开发教程:C# 弱事件

2019/07/25 网友投稿

3627

文章介绍:暂无

二次开发教程:Revit开发之管道的布管系统配置

2019/07/25 网友投稿

6752

文章介绍:暂无

二次开发教程:C# 泛型弱事件管理器

2019/07/25 网友投稿

3625

文章介绍:暂无

二次开发教程:Revit开发之管段

2019/07/25 网友投稿

4648

文章介绍:暂无

二次开发教程:WPF 依赖属性

2019/07/25 网友投稿

3276

文章介绍:暂无

二次开发教程:WPF 给控件添加可以绑定的命令

2019/07/25 网友投稿

4320

文章介绍:暂无

二次开发教程:WPF DataContent内存释放问题

2019/07/25 网友投稿

5190

文章介绍:暂无

二次开发教程:C# 反射性能

2019/07/24 网友投稿

3936

文章介绍:暂无

二次开发教程:C# 初探UI Automation

2019/07/24 网友投稿

6489

文章介绍:暂无

二次开发教程:C# 动态生成程序集

2019/07/24 网友投稿

3523

文章介绍:暂无

二次开发教程:Revit开发BuildingEnvelopeAnalyzer

2019/07/24 网友投稿

3458

文章介绍:暂无

二次开发教程:Revit开发ImageView

2019/07/24 网友投稿

4054

文章介绍:暂无

二次开发教程:Revit开发IExternalCommandAvailability的使用

2019/07/24 网友投稿

5033

文章介绍:暂无

二次开发教程:MyBatis配置

2019/07/24 网友投稿

3847

文章介绍:暂无

二次开发教程:MyBatis增删查改

2019/07/24 网友投稿

3050

文章介绍:暂无

二次开发教程:研究下WPF 数据binding 原理

2019/07/24 网友投稿

3846

文章介绍:暂无

二次开发教程:Hello Emit

2019/07/24 网友投稿

2968

文章介绍:暂无

二次开发教程:Emit DynamicMethod

2019/07/24 网友投稿

3294

文章介绍:暂无

二次开发教程:Emit 循环

2019/07/24 网友投稿

3319

文章介绍:暂无

二次开发教程:orm 里使用Emit

2019/07/24 网友投稿

3765

文章介绍:暂无

二次开发教程:Dapper里使用Attribute自定义映射关系

2019/07/24 网友投稿

6075

文章介绍:暂无

二次开发教程:Hello entity framework

2019/07/24 网友投稿

3136

文章介绍:暂无

二次开发教程:entity framework 自定义映射

2019/07/24 网友投稿

3824

文章介绍:暂无

二次开发教程:entity framework 迁移

2019/07/24 网友投稿

3062

文章介绍:暂无

二次开发教程:ef 查询相关数据

2019/07/24 网友投稿

3268

文章介绍:暂无

二次开发教程:HttpWebRequest&&multipart/form-data

2019/07/24 网友投稿

4030

文章介绍:暂无

二次开发教程:Newtonsoft.Json 自定义序列化字段

2019/07/23 网友投稿

4000

文章介绍:暂无

Revit二次开发教程:VS2013 或VS2015 无法调试Revit插件代码的解决办法
图片.png

2019/06/22 腿腿教学网

6085

文章介绍:有些开发者在用VS2013 或VS2015调试插件代码时,发现无法跟踪调试。 但是在VS2010,VS2012下没有问题。

Revit二次开发教程:注册Revit插件
图片.png

2019/06/22 网友投稿

9163

文章介绍:第一步通过MakeCert.exe工具制作自己的数字证书; 第二步通过 Pvk2Pfx.exe 工具制作个人信息; 第三步通过SignTool.exe 注册dll; 第四部将数字证书导入证书库中;

Revit二次开发教程:Revit API Hook 之 拦截鼠标双击元素事件

2019/06/22 网友投稿

8930

文章介绍: HOOK(钩子,挂钩)是一种实现Windows平台下类似于中断的机制。HOOK机制允许应用程序拦截并处理Windows消息或指定事件,当指定的消息发出后,HOOK程序就可以在消息到达目标窗口之前将其捕获

Revit二次开发教程:Revit族参数可见性设置
图片.png

2019/06/22 网友投稿

13444

文章介绍: 很多人出于某种用途为族设置特殊的参数之后,希望可以将其隐藏。在Revit官方暴露出来的API中,是没有方法来实现的。以下代码演示了如何将墙体所有参数隐藏!

Revit二次开发教程:如何对插件进行双数字签名

2019/02/20 腿腿教学网

8753

文章介绍:Revit二次开发教程:如何对插件进行双数字签名

Revit二次开发教程:获取相交构件及Face重合的判断

2019/02/18 网友投稿

15794

文章介绍:前几日深夜对如何获取相交构件及Face重合的判断做了些探索,也和行内的大佬进行了一定的技术交流,我觉得还是有必要写一写,探讨一下。

Revit二次开发教程:如何对插件进行双数字签名

2019/02/18 网友投稿

6789

文章介绍:今天说说数字签名这个事情。一般来说公司发布插件产品肯定要对插件进行数字签名的。之前的文章也提到,Autodesk Revit自2017版开始对插件进行数字签名认证。

Revit 2019二次开发之C# 应用程序级宏代码示例

2019/01/28 网友投稿

8202

文章介绍:在该示例中,Revit.DB.Geometry.XYZ 类用于定义宏将添加到活动文档的活动视图中的文本框中的文字注释的位置(使用 X、Y、Z 坐标)。

Revit二次开发技巧 | 取得当前视图的垂线接口

2018/09/25 网友投稿

5724

文章介绍:Revit二次开发,取得当前视图的API是哪个呢?

BIM二次开发是什么?为什么要进行BIM二次开发?

2021/05/17

5418

文章介绍:从事工程设计行业的人员在遇到一些工程量大且模式相对单一的工程设计环节时会显得力不从心,而作为BIM技术的大众化软件,除了自身功能强大,可以自动化准确的生成模型和施工图,此外,也支持丰富的API开发功能(应用程序接口),这一特点充分体现了BIM软件平台级软件优势。借助于API,其他BIM软件就可以通过数据库将BIM软件建模参数实现信息共用,也可以高效的把其他软件的功能和特点集成到BIM软件中,实现复杂的建模工作简易化、自动化、多元化,而且在一个平台上利用同一个模型就能完成各阶段所需的所有任务。所以对BIM软件进行二次开发实现各类软件信息互联互通已成为工程设计行业的热门工具。在对BIM软件进行二次开发之前了解它能做什么非常有必要,通过BIM软件二次开发技术可以实现如下内容:导入外部数据,创建新元素或设置参数;访问模型数据,自动完成重复的建模工作;创建插件,完成UI的增强;连接外部数据库,将其他计算分析软件转换集成到BIM软件中;自动检测错误,保证符合产品设计规范;自动获取工程量,生成报告便于分析。API,即应用程序接口(Application Programming Interface)。BIM软件原来是没有API功能的,被合并到Autodesk后其BIM软件开始提供二次开发的API接口。API提供了一种扩展软件功能和规范的机制,是基于软件产品的一个类库,需要在BIM软件运行时工作。API允许使用者通过任何与.NET兼容的语言来编程,第三方开发人员可以通过API将其应用程序与AutodeskBIM软件集成。使用API用户可以创建插件来完成UI增强。对一些重复工作的自动化,导入外部数据来建立单元或者设置参数值,连接到外部数据库,转换数据到分析应用,访问模型的参数数据等一系列功能。

Revit二次开发有什么用?为什么要对Revit进行二次开发?

2021/08/24

3702

文章介绍:Revit二次开发有什么用?听到Revit二次开发的概念时,你是否首先也会闪过这样的一个疑问。其实进行了二次开发的Revit在应用体验和效果表达上可谓是天差地别,当我们掌握了Revit二次开发,我们就能做以下事情:(1)真正意义上的操控Revit。操控就是对模型进行增、删、改、查。增就是创建看得见的模型,或者看不见的类型或配置。删、改就是批量删除不需要的元素,修改模型中元素的空间位置、状态和各种属性。查,就是获取文档中的信息。没有二次开发,对于Revit的操作与控制,只能用自带的按钮工具来进行,超出功能使用范围,有想象力也没有发挥的空间,但通过二次开发,Revit将会被你拿捏的死死的。(2)避免重复操作。计算机最擅长的就是重复操作,而我们人类是讨厌重复操作的生物。这也是为什么那些带有批量功能的插件会受到大家热捧,批量改族,批量布置族,批量提取信息,批量添加信息等等,项目越大、批量操作越多,开发就越有必要。(3)实现自动化流程。Revit二次开发可以按顺序执行,条件执行,循环执行,自动化完成设定的流程,这样一来,可以确定的工作流,通过编译,只用动一下手指就可以轻松完成。(4)实现数据的互联互通,打通程序壁垒。尽管Revit有许多格式可以导出,但是数据的丢失、适用性一直是个问题。你想导入导出Excel,不方便;你想导出到其他软件进行结构计算,不方便;你想与数据库交互,不方便;你想做VR展示,不方便。通过Revit二次开发,你可以将信息通道打穿,杜绝信息孤岛,满足所有数据交互的需求。相关课程:Revit 二次开发入门详解:http://www.tuituisoft.com/view/378.html叶雄进:Revit 二次开发视频教程合集:http://www.tuituisoft.com/view/367.html

Revit怎么二次开发?Revit二次开发需要准备的东西

2021/08/24

4228

文章介绍:文章来源:BIM开发带入门 “俗话说得好,工欲善其事,必先利其器。我们要有充足的准备工作做起开发才不会手忙脚乱,那么一个Revit二次开发员需要准备什么呢?下面我将详细列举,并且说明这些分别对我们未来的开发有何帮助。”Revit2018和软件相关操作做Revit的二次开发工作,那么我们是基于Revit进行开发工作,其软件必不可少,其次需要明白软件功能和使用逻辑,如果软件操作还不熟练,那需要补充基本技能,这里不再展开说明。使用偶数版本比较稳定,这里推荐使用2018,当然学会后举一反三其他版本也可进行开发工作。C#语言基础Revit二次开发支持C#,Visual Basic,C++三种语言支持,目前主流使用C#。C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。其相对简单,网络上相关教程也比较多。程序语言就像与计算机交流的手段,如果这方面不足,那开发工作将难以进展下去,推荐不足的同学需要补充相关知识,由于Revit二次开发对于语言深度不会要求太高,所以了解一部分基础知识后即可开展开发工作,如果望而却步,那永远也不会前进。Visual Studio 2019Visual Studio是最流行的Windows平台应用程序的集成开发环境。可以用于生成 ASP.NET Web 应用程序、XML Web services、桌面应用程序和移动应用程序等。 我们主要使用其中的类库模板,创建DLL(Dynamic Link Library,动态链接库)文件。今后基本上都是使用Visual Studio进行代码编写和编译。VS(Visual Studio)的版本和Revit的版本没有直接对应关系,只要保证框架在.NET Framework 4.5.2以上即可,这里使用NET Framework 4.7.2,当然你可以选择使用更高级的版本框架。Revit2018 SDKSDK(Software Development Kit,软件开发工具包)是为特定软件包、框架、硬件平台、操作系统等建立引用软件的开发工具的集合。SDK相当于很多API接口和其他支持文件的集合体。它是一个软件开发工具包。那么什么是API?API (Application Programming Interface,应用程序编程接口),是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。简单来说SDK就是Autodesk给开发人员准备的API帮助文档、范例以及帮助工具的集合文件。而API就是Autodesk给开发人员准备的软件快捷操作代码接口。我们编写主要使用开放的API代码进行编写,而如何知道开放了哪些以及如何使用则利用SDK的相关文件进行相关查找。Addin Manager如果你有了Revit2018 SDK文件,那么你也就有了Addin Manger的相关组件。Addin Manager是官方插件,用来加载DLL文件的,它会把DLL复制到Revit临时文件下进行直接加载和运行,用于开发人员测试程序的有效性和稳定性,无需重启Revit。Revit Lookup同样Revit Lookup也包含在Revit2018 SDK中,它可以快速清晰地查看Revit构件开放的相关信息,让我们了解到Revit隐藏的各种数据,从而让我们更高效地挖掘和利用这些数据。

Revit API指什么?聊聊Revit二次开发的那些事儿

2021/10/09

2205

文章介绍:Revit软件的建模功能非常强大,但在结构计算与分析、编辑钢筋等方面的功能还存在很多不足,好在Revit提供了应用程序编程接口(Application Programming Interface,以下简称API)供第三方作二次开发,通过这个接口,我们可以编写开发插件以完善Revit的功能。简而言之,API就是一个接口,是软件开发人员用来与第三方软件进行交互的工具。API允许用户和开发人员通过编写向软件添加新功能的程序或脚本来扩展现有应用程序的功能。Revit API提供了Revit访问接口的各种功能,用户可以根据自己的需求对Revit进行功能扩展。借助Revit API,用户可以直接更BIM模型中的构件,也可以访问数据来实现一定的功能。高级用户和软件开发人员利用Revit API可根据自己的需求对Revit进行功能扩展,创建自定义工具,从而改善工作流程,提高建筑设计、施工、运维的效率。与具有25年以上的API和自定义历史的AutoCAD相比,Revit API仍不算成熟。2005年,Autodesk在Revit8中正式引入了Revit API。从那时起,Revit API稳步扩大和完善,尽管仍然存在很大的局限性,但现已成为扩展Revit功能、解决各种问题的有效工具。例如,利用Revit API扩展的数据提取和导入、几何提取、属性处理、建筑分析、基本设计自动化和配置、简单的系列创建和管理、自动导出和打印等功能已经相对成熟,而另一些更深层次的功能,例如交互式(拾取和放置)应用程序、大规模设计自动化、批处理自动化等还不能通过Revit API得到实现。文:周君蔚 版权归原作者所有

Revit如何二次开发?一篇文章带你了解Revit二次开发流程

2021/10/14

14255

文章介绍:Revit二次开发需安装必须的二次开发平台,明确开发环境、开发方式以及开发流程。开发环境Revit API可用与.NET Framework兼容的开发语言进行编程,.NET Framework为用户程序开发提供了一套安全模型,在此模型中可以确保使用的代码被识别,保证了编程语言的一致性。支持.NET的编程语言有C#、Visual Basic、C++等。由于CH语言.NET平台耦合度很高,且语法简洁,开发效率高,故选择C#作为开发编程语言,安装Microsoft.NET Framework 4.6。安装Revit 2018作为建模平台,选择的开发软件工具为Visual Studio 2013,在程序开发前引入RevitAPl.dIl”及“RevitAPIUI.dlI”动态链接库。开发方式通过Revit API 扩展其功能模块,主要有两种特殊的接口派生类:外部命令(IExternalCommand)和外部应用(IExternalApplications)。IExternalCommand是RevitAPI中实现外部扩展的命令,内含Excute函数。外部命令调用Excute函数来实现IExternalCommand,Excute 的定义方式public Autodesk.Revit.UI.Result Execute(ExternalCommandData cmdData,ref string message,ElementSet elements),分别为输入参数CommandData(ExternalCommandData)、输出参数message(string)、输出参数elements(ElementSet)。开发者可以通过实现IExternalApplications来添加自己开发的Revit应用,IExternalApplication 的接口要实现两个抽象函数:OnStartup和 OnShutdown,利用OnStartup()函数和 OnShutdown)函数定制Revit启动和关闭的时候所需的功能,开发时在外部命令中添加相应的功能代码,依附于外部应用的框架,再利用.addin注册文件共同控制着外部插件的识别和加载,一般用来创建插件的菜单栏。 RevitAPI为方便用户配置自己的ExternalCommand和 ExternalApplication的行为提供了多种属性,为命令类添加控制命令的事务模式和更新模式,通常选用手动(Manual)模式,Transactiori属性,用户必须在实现IExternalCommand接口时指定外面命令使用的TransactionMode属性。Regeneration用于控制外部命令或外部应用程序的再生行为。为命令类添加控制命令的事务模式和更新模式[Transaction(TransactionMode.Manual)],[Regeneration(RegenerationOption.Manual)]使用API需要用到应用类和文档类。应用类有UIApplication和 Application 。UIApplication用来提供访问UI级别接口,包括访问用户界面·RibbonPanels,获得用户界面的活动文档等能力。Application用来提供访问其他应用级别内容接口。文档类有UIDocument和 Document。UIDocument用来提供访问UI级别接口,Document用来提供访问其他应用级别内容接口。如图所示为Revit二次开发基本流程。文:高建新 大连海事大学

Revit如何二次开发?Revit二次开发常用工具

2021/10/15

3331

文章介绍:Revit API为Revit的功能扩展提供了无限可能,能帮助我们提升开发效率。以下是二次开发中常用到的工具:(1)Visual StudioMicrosoft Visual Studio(简称VS)是一款功能强大的编程软件,是一个全面的集成开发工具集。这款产品是市面上用户群体最多,功能最为齐全的工具,个人用户可以于微软官网下载完全免费的社区版,对于普通个人用户功能已经完全够用。最新的社区版中已经支持了CodeLens工具,可以让开发者找到对一段代码的引用、对代码的更改、链接错误等,大大提高了测试效率。(2)Revit AddIn-ManagerRevit AddIn-Manager是由Autodesk官方提供的一个插件加载及调用工具,利用该工具,用户可以通过即插即用的方式加载开发的插件工具。Revit AddIn-Manager是我们开发过程中常用的客户端调试工具。有了这个工具,开发者无需重复进行注册操作,也无需在调试中反复启动和关闭Revit。(3)Revit LookupRevit Lookup是由Autodesk Developer Network(ADN)技术专家Jeremy Tammik开发并开放源码的Revit数据库查看工具。利用Revit Lookup,开发者可以轻易地查看当前Revit文件中所有对象的大部分属性信息,以及对象间的关系,从而快速定位开发过程中遇到的问题。(4)ILSpyILSpy是一款开源的.NET反编译软件。利用它可以看到C#代码编译及运行真相,对代码优化非常重要。同时也可以使用它反编译公开的插件程序,是学习二次开发的好帮手。Revit原生二次开发系列课程:http://www.tuituisoft.com/series/52.html

Revit API是什么?对Revit进行二次开发的理由是什么?

2021/11/02

2296

文章介绍:最初的Revit软件并没有API,Autodesk公司在2002年收购了Revit,在此前的基础上进行了进一步的研发,使其可以更好地服务于BIM技术,首先其代码进行了相关规范,符合国际通用做法。Revit API的发展经历了很多阶段,总得来说使其功能更加强大和灵活,同时更好地服务于开发者,直到现在仍在不断地进行着更新,每天都了解到最新的API并不现实,因此可根据需要进行查阅。通过对Revit API开发的软件进行长期测试表明,该软件稳定性非常好。用户可以根据API接口进行二次开发,通常所采用的计算机语言为C#或者VB.Net等。为了方便开发者,Revit提供了可以直接用于二次开发的文件包Revit SDK,包含测试工具、参考文档及丰富的示例代码。通过对Revit SDK的使用,可以大大的提高使用者的效率。在中国市场,Revit还有着广阔的应用前景。在设计、施工和运营阶段都可以运用BIM技术有效地提高效率,但若能真正地发挥作用,还需要对Revit进行进一步的二次开发。并且,对于一些复杂和大型的项目工程,Revit还可以根据项目的具体要求进行二次开发,通过对Revit相关功能进行拓展和完善,来实现项目建模过程的简化以及在项目组更深入的应用。在国内,相关的从业者非常少。为了使Revit更好地应用,需要使其更符合中国的国情和规范,这都需要对其进行二次开发,由此将带来巨大的应用价值。同时,不同软件间的配合,往往能够达到事半功倍的作用。如果能给打通各个软件的通道,也将带来巨大的应用价值。Revit原生二次开发系列课程:http://www.tuituisoft.com/series/52.html

Revit二次开发的基础是什么?怎样才能对Revit进行二次开发?

2021/11/02

3268

文章介绍:Revit API是Revit软件二次开发的基础,包含了Revit API.dll和Revit APIUI.dll两大程序集,在对Revit进行二次开发时,必须引用程序集中的命令才能进行。外部命令和外部应用Revit API为Revit的二次开发提供了完整的规范和机制。其中Revit API.dll程序集提供了应用、文件、单元和参数的访问方法。也包含了DB级别的外部应用接口和其他相关接口。Revit APIUI.dll程序集可用于定制和拓展Revit界面,并提供了相关的接口。 1、外部命令Revit的开发者可以通过外部命令来实现自己的功能,外部命令位于Revit的附加模块中,需要.addin文件进行注册。Revit在启动后将自动识别.addin文件,经过注册的外部命令被激活。选择附加模块,即可在下拉菜单中看到已添加的外部命令,点击即可执行对应的函数,当有其他操作进行或者执行完毕后,外部命令将再次处于待执行状态。图1描述了外部命令的调用方法。2、外部应用Revit的开发人员除了可以为Revit添加外部命令外,同样也可为Revit添加外部应用,外部应用的功能可以更加强大。外部命令同样需要通过.addin文件进行注册,Revit启动后可以自动读取注册文件。通过启动后的Revit可以执行外部应用,实现所需的功能。Revit原生二次开发系列课程:http://www.tuituisoft.com/series/52.html

Revit如何二次开发?对Revit二次开发的几点基础认识

2021/11/02

2963

文章介绍:通过对Revit的二次开发,用户可以根据自己的需要自行进行功能区的拓展,首先需要以下几点基础的认识:1、Revit允许用户通过API订制自己的Ribbon空间,相关的程序接口位于Revit APIUI.dll,用户只需要将自己的程序放置在相应的目录下,Revit将会自动引用这个dll。2、用户通过二次开发自定义的面板实现时机是,Revit在启动时自定义的控件将自动加载。3、目前通过RevitAPI可自定义以下几种控件:选项卡页,面板,命令按钮,下拉按钮,文本框以及分隔符等。4、在几种基本控件中,选项卡页(RibbonTab)和面板(RibbonPanel)是容器类控件,主要作用是管理、放置具体的控件,没有相应的外部命令可以执行。容器类控件和其他控件的区别和关系为,基本按钮和文本框必须放置在面板(RibbonPanel)中,选项卡最高。5、用户可以自行定义自己的选项卡页(RibbonTab),然后用于放置和管理具体的控件;也可以不创建选项卡页,直接将自定义控件放置在Revit系统的选项卡页中,目前仅限附加模块(Add-Ins)选项卡页和修改(Analyze)选项卡页可以添加自定义的程序控件。Revit原生二次开发系列课程:http://www.tuituisoft.com/series/52.html

Revit二次开发的工具有哪些?Revit二次开发的方式

2021/11/22

3408

文章介绍:Revit作为Autodesk公司重点推广应用的三维信息化建模软件,拥有非常强大的API功能,在公司封装API提供二次开发后,升级版本的API得到了大量的优化和扩展,从只能提供文档对象的访问,到可以创建工作集、实现用户的选择交互、族类型的过滤及参数的创建和修改等功能,还可以通过外部程序的调用实现界面交互方式很难或无法完成的功能。Revit API具有如下两种开发工具:一是Visual Studio,针对Revit2018进行开发时,可以选择VisualC#、VB.Net等支持.NET Framework的编程语言,且Revit2018需要基于.NET Framework4.6.1运行环境进行编译,还需引用Revit API.dll、Revit API UI.dll和Revit AddIn Utility.dll接口文件;二是Revit自带的开发环境VSTA,它是通过VisualC#、VB.Net语言生成脚本宏,并将其附着在模型上,通过运行宏来实现相应的功能。针对Revit软件进行二次开发时,需要熟练掌握Autodesk公司开发的Add-In Manager插件和Revit Lookup插件。前者能够在不重启Revit软件的前提下,直接修改插件中的代码重新调试来实现插件的再次加载和运行,Revit Lookup不用写代码就可以直观地看到API的对象。二次开发的方式Revit API是建立在Revit产品基础之上,它是一个类库,需要在Revit运行时才能够工作。Revit API具有非常强大的功能,通过Revit API研发的插件,用户能够进行Revit软件功能的扩展与实际应用。Revit API提供了一套机制和规范来扩展Revit的功能,Revit的扩展方式有三种:一是外部命令IExternal Command,Revit通过.addin文件来识别和加载外部插件;二是外部应用IExternal Application,同样是通过.addin文件来识别和加载实现IExternal Application的外部插件;三是宏Macro,宏作为一种程序,目的是实现重复任务的自动化,每个宏都可以通过可重复的步骤和可预见的操作完成一系列预定义步骤的任务。作者:刘世茂 仅供学习交流 版权归原作者所有 如有侵权请联系删除

为什么要进行Revit二次开发?Revit二次开发的价值

2021/11/22

2382

文章介绍:Revit软件具备丰富的API应用程序编程接口,结合工程项目的特点,BIM开发应用成为可能,高度参数化和协同设计大大提高了建模速度。Revit API中的空间和类库,类似于Revit软件里的族库,能够实现搭积木的模型创建过程。利用Revit API能够实现用户自定义程序编写,进行Revit二次开发,除了可以实现自身软件平台上的大部分功能,还能够创建一些界面交互无法完成的任务,例如与非线性有限元分析软件的交互等,显著提高了用户的建模效率。Revit API的功能如表下所示:(1)访问模型的图形数据(2)访问模型的参数数据(3)创建、修改、删除模型元素(4)创建插件来完成对UI的增强(5)创建插件来完成一些对重复工作的自动化(6)集成第三方应用来完成诸如连接到外部数据库、转换数据到分析应用等(7)执行一切种类的BIM分析和自动创建文档综上所述,本文主要从三个方面说明进行Revit二次开发的必要性:首先,进行Revit二次开发可以实现批量化操作,提高了建模的工作效率;其次,Revit二次开发可以对Revit不完善的功能进行修补或添加没有的功能,实现Revit自身的扩展;最后,进行Revit二次开发能够进一步对接各种分析软件或模拟软件等,为模型的进一步分析提供更多可能性。Revit原生二次开发系列课程:http://www.tuituisoft.com/series/52.html

什么是Revit二次开发?Revit平台的二次开发功能介绍

2022/02/16

7378

文章介绍:虽然Revit软件拥有非常强大的功能供BIM工程师使用,但仍然不可避免的有所限制,需要工程师对功能进行二次开发扩展。Revit二次开发,即在Revit软件的基础之上,根据用户的个性化需求,通过开放的底部接口扩展功能,实现功能的二次开发。Revit二次开发主要有两种方式,第一种方式为编写C#、C++等计算机语言程序,开发人员在开发平台上依据个性化的需求,调用RevitAPI的底层代码设计相关算法程序,并以插件的形式载入Revit平台,从而实现功能的开发;另一种方式为基于Revit内置可视化编程插件Dynamo的二次开发,在Dynamo中,已将基本的图形算法内嵌在节点中,其直观表现形式为可供连接的小方块,一个小方块表示一个函数操作,依据个性化需求,调用一个个的节点并以逻辑关系连接节点,最终实现所需功能的开发。这两种Revit二次开发方法各有优劣,在操作难度上,前者需要开发人员拥有较为深厚的编程基础,这对于建筑工程师十分不友好,而基于Dynamo的二次开发门槛较低,操作简单,放置节点块连线即可实现二次开发;就开发功能的深度和广度而言,前者所能实现的功能更加强大全面,后者受节点的限制实现功能有所欠缺,虽然也可基于Dynamo平台编写DesignScript语言乃至Python语言扩大开发功能,但效果依旧不如前者。Revit原生二次开发系列课程:http://www.tuituisoft.com/series/52.html

Revit怎么进行二次开发?Revit二次开发流程包括哪些?

2022/02/26

3060

文章介绍:Revit二次开发的流程主要包括:可行性分析、架构设计、编写代码、注册加载、调试等步骤。1、可行性分析。在项目初始阶段,确定项目的主要内容,探究项目的条件和结果,从技术、经济、社会等方面进行综合调查研究和分析比较,从而判断项目的价值和实现途径,为项目的启动提供依据、奠定基础。2、架构设计。在一个软件项目开发过程的早期阶段中,根据功能需求,制定这个项目的总体架构,用以指导整个开发团队完成计划,实现目的。3、编写代码。在Microsoft VisualStudio软件平台中创建项目,并添加相关引用。Revit软件提供的外部程序实现接口有:外部命令(IExternal Command)、外部应用(IExternal Application)和数据库(DB)级别的外部应用(IExternalDBApplication)。其区别在于接口和重载的函数不同,启动方式也有所差别。在编写代码的过程中,开发者根据研发目的在自己开发的程序插件中继承对应的特殊接口。4、注册加载。在Revit中调用上述三种接口生成的插件,需要使用.addin文件对插件进行注册。可以依据相对固定的格式自行创建.addin清单文件,也可以通过Add-inManager工具自动生成创建。创建完成后将.addin文件存入默认路径,Revit软件将会自动读取文件内容,并识别和执行外部命令和外部应用程序。5、调试。调试程序是否正常运行,以及运行结果是否符合需求。若出现错误和故障,则要查找原因,进行故障排除,并再次调试,直到完美运行为止。Revit原生二次开发系列课程:http://www.tuituisoft.com/series/52.html

Revit二次开发要用到哪些工具?Revit二次开发工具及辅助工具

2022/03/31

1942

文章介绍:我们在用Revit进行二次开发的时候通常要用到VisualStudio、Revit Lookup、以及Add-InManager工具。VisualStudioRevit建模平台是基于.NET Framwork进行编写的,故而二次开发也需要在.NET Framwork框架基础上进行,需要选择一款可以支持该框架的集成开发环境。集成开发环境(IDE,Integrated Development Environment)提供了程序开发所需的系列基础工具集,其中包含编译器、调试器以及界面设计器等基础开发工具,具备代码编写、代码分析、代码编译、代码调试等多种功能。Microsoft Visual Studio是针对NETFramwork开发的集成开发环境,其中包含了.NETFramwork框架开发所需的基本工具集,且所创建项目可适用于微软支持的所有平台。故本文选用Microsoft Visual Studio作为开发用IDE。Revit LookupRevit Lookup是由Autodesk公司提供的SDK(Software Development Kit)中自带的官方插件,用于Revit文档数据的读取,Revit Lookup工作界面见图2.2。在Revit中一个构件包含的信息非常多,例如构件族类型、构件加载点位、构建参数以及构件单元ID、单元号、位置以及参数组等,这些信息保存在Revit文档数据库当中,并不向设计师进行直接展示。但这些数据对于BIM模型应用来说非常重要,开发者在开发过程中经常需要对这些数据进行查看。Revit Lookup这款插件就可以帮助开发者更方便地对Revit文档数据库进行查阅浏览提升开发效率。Add-InManagerAdd-InManager也是由Autodesk公司提供的SDK(Software Development Kit)中自带的官方插件,用于项目的调试,一般的调试过程需要对编译生成的动态链接库进行注册,并且需要重新启动Revit进行加载,效率低下。而通过Add-InManager插件,可以实时对生成的动态链接库进行调用,省去了动态链接库注册和重启加载的步骤,提升了开发效率。Revit原生二次开发系列课程:http://www.tuituisoft.com/series/52.html

Revit二次开发用什么插件?Revit二次开发插件介绍

2022/04/22

3579

文章介绍:Revit二次开发,是在不更改Revit软件内核的基础上,通过定制插件实现拓展功能,从而满足用户的需求。例如Revit钢筋建模工作量极大,通过传统做剖面的方法,不能准确布置钢筋,给生成钢筋明细表、统计工程量带来相当大的阻力。Revit extensions插件,是一款典型的通过对Revit进行二次开发,实现快速创建钢筋的工具包。该插件针对梁、柱、墙、桩、桩承台、连续基脚、扩展式基脚等不同的构件族,有针对性的开发钢筋建模程序,无需再做剖面,仅根据弹出的窗口输入参数,即可实现钢筋模型的参数化快速建立。橄榄山快模是针对Revit软件快速建模的软件。可以一键识别天正cad图纸信息,自动建立revit建筑模型和结构模型,其中建筑翻模完善了门窗类型命名功能,可创建读取到的门窗相应的族类型,并自动输入编号。Twinmotion是EPIC旗下的一款虚拟引擎软件,可实现模型三维漫游功能。Twinmotion DIRECTLINK插件允许同步Revit等多种格式的模型的几何体和BIM信息。它可以保持组织和层次关系,而原始的表面和3D对象会自动替换为可以与环境交互的Twinmotion对象,使Revit模型能够获得实时3D可视化漫游效果。Revit二次开发课程:http://www.tuituisoft.com/series/52.html

为什么要对Revit二次开发?Revit二次开发的目的

2022/04/22

2146

文章介绍:对Revit进行二次开发,其主要目的在于拓展用户需求、方便用户批量处理简单的操作以及与其他软件平台交互。(1)拓展用户需求BIM技术受到国家的大力推广,Revit作为BIM技术的必备软件,积累了广泛的用户。其中建筑、结构(钢筋)、机电等不同专业的用户对软件的需求也大不相同,需要通过基于现有产品的定制开发来改善和扩展软件的适用性。(2)方便用户批量处理简单的操作在建模过程中,大量的操作需要多次重复进行,比如修改门窗的族类型,并对门窗族命名。如橄榄山快模的出现,通过识别cad图纸,即可自动生成简单的建筑、结构模型,自动生成对应的门窗族,并且自动输入编号名称。用户无需去处理繁琐的重复性操作,提升建模效率。(3)与其他软件平台交互由于BIM软件种类繁多,常用的软件如ARCHICAD,Revit,SketchUp Pro,Rhino(包括Grasshopper)等模型的格式都不相同,三维漫游的实现,往往需要集成多种软件平台的模型,必须将不同软件转化为统一的格式。现在,大多数BIM应用程序已为开发人员打开了自己的应用程序编程接口,通过二次开发技术,可以引用其他BIM软件的Interface来完成Revit与不同应用程序之间的数据交换。Revit二次开发课程:http://www.tuituisoft.com/series/52.html

为什么选择Dynamo进行二次开发?选择Dynamo进行二次开发的原因

2022/04/22

2525

文章介绍:虽然Revit官方给出了Revit软件开发工具包(SDK),内部含有参考文档,以及API用户手册和示例文件,API手册中给出了以下三种C#,C++,VB开发语言,以C#的应用最为广泛,但若采用C#语言进行Revit二次开发,相较于Dynamo而言,入门难度较高,必须掌握C#语言的语法,以及要深入理解面向对象的基本概念,还需通过RevitSDK工具包,熟悉用户参考手册,下载VisualStudio等编译器,进行大量的配置引用操作,才可开始编程;且编程界面是以代码的形式展现,程序源码难以理解,自行开发更是无从下手,不利于没有编程基础的工程人员入门。而Dynamo可以在Revit软件内打开,不需要进行大量的代码编译以及环境配置,便可直接编写程序,能够自动实现参数化建模,大幅提升建模效率。工程人员不用学习复杂的C#编程语言,只需调用Dynamo中现有的节点,即可运行自己的程序。Dynamo程序由多个具备不同功能的节点构成,节点以“电池”的形式封装了内部代码,以“电线”来连接各节点,进行数据的读取,查询,修改与删除等操作。节点以功能命名,使用户通过“电池”名称即可知晓节点的功能,同时,Dynamo还开放了自己制作“电池”的功能,有编程基础的用户可以自行开发想要的节点包,对常规的节点包进行整合优化,也可通过Pythonscript节点编写Python程序,并上传到云端供其他用户使用,为新手提供了极大的帮助,降低了软件的学习成本,也增加了工程人员学习编程的兴趣。

什么是Revit二次开发?Revit二次开发的工具一般有几种?

2022/05/05

1891

文章介绍:Revit API(Application programming Interface,应用程序编程接口)是基于Revit进行二次开发最重要的工具之一。Revit与.NET Framework通过接口相关联,接口即Revit API在Revit中大量的命名空间和使用类库的集合。.NET Framework是可以用来开发应用软件与托管类库的一个平台,其主要包含一个庞大的库,通过面向对象编程技术从而使用代码。与.NET Framework兼容的语言有C++、C、VB、C#等都可以使用该接口对Revit行二次开发。二次开发的工具Revit API的开发工具一般有两种:一种是以Visual Studio为平台,可以选择C、C#、VB、C++等支持.NET Framework的语言,该方式针对于Visual Studio 2012及以上版本,该方法需要在开发时引用Revit接口组件文件Revit API.dll和Revit APIUI.dll。第二种方法是Revit软件自带的开发环境,名称为VISTA。其可通过C#和VB语言生成宏脚本,将其附着在模型上,通过运行宏来实现相应的功能。对于Revit软件的开发有两种方式,一种是创建外部命令的方式,另一种是添加外部应用的方式,两种方式都需要对插件进行注册,也可以通过添加Revit官方插件Addin Mananger直接实现程序。

Dynamo怎么二次开发?Dynamo二次开发工具和开发语言

2022/05/11

2538

文章介绍:目前面向Revit的二次开发已经趋于成熟,而Dynamo二次开发则相对较少,那么Dynamo怎么二次开发呢?想要知道这个问题的答案,我们需要了解Dynamo二次开发工具和开发语言。开发工具目前,使用最广泛的Dynamo二次开发工具是美国微软公司的Visual Studio(简称VS),VS是一个基本完整的开发工具集,支持用户通过多种不同的程序语言进行开发,从Visual Studio 2002到Visual Studio 2020,经过了十几年的发展几乎包括了整个软件生命周期中所需要的大部分工具,如代码管控工具、UML工具、集成开发环境(IDE)等。在BIM软件开发方面,大多工程师贡献的项目案例都是基于Visual Studio开发的。开发语言可用于Dynamo二次开发的语言有C#、Visual Basic、VisualC++、J#等.NET开发语言,在Autodesk官方推出的众多软件开发教程中,一般会选择使用C#语言,所以C#也称为Autodesk平台软件二次开发使用最多的语言,也是Dynamo官方推荐的编程语言。值得一提的是Python也可以对Dynamo进行二次开发,Dynamo提供了Python Script节点,能够直接调用Revit API自动解析、编译,其缺陷是可以实现单一性的功能,功能函数之间不能相互调用,无法满足具有多种功能的系统性开发项目。与Python相比,用C#语言编写开发Dynamo有许多优点,C#代码编译后是dll文件,他们之间可以相互引用,代码保密性和运行效率都有很好的保证。

什么是Revit二次开发?一篇文章带你走进Revit二次开发的世界!

2022/05/12

5805

文章介绍:Revit二次开发是对其进行功能的自定义和修改,根据用户的需求,在Revit软件原有功能的基础上进行目标性拓展,从而实现用户的定制需求。通过API可以实现这站类型的程序功能拓展,二次开发通常可以在不更改原始系统的情况下扩展并提高其工作质量和效率。Revit的二次开发是利用Revit软件自有的API接口,以通过程序代码实现组件各个功能的开发。通常,普通的建模操作仅需要使用菜单栏中的按钮功能进行。而Revit还具有程序员界面,该界面可用于调用外部命令,并使设计人员可以通过外部编程来编辑和访问Revit。Revit API是一个门户,开发人员可以通过该门户访问Revit的各种功能,在可视化与数据分析操作的基础上程序开发人员可以根据用户需求对Revit软件功能进行目标拓展与优化。作为程序员还可以访问数据模型中的信息结构单元,添加属性,更改和创建新组件以获得相关数据,分析数据等。目前来看,我们可以通过二次开发技术在应用软件中实现以下等功能。(1)通过编写代码搭建能够快速准确提取并修改构件参数信息的插件;(2)通过编辑程序实现移动楼板、添加墙体等软件附加编辑功能;(3)建模时,省略繁琐步骤,实现一键化识图翻模;(4)通过外部程序接口,实现不同BIM软件之间的数据互联。(5)通过程序编并添加设计过程中所需运算函数,并利用运算函数对模型进行数据分析。

Tekla二次开发简单吗?Tekla Structure如何二次开发?

2022/05/13

3399

文章介绍:任何软件都无法做到能够满足每个用户在所有领域的应用要求,再加之Tekla进入中国的时间并不长,软件中的节点不能完全满足国内工程的要求,因此对于软件的二次开发功能对用户的个性化需求提供了最大化的满足。另一方面,大型复杂的工程存在大量不同的节点,几乎每一处构件连接的节点都不尽相同,假如每一个节点都需要设计人员手动去调整修改,那么工程的效率会大大降低,错误率也由此增大。因此,如何实现这些节点的智能化是我们解决问题的关键。Tekla二次开发策划及基本流程 图1Tekla二次开发策划在Tekla Structures软件中,可提供用于二次开发的对接口以及完全开放的编程指令内码,这些可为用户带来个性化的工具和专业化的定制服务,对于高级用户满足了其更加全面、专业的个性化需求。对于提高工程效率、工程质量起到了关键的作用。同大多数CAD软件一样,使用编程访问Tekla中的节点对象可分为两种形式:第一种是进程内宏程序,第二种是进程外的程序。进程内宏程序通俗简单,可实现的功能比较少,适用于中小型项目。进程外程序即Tekla宏代码与外部应用程序在不同的程序中运行,通常所讲的二次开发大多数指进程外的设计方式。如图1所示为二次开发策划的步骤。 图2二次开发流程图提供即时更新的软件程序文件和所需的节点安装包,是二次开发的硬件条件。为了提高深化设计的效率,还需要制定合理的开发流程(如图2所示),既是详图设计的必要条件,也是二次开发技术的重点。

Revit二次开发模式与Dynamo开发模式的差异

2022/05/14

2244

文章介绍:在实际应用中,Revit二次开发模式与Dynamo开发模式存在一定的差异,主要表现在以下几个方面。第一,开发基础方面。Revit二次开发插件程序的编写需要用户至少掌握一种符合公共语言规范的程序语言,并且有一定的程序设计与实践基础。对于没有程序语言基础的设计人员及BIM技术使用者而言,其操作难度过大。而Dynamo可以针对自身实践中的需求进行定制化开发。其操作更加简单易用,用户不用花费大量成本进行计算机编程等知识的学习便可以轻松地完成Dynamo程序的编写。第二,在开发复杂度方面,两种开发模式都需要用户熟悉Revit中的各项操作。一般来说,对于可以在Revit中手动操作实现的功能,Revit二次开发以及Dynamo开发支持的概率在80%以上。其中,Revit二次开发代码编写需要简明的算法与严谨的逻辑,代码数量会随着命令复杂程度的升高而增加,而且容易出现程序漏洞,需要进行反复调试。而Dynamo编程逻辑较为简单,用户只需连接编程所需要的节点,实现命令所需要的节点数量与命令的复杂度无关,如图所示。 第三,在成果输出方面,Revit二次开发模式具有系统性、普遍性的特点,可以把很多功能集成于一个系统,用户可以直接在软件的选项卡中进行查找及运行。而每个Dynamo程序以DYN文件的形式独立运行,每次使用时需要重新对选取的Revit构件进行关联,在一定程度上限制了程序的使用范围。文:张笑彦(青岛理工大学)仅供学习交流 版权归原作者所有 如有侵权请联系删除

Revit二次开发怎么实现?Revit二开外部命令和外部应用的实现方法

2022/05/17

4385

文章介绍:如今想学Revit二开的小伙伴可谓是越来越多了,作为腿腿教学网的小编,每天都能在后台受到很多关于Revit二开的咨询。简单来说,Revit二次开发的实现方式主要包括两种,一种是IExternal Command;另一种是IExternal Application。(1)外部命令Revit外部插件的研发人员能够利用IExternal Command将开发的外部应用程序插入Revit中,之后Revit软件可以通过.addin文件进行外部插件的识别和加载。外部命令通过以上形式加载到Revit软件中后,有两种方式可以实现外部命令的触发,分别为外部工具菜单(界面如图1所示)和自定义菜单(界面如图2所示)。 图1外部工具菜单 图2自定义菜单IExternal Command这个接口中仅仅包含一个抽象函数Excute,IExternal Command功能的实现是通过重载这个函数。(2)外部应用外部应用的实现方式与外部命令相同,都是利用.addin文件实现的,不同之处在于IExternal Application接口包含两个抽象函数,分别是OnStartup和OnShutdown。OnStartup在Revit启动时发挥作用,OnShutdown在Revit关闭时发挥作用。最后让小编为大家推荐一套课程:Revit原生二次开发系列课程课程目标:让学员掌握Revit非插件开发,充分扩展Revit的自身功能 。适用于BIM从业者,整个课程主要讲解的是对Revit自身隐藏的功能的开发该课程以实例为讲课背景,学完就能用到工程实际!课程地址:http://www.tuituisoft.com/series/52.html

如何实现Revit二次开发?Revit二次开发的实现方式

2022/05/27

6779

文章介绍:Revit软件作为目前BIM领域最常用的建模软件,为建筑行业的建模工作提供了丰富的功能,它可以为建筑、机电、结构等各类专业提供基于BIM的解决方案。在对Revit三维视图进行操纵时,会实时获取与操作相关的数据信息,写入数据库,并将其与Revit模型构件相关联。Revit丰富的功能能够凭借信息化方式达成建筑剖面图、二维及三维视图等的自动修正。作为BIM建模软件,Revit为建筑行业的工作人员提供了各类建模功能的帮助。Revit能够通过其丰富强大的功能来快速搭建出美观的三维模型。此外,模型中保存了许多的参数信息,支持建立参数化对象。并且,Revit中拥有大量的构件及材质数据,还支持创建自定义材质,使操作更加便捷。用户能够借助Revit进行各专业的建模设计,还能够通过协同设计,将最终各方完成的模型整合在一起,并且Revit建模有着良好的精度,将能够印证工程项目的设计,能够应用于工程的全生命周期。最重要的是,Autodesk公司为Revit提供了API接口,使得其能够拥有更多功能。用户可以利用二次开发对Revit功能进行自定义增加。二次开发的实现方式本文选择C#语言进行Revit开发。所采用的编程软件为VisualStudio2017。使用C#语言进行Revit二次开发一般有两种开发方式:(1)外部命令(IExternalCommand)方式(2)外部应用(IExternalApplication)方式。(1)外部命令(IExternalCommand)IExternalCommand是RevitAPI中开发人员扩展Revit时需要实现的接口。通过这个类,开发人员能够在Revit中加入自定义拓展插件,并载入外部命令方法,最后加载功能代码,实现所需功能。在外部命令类中,Execute()方法中三个重要参数,它们分别是程序与文档对象获取参数、对象集合传出参数及提示字符串传出参数。通过这些参数,可以开发出自己所需的功能。(2)外部应用(IExternalApplication)开发人员能够利用实现IExternalApplication接口来扩展自己的插件程序。Revit也能通过.addin文件来载入实现外部应用的外部插件。通过外部应用接口的OnStartup()和OnShutdown()两个方法,能够完成在Revit中加入自己的功能并在Revit的“附加模块”面板中创建插件模块。由于这两种方法都将在Revit启动和关闭时自动运行的,所以在进行Revit二次开发时通常都使用该接口来创建菜单面板。内容来源:《基于BIM的基坑工程安全监管平台的研发与应用》 房晓丰仅供学习交流 版权归原作者所有 如有侵权请联系删除

如何使Revit二次开发更便捷?Revit二次开发工具介绍

2023/02/10

1935

文章介绍:由于Revit 2016需要在.NET4.5下运作,所以必须选用Visual Studio进行开发。Revit API可以让用户使用各种与.NET兼容的语言来进行开发,编程语言能够用C#、C++等。而使用不同的编程语言进行开发时,所编译的语句是不同的。例如当开发人员想使用数据库元素时,在C#中是Autodesk.Revit.DB.Element。而在C++中所用的则是Autodesk Revit DBElement,本文选用的是C#编程语言进行开发。在进行开发前,还需安装好Revit软件并了解其功能操作以及API接口的使用方法。 图1 外部工具菜单RevitSDK是Revit开发的工具包,其中包括Revit API库、API参考文档以及API演示Demo,其中还有供开发人员参考学习的示例代码。其中Getting Started with Revit API.doc是进行开发的初始文件,包含有关Revit API基础知识的信息,是熟悉Revit API的起点。而工具包中的Revit API.chm对Revit API接口的用法进行了详尽阐述,它在开发中有着不可或缺的作用。开发者能够使用SDK工具包根据自己所需进行相应参数的查找,从而扩展Revit的功能,而像SDK工具包这样的Revit辅助开发工具还有很多。一般使用外部程序管理器来注册和加载.addin文件,生成相应的插件,从而实现对Revit的二次开发应用。当RevitSDK安装后,外部插件加载选项将会在Revit的“附加模块”菜单的外部工具中加载。通过该功能,可以十分便捷地进行二次开发插件的调试及加载,如图1所示。另外,开发者也能够自己来进行.addin插件的编写,并且将编写完成的.addin外部插件文件存储在相应的Revit文件夹路径之下。 图2 使用Revit Lookup查看构件的信息当用户打开Revit后,将会通过Revit Add-InManager加载自定义插件,而想要清除不用的插件时,则能够通过删除.addin文件的方式实现自定义插件的高效卸载。ILSpy是一种拥有强大功能的.NET反编译工具。利用该工具,能够把一个程序转成C#语言。通过ILSpy的反编译功能,能够查看在程序中编写的所有变量及方法。而RevitLookup是为辅助Revit二次开发所设计的专业工具,它在Revit二次开发过程中有着非常重要的作用,而在RevitSDK的工具包中便有该插件文件。使用该插件能够在不写代码的情况下实现对相关API对象参数的查看,以便开发人员更加效率地进行所需功能的开发,如图2所示。Add-InManager工具同样是Autodesk公司为开发人员所提供的插件,通过SDK工具包便可以获得插件文件,通过该插件能够实现在Revit中进行所开发插件代码的调试,并能够调试完成后进行插件的加载运行。通过这些工具,能更便捷地进行Revit开发。内容来源:《基于BIM的基坑工程安全监管平台的研发与应用》 房晓丰仅供学习交流 版权归原作者所有 如有侵权请联系删除

Revit API的全称是什么?Revit API跟二次开发有关吗?

2022/05/29

1621

文章介绍:API全称叫Application Programming Interfaces(应用程序编程接口),是软件开发者预先定义的一些函数,目的是在无需访问程序源代码的前提下,基于某软件或硬件给开发人员与应用程序提供访问一组例程的能力。简单地说,就是一套要求,用来管理应用程序与程序之间的沟通,在使用计算机时,正是API实现了数据在各个程序之间的传输。API是把程序内部的部分功能有限地向使用者开放,便于各应用程序之间基于各自的利益分享数据,而又不需要开发者公布所有的软件源代码。API可以看成是程序的一扇门或窗,通过API实现应用程序和外部的有效沟通。Revit API是Revit提供的一系列的命名空间和类库,目的是方便用户基于Revit平台通过二次开发的方式重新定义已有功能或根据需求创建相应的功能,因此Revit API作为用户开发插件程序与Revit连接的接口十分重要。Revit系列的建筑、结构、设备三个产品都有相应的API,因为这三个产品的API都十分相似,Autodesk公司把它们集成一起,统称为Revit API。经过很多年的发展丰富,Revit API不断完善优化其基本功能并进行逐步扩展,如今每个Revit版本的API都会在基本功能的基础上做最大的优化和扩充,Revit API已经形成了一个完整的功能体系。Revit提供给用户的丰富的API可用于自定义Revit现有功能或者添加全新的功能,或者使用API将创建的的工具和功能可以直接载入Revit中,实现扩展其功能的目的。Revit API是.Net API,只要是与Microsoft.Net Framework 2.0兼容的语言都可以调用Revit API,如:VB、C#等。

Dynamo二次开发难不难?Dynamo二次开发流程是什么?

2022/06/01

2025

文章介绍:基于Dynamo平台可帮助建筑工程师进行基于工程需求的二次开发,其开发线流程遵循着一个基本思路,可将其概括为“需求分析、程序设计、调试优化、程序输出”共四步。1.需求分析需求分析即分析工程问题,明确需要Dynamo解决的工程问题。在解决工程问题的过程中,第一步即判断能否将工程问题转化成数学问题,其次判断利用Dynamo平台能否解决工程问题。在满足以上两个条件的情况下,将工程问题进行问题分解,将大的工程问题转化为多个小问题,利用计算机技术进行程序编写。2.程序设计程序设计可理解成目标需求分析后,用编程的方式把需求变成具体功能的工作流程。不论是基于节点的可视化编程还是基于代码的语言式编程,程序设计都是十分重要的环节。Dynamo在程序设计的过程中有独特的优势,其注重再编写过程中整个程序的逻辑结构,其对编程语句并无太大要求,与流程图极为相似。工程师只需在编写过程中,仔细疏通内在逻辑,从Dynamo节点库中找到对应的节点函数,并对每个节点内的数据进行数据结构处理。在编写过程中,以数据为主线,使用“数据输入—数据处理—数据输出”的三步设计方法。3.调试优化在完成程序编写之后,此时需要不断地运行程序,发现程序的错误之处,并对错误之处进行程序的调试优化,优化后的程序应具备以下优点:•程序运行不报错•参数设置数量少但精准,可满足所有的数据调整•程序本身结构清晰,并根据功能进行区域划分并做好命名•节点、语句数量在尽量少的情况下满足全部功能需求基于Dynamo的可视化编程,在调试优化的过程具有得天独厚的优势。在程序运行完成后,若是遇到节点显黄的情况,这说明程序在该节点处的运算出错,需要进行调整。此外,通过“冻结”和“预览”的指令,也可以快速地发现编程的错误之处。使用节点的“冻结”指令,程序将自动关闭该与该节点关联的后续运算,即程序运行至“冻结”节点后将不再运算;打开或者取消节点的“预览”指令后,程序将不在Dynamo的展示界面内展示该节点的可视化运算结果,但并不影响该节点后的程序运行。“冻结”与“预览”功能的配合大大提高了开发人员发现错误的效率,加快了功能开发进度。4.程序输出在程序编写完成后,开发者便可使用该程序快速解决工程问题,或者将该程序输出为dyn文件供他人多次使用。

Revit二次开发第一步做什么?Revit二次开发流程概括

2022/06/01

1804

文章介绍:Revit API提供了一套机制和规范来拓展 Revit的功能。 Revit API.dll程序集中包含了访问Revit DB级别的Application、Document、Element以及Parameter的方法,也包含了一些接口。 Revit APIUI.dll包含了所有操作和定制UI的接口, 包括外部命令IExternalCommand相关接口, IExternalApplication相关接口, Selection选择;菜单类RibbonPanel以及其子类等。 想利用Revit API来访问和拓展Revit相关功能,需要在自己的插件中引入相应的接口文件, 这些接口包括外部命令, 外部应用和外部数据库应用。Revit二次开发的流程可以概括如下图: 调用 IExternalApplication 接口 , 此接口 通过两个抽象函 数 OnStartup 和OnShoutdown, 分别制定在 Revit 启动和关闭时候所需的功能。 采用此方法, 需要设计界面编程, 添加一个菜单或工具条, 涉及到 Button, Panel, RibbonTab等控件, 最后通过 C \ ProgramData \ Autodesk\ Revit\Addin 目录下的.addin 文件加载程序命令。外部命令 IExternalCommand 接口需要在 Revit 没有其他命令运行, 或者没有处于编辑模式的状态下, 用 Add-In Manager 加载, 若插件被选中, 那么就会执行 Execute 函数, 从而实现外部命令集成到 Revit。 也可以利用 addin 文件加载程序命令。Revit二次开发课程:http://www.tuituisoft.com/series/52.html

Revit二次开发难不难?Revit二次开发工具要哪些?

2022/06/01

1859

文章介绍:1..NET编程环境。对Revit的二次开发需要使用.NET Framework平台,.NET是基于Windows操作系统运行的操作平台,实际上是一簇各种技术的集合。它支持多种语言之间的交互操作如C#、VB等,一个新的组件可以通过面向对象技术重用另一组件中的信息,即.NET通过将各语言先编译成中间语言(IL),然后再执行时用即时(Just In Time)编译器将其转换成本地平台代码来实现异构平台下对象的互操作如图所示。 它的类库包含了数千个预先设置好的类,这些类是我们一切编程的基础。了解每个类的功能,清楚不同类之间的继承关系,应用程序开发人员仅需按需求调用相关的类,完成逻辑框架层面的代码,就可以实现程序的开发。VisualStudio作为.NET软件开发集成的工具,包含了丰富的提高代码编写效率和支持软件调试的工具及特性,例如实时监测变量值,自动检测错误,参数对象自动补全,并自动附带该对象的属性、方法等信息。2.Revit SDK。RevitSDK里面包含了大量可以帮助开发的文档,以及带源代码的例子,对初级开发者来说,资料十分重要。3.Revit Lookup。Revit Lookup是欧特克公司研发的不用源代码就可以直观的看到API对象的插件。开发人员可以拿到源代码以后自己编译。Revit二次开发课程:http://www.tuituisoft.com/series/52.html

Revit二次开发用什么插件?必须安装的Revit二次开发辅助插件!

2022/06/02

3315

文章介绍:Revit.NET API英文全称为Revit.NET Application Programming Interface,中文全称为Revit.NET应用程序编程接口(以下简称RevitAPI),是Revit自带的用于与二次开发程序进行交互的程序接口。该接口拥有较好的语言兼容性,可用任何与.NET框架兼容的语言进行编程。此外,RevitAPI自带极其丰富的类型库,能最大限度的满足开发需求,降低开发成本。通过RevitAPI,用户能通过外部编程,达到访问、创建、编辑及删除模型数据等功能。Autodesk公司为提高Revit的可开发性,提供大量的开发辅助插件。为提高开发效率,必须安装的插件包括RevitLookup及addinmanager两个插件,下面分别介绍。(1)Revit LookupRevit Lookup是一个对象可开发数据访问插件,其能快速、便捷地显示对象的几何、物理等信息,方便开发者快速定位参数位置、种类及参数值。插件可在Autodesk官网下载后进行安装。其操作界面如图1。 (2)Addin Manager该插件用于快速显示并加载、卸载二次开发程序。AddinManager在Revit安装包内自带的SDK(Software Development Kit)中。插件操作界面如图2所示。 图2AddinManager操作界面

Revit二次开发的流程是什么?如何营造Revit二次开发环境?

2022/06/08

3371

文章介绍:Revit二次开发需要具备的三个条件来营建开发环境:一是Revit产品,二是Revit SDK文件,三是一款开发工具。本文采用的是Revit2018版本,通过Autodesk的官方网址下载、并安装了Revit SDK文件,采用的开发工具是Microsoft Visual Studio。开发工具中使用的版本是Visual Studio 2017,运行环境采用.NET Framework4.7,开发语言使用C#计算机语言。开发环境配备好之后,需要完成以下准备工作:安装RevitLookup插件,RevitLookup是Autodesk开发的插件,包含在RevitSDK文件中,主要作用是利用该插件直观看到API的对象;安装AddinManager插件,AddinManager是Autodesk的一个插件,主要作用是加载并运行Revit的插件。Revit二次开发主要通过“外部命令(IExternalCommand)”、“外部应用(IExternalApplication)”两种方式来实现。详细的开发过程如下:(1)在VisualStudio2017开发平台中新建一个类库工程。(2)在VisualStudio中引用接口装配文件RevitAPI.dll和RevitAPIUI.dll,为了防止dll文件在编译过程中复制到本地属性,需要将其修改为False。(3)在编辑界面添加需要使用的数据库命名空间引用,如:usingAutodesk.Revit.UI;usingAutodesk.Revit.DB;usingAutodesk.Revit.ApplicationServices;usingAutodesk.Revit.UI.Selection;……这些命名空间都是在Revit二次开发中很常用的几种,使得二次开发拥有不同的功能,若需要实现其他功能还可以添加相应的命名空间。(4)设置命令属性,主要有三种事物模式,如自动模式(Automatic)、手动模式(Manual)和只读模式(ReadOnly)。在本文的开发程序中,最常用的就是手动模式。(5)添加二次开发的实现方式,如IExternalCommand或者IExternalApplication。这里采用外部命令的实现方式,首先将新创建的类由ExternalCommand接口派生,再通过IExternalCommand.Execute()方法重载。(6)利用C语言、VB语言等编写程序代码,实现所需要的功能。(7)完成代码调试后,生成dll文件,利用AddinManager插件将文件导入Revit并加载程序。以上过程就完成了Revit二次开发的所有流程,可以通过AddinManager插件运行程序,实现所需要的功能。

Revit可以进行二次开发吗?Revit二次开发基础理论介绍

2022/06/08

2023

文章介绍:Revit作为BIM技术的核心软件之一,具有灵活开放的二次开发平台,提供了应用程序编程接口(Application Program Interface,简称API),此接口为软件的二次开发提供了强大功能。Revit API能够提供软件各种应用的功能接口,促进Revit的信息数据集成。Revit API是一个类库,需要在Revit运行时才能够工作,借助VisualBasic.NET、C#以及C++等.NET编程语言来完成编程,实现二次开发。Revit API中包含有Revit API.dll程序集和Revit APIUI.dll程序集。Revit API.dll程序集包含了访问Revit中的DB级别的Application、Document、Element以及Parameter的方法,也包含了IExterDB Application接口和其他相关接口。Revit APIUI.dll程序集包含了所有操作和制定RevitUI的接口,包括:IExter Command相关接口、IExternal Application相关接口、Selection选择、菜单类RibbonPanel RibbonItem以及其子类、TaskDialogs任务对话框。Revit二次开发主要通过两种方式来添加自己的应用,即外部命令(IExter Command)和外部应用(IExter Application)。Revit二次开发技术能够在软件应用方面提供以下功能:(1)通过API接口访问、提取模型中的各种信息。(2)通过编辑程序实现在Revit软件中直接对构件进行编辑操作。(3)在建模过程中,通过编程简化繁琐的操作。(4)通过API接口引用外部应用程序来操作信息模型。(5)通过编程来设置运算函数,实现对模型的数据分析运算。

Revit二次开发流程一般是什么?Revit二次开发的六个流程

2022/06/19

2008

文章介绍:Revit软件的二次开发对于不同版本的软件会存在些许的差异,主要采用.NET4.5环境来编译。Visual Studio 2017是迄今为止最具生产力的版本,为用户提供了创建程序或将现有程序进行升级改造等功能,同时链接原有服务与数据为二次开发提供技术支持。除了编程软件,开发过程中还有一些特定的工具,对提升用户的开发效率有很大帮助。例如Revit SDK包括Revit API的帮助文档以及源代码的案例,供用户在进行二次开发是参考与学习;RevitLookup可以辅助开发人员在Revit中查看Revit底层数据库中的元素对象、属性、关系等内容,更加直观和方便的实现数据信息的查找,免除了用户逐个查询SDK的时间的耗费;AddInManager是用来在开发过程中调试命令和程序,无需启动Revit就可以修改插件代码并再次加载和运行,提高用户的开发工作效率。Revit二次开发流程如下:(1)准备工作:需提前安装开发所需软件,包括Autodesk Revit、Microsoft Visual Studio,还需要掌握一些开发语言(如C#),以及Revit相关的一些基本概念;(2)创建项目:打开VisualStudio,单击菜单栏“File”→“New”→“Project…”,或者按快捷键(Ctrl+Shift+N),打开“NewProject”对话框。在该对话框中,选择“VisualC#”→“Windows”,在“Templates”中选择“ClassLibrary”,在“Name”栏中输入项目名称“HelloRevit”,单击“OK”;(3)添加引用:选择“SolutionExplorer”的“References”节点,右击选择“Add Reference…”,打开“Add Reference”对话框。在该对话框中,选择“Browse”选项卡,进入Revit安装目录,选择“Revit API.dll”以及“Revit APIUI.dll”两个动态链接库,单击“OK”添加到项目引用;(4)编写代码:完成上述各项操作后,开始编写所需二次开发功能的具体代码;(5)注册外部命令:新建一个文本文件,将文件放入C:\ProgramData\Autodesk\Revit\Addins\2017\;(6)执行命令:完成上述步骤后,启动Revit软件,在“外部工具”中就可以找到二次开发所得到的功能。

Revit二次开发可以实现哪些功能?Revit二次开发功能介绍

2022/06/19

3071

文章介绍:Revit作为一个功能十分强大的建模软件,除了自身拥有的建模等功能外,还为用户提供了应用程序编程接口(Application Programming Interface,简称API),借助于Revit API的二次开发,搭建BIM技术的二次开发环境,可以实现以下功能:(1)开发插件实现BIM模型数据的读取、导入以及导出等:例如利用Microsoft Visual Studio软件的自定义编程功能,通过C#、C++、VB.NET等编程语言,完成用户的各种开发需求,针对BIM模型中的所有结构,可以通过预先编程来读取模型的几何属性、材料属性、图案样式等信息,并将所需数据信息导入有限元计算软件,实现Revit与有限元软件的数据交互;(2)通过API和.NET技术来创建用户所需的交互界面,快速的对模型中构件进行移动、复制、旋转、剪切等操作;(3)利用插件自动完成一些需要重复操作的工作,通常二次开发创建的插件,快速的完成模型构件的重复操作,例如通过插件编程实现桥墩桩基模型的复制建模;(4)开发Revit软件本身尚不具有的功能,创建Revit和其他软件平台交互的接口,实现模型数据的自动化处理功能,可以与其他软件平台数据进行集成,如连接到外部数据库、进行数据分析等,实现数据共享与使用,极大地提高数据利用率和设计效率;当前有部分公司已经开始投入到Revit的二次开发,寻求BIM软件与其他专业软件的数据转换,转换的方式包括如下两种方式:(1)建立与BIM软件的联系,通过软件提供的API接口,开发数据转换接口程序,提取模型数据信息;(2)通过VB.NET编程语言识别模型数据信息,并导入到有限元软件中进行计算分析。

Revit怎么二次开发?Revit二次开发如何借助到哪些工具?

2022/06/20

5175

文章介绍:VS(Microsoft Visual Studio)是美国微软公司开发的系列工具包产品。它包含了软件在整个生命周期内所需的大部分工具。开发者在此编译环境中所编写的代码支持所有微软的平台,包括Microsoft Windows、.NETFramework、及Windows Phone等。对于开发Windows系统产品,VisualStudio是当前应用最广泛的集成开发环境。Revit API可以允许与.NET兼容的语言来进行编程,主要包括C#、VB以及F#等。C#英文名CSHARP,是微软公司发布的一种面向对象的编程语言,运行在.NET Framework环境中。C#集成了VB的可视化操作以及C++的高运行效率等巨大优点。C#还以其强大的操作能力成为.NET环境中进行开发的首选语言。腿腿教学网小编这里采用软件是Revit 2020、Visual Studio 2019、Revit SDK 2020、开发环为.NET Framework 4.7.0。Revit以二次开发方式去更好的实现在建筑工程项目中某项功能的应用时,必须借助一定的软件开发工具,目前,对于第三方开发者来说,对Revit进行二次开发时一般采用VSTA(Visual Studio Tools for Application)开发工具。VSTA是内置在Revit软件中的应用开发工具,使用C#以及C++等编程语言便可以对Revit进行二次开发,以此达到扩展的功能。VS是在MicrosoftVisualStudio软件中编写出具有功能的代码然后结合Revit API,通过代码驱动外部命令实现Revit对VS功能代码的调用,此过程可以通过支持.NET Framework的C#、C++以及VB等计算机编程语言来实现。除了上述开发工具的介绍外,Revit软件进行二次开发时,Autodesk公司还为开发者提供了Add-InManager插件管理器。Add-InManager插件管理器可以用来加载开发者编写的Revit插件,可以用来对编译的代码程序进行调试,是二次开发必备的工具。

Revit二次开发有前景吗?Revit二次开发现状及发展历程

2022/06/23

3644

文章介绍:Revit系列软件作为BIM技术的核心建模软件,其强大的功能为建设项目的信息化提供了有力支撑;Revit被收购之前,Revit Technology Corporation公司计划提供完整的解决方案,提供设计人员所需要的全部功能。这个想法针对美国或局部地区是可以的,但是如何兼顾全球的市场并非易事。Autodesk公司深知API(Application Programming Interface)的重要性,只有API能解决各国不同标准之间的契合问题。因此Revit被Autodesk公司收购后,开始封装API供二次开发使用。2005年Autodesk推出Revit8.0,开始提供API,到今天RevitAPI应用迅速发展,从最开始的API只能访问文档中的对象到后续版本中的交互API,文档级别的事件API机制,对象的过滤API,族创建API,在模型上显示分析结果,模型动态更新等等。API数量每年大幅度递增,涵盖的功能也越来越强。借助API,第三方软件软件提供商可以使用Revit的功能,提供在建筑全生命周期中所需要的软件。美国Trelligence公司的一个建筑规划阶段的软件Affinity。其功能是在建筑规划设计时,使房间规划符合业主提出的要求,比如,房间总数量,面积大于50平米的会议室数量,房间之间的毗连关系。建筑师在设计过程中可以随时查看初步设计是否符合业主的要求。Affinity在Revit Architecture上用API实时取出设计模型的房间信息,快速给出设计规划。使用Affinity,建筑师的设计很容易保证所作的设计符合要求,减少以后详图设计阶段发现不合格要修改设计的巨大浪费。应用Revit二次开发,Affinity很容易就开发出了这个报告分析,无需开发建模和数据管理程序。使用Revit Architecture的建筑师很容易成为Trelligence的用户。开发一套具有三维建模功能的图形平台是一件巨大的工程,开发一套高效可靠的建模系统更加困难,使用Revit二次开发,可以直接定义这些功能。随着国内建设行业对于信息化要求的不断提高,对使用BIM技术的呼声也越来越高,近年来国家陆续不断的出台了许多关于BIM技术应用的标准及相关规范,可以预见在不久的将来BIM技术将在国内实现全面普及,如今Revit系列软件也不断的被市场接受,Revit二次开发的爱好者也越来越多,有些软件已经建立了与Revit之间互导数据,比如YJK,这也为加速BIM软件国内化提供了一种模板,有些爱好者作了些高效内部使用工具,例如广东省建筑设计院,天津水泥院,机械部六院等。

Revit二次开发指南:Revit二次开发的准备工作及实现方式

2022/06/23

5356

文章介绍:这里以Revit Structure 2015版本为例,因此需要NET Framework 4.5的运行环境以及Visual Studio 2012的编译环境,Revit二次开发支持的编程语言包括C#、C++以及F#等,在二次开发前需要做一下准备工作:(1)安装Revit SDK,内含Revit API帮助文档。(2)安装ILSpy,ILSpy是一个.NET反射工具,可用来查看类和函数以及类之间的关系。(3)安装Revit Lookup,Revit Lookup包含在Revit SDK中,用它可以直观的查看API的对象,甚至不用编写代码就可以实现。(4)安装Addin Manager,它是一种插件,主要用来加载Revit的插件,Addin Manager的特点在于不用重启Revit就可以修改插件代码并再次加载和运行。Revit二次开发的实现方式实现Revit二次开发的方式主要有两种,即“外部命令”和“外部应用”,这两种方式是基于不同的接口来实现通过RevitAPI访问和扩展Revit软件的。(1)外部命令外部命令的开发方式主要通过IExternal Command接口来实现对Revit软件的访问和扩展,IExternal Command接口是通过唯一的抽象函数Excute来实现的,因此在执行的过程中Excute被当作主函数来调用;编译好的接口插件通过.addin文件来识别和加载,如图所示为外部命令调用方式,描述了外部命令是如何被调用的。 (2)外部应用基于外部应用IExternal Application的实现方式是通过.addin文件来识别和加载实现IExternal Application的外部插件,与外部命令的实现方式相比IExternalApplication接口有两个抽象函数OnStartup和OnShutdown,因此可以通过重载OnStartup和OnShutdown函数在软件Revit启动和关闭的时候定制所需的功能,如下文中的代码片段具体定义了这两个函数的用法。Public interface IExternal Application{Autodesk.Revit.UI.Result OnShutdown(UIControlledApplication aapplication);Autodesk.Revit.UI.Result OnStartup(UIControlledApplication aapplication);}

Revit二次开发好找工作不?Revit怎么编写二次开发代码?

2022/07/01

1735

文章介绍:Revit可以通过Visual Studio 2017编写二次开发代码,主要有两种形式:(1)外部命令(External Command)。其最主要的功能:添加一个Revit外部命令,并可由用户点击按钮来启动命令,是目前二次开发中使用最频繁,最快捷的操作方式。其中Execute函数是外部命令的主函数,Execute中包括一个输入参数和两个输出参数:输入参数commandData(IExternalData),它的主要作用是调取Revit中所有的参数信息;输出参数message(Steing),它的主要作用是当外部命令在执行过程中出现错误时,可及时返回错误信息;输出参数elements(ElementSet),它的主要作用是当外部命令执行失败时,对应的构件可被选中并点击显示,elements中的图元将被高亮显示。(2)外部应用(External Application)。它的主要功能:可以添加菜单和工具条,或执行其他初始化命令。它包括两个抽象函数:OnStartup和OnShutdown,用户可在启动和关闭Revit.exe程序时自动执行这两个函数。其主要用来在Revit中提供特定需求功能和定制插件效果(在菜单栏添加插件图标并实现对应功能)等。通常一个外部应用可以包含多个外部命令,这解释了为什么在操作软件时,只是点击了一个图标,却完成了很多操作指令。编程时,需要灵活结合运用外部命令与外部应用两种方式,完成对程序的二次开发。经过研究学习相关二次开发书籍、课件,总结出二次开发基本流程,主要步骤如下:(1)新建项目:打开visual studio新建Windows通用C#类库项目(ClassLibrary),并命名项目为Carpotheight(车位净高检测)。(2)添加引用:在解决方案资源管理器中右键引用→添加引用,找到Revit安装目录中的RevitSDK中的RevitAPI.dll以及RevitAPIUI.dll。(3)编写代码:在生成的类class.cs文件类头中添加using函数以及外部命令中的Execute函数来实现对Revit的车位净高(Carpotheight)代码的编写。(4)部署插件:通过写Addin的方式加入到Revit附加模块中。此步骤经过多次反复写入实践后,笔者通过学习、总结出更加便捷,有效的方法:通过用txt文本写出文件调用路径外,然后更改文件格式为.dll即可。(5)执行插件:经过以上操作步骤,重启Revit软件之后,便可在软件附加模块中找到名称为车位净高(Carpotheight)的插件。

Revit二次开发要用到哪些工具?Revit二次开发3款常用工具推荐

2022/07/01

3082

文章介绍:要想完成对Revit的二次开发,工具当然是不必可少的,目前Revit二开常用的三款工具主要是:Visual Studio 2017、RevitSDK以及ILSpy。下面进行逐一介绍:(1)Visual Studio 2017Revit 2017是基于.NET下的运行环境,所以需要使用Visual Studio 2017的.NET环境来编写。Visual Studio 2017目前最完善的C#编程语言开发平台,所有关于二次开发的编辑、测试、修改都需要在Visual Studio 2017上运行。(2)Revit SDKRevit SDK包含Revit的帮助文档及带源代码的例子。SDK的全称是:Software Development Kit(软件开发工具包),主要目的是方便编程人员获取帮助、源代码的例子和一些实用开发具。Revit SDK相当于Revit的字典,编程时可以参考SDK,更容易编写代码,熟练之后可以减少使用次数。字典是非常重要的环节,但也不能完全照搬。在SDK中包含:说明性文档,比如:Read Me First.doc、Getting Started with the Revit API.doc。开发参考文档,比如:Revit API.chm,制作安装程序时的Revit AddIn Utility.chm,制作用户界面时的Autodesk Icon Guidelines.pdf。同时还包含两个重要工具:Add-InManager和Revit lookup。Revitlookup是Autodesk公司开发的插件,主要是用来直观查看API的对象。包含在Revit SDK中,可以供用户利用源代码自行编译。Add-InManager同样是Autodesk公司开发的官方插件,用来加载Revit的插件。主要优点是可以不用重启Revit就可以修改插件代码并再次加载运行,包含在Revit SDK中。(3)ILSpyILSpy是一个免费的.NET反射工具,可以用来查看.NET Assembly的类和函数以及之间的关系。开发过程中经常利用它来查看类和函数以及类之间的关系,比如继承关系,或搜索开发者想要的内容。

Revit二次开发怎么学?完成Revit二次开发需要准备哪些方面的内容?

2022/07/01

1582

文章介绍:随着我国建筑业设计、建造过程绿色、精益技术的发展,BIM技术越来越得到整个建筑行业的认可和使用。运用BIM技术解决实际工程问题的时候,常常会面对很多比软件初始设定的解决方案要复杂、难解决的问题。单靠某一款软件或依靠软件提供的更新迭代往往无法全部解决这些问题。面对这样的情况,Autodesk公司开始提供RevitAPI接口,面向全社会,供所有开发者使用。编程相应问题的二次开发成果是基于Revit软件的插件,它不仅能够创建、调取BIM模型参数还能够实现批量、智能化操作。通过这样的方式能让原本复杂的工作由软件程序代替完成,从而大大减少工作量,进而提升整体工作效率。采用二次开发程序解决实际工程问题远比依赖软件自身要方便、快捷、高效,同时也使Revit的应用范围更加广阔。Revit二次开发所需准备在进行二次开发前,需要知道“类”的概念。“类”是C#的核心概念,类包含构造器、属性、方法,“类”是创建“对象”的模板,“对象”包含了“类”的一系列功能。“对象”通过“类”构造,“类”也可以作为参数传递信息。同时不论是图元还是处理图元的方法,一律都封装在类中,各种类又分别放置在不同命名空间下,最终都以函数库.dll文件存在,通过接口可以使用这些函数库。为了完成对Revit的二次开发,主要需要准备以下方面的内容:(1)C#编程语言:提供基础的编程代码及操作逻辑。在Revit平台中,可用编程语言种类丰富,只要是基于.NET框架下的语言都能够在其中进行二次开发。但经过综合分析对比,C#编程语言是一种安全的、稳定的、简单的,由C和C++衍生出来的面向对象的编程语言。C#综合了VB简单的可视化操作和C++的高运行效率,是.NET开发的首选语言。同时C#也是是目前国内资源最多,受众人群最广,对Autodesk公司最兼容的编程语言。所以选用C#作为Revit平台二次开发的编程语言。(2)Revit 2017平台:程序运行的基础。(3)开发工具:Visual Studio或Sharp Develop。程序研发所需的编程环境。(4)RevitSDK:为编程提供帮助。

Revit二次开发第一步做什么?Revit二次开发首先要做什么?

2022/07/08

1627

文章介绍:用户进行Revit的开发时首先需要引用程序集Revit API.dll和Revit APIUI.dll,其中Revit API.dll程序集中包含了IExtennalDBApplication和其他的相关接口,而RevitAPIUI.dll程序集中包含了IExternalCommand和IExternalApplication接口。用户需要在开发的插件中实现这些接口,才能对Revit进行访问和扩展。(1)外部命令(IExternalCommand)IExternalCommand接口的作用是用户用来扩展相关功能,该接口仅有一个抽象函数——Excute,通过重载这个函数来实现接口,这个函数将作为外部命令的主函数被调用,在完成执行后,外部命令对象会直接被销毁。因此,数据仅能保持在当次执行的外部命令对象之中。(2)外部应用(IExternalApplication)IExternalApplication接口的主要作用是用于添加设计的应用,Revit通过.addin文件对开发的外部插件进行识别与加载。IExternalApplication接口有两个抽象函数——OnStartup和OnStartdown,通过重载这两个函数来定制Revit在启动和关闭时触发的功能,可以对软件UI进行定制。(3)数据库级别的外部应用(IExtennalDBApplication)数据库(DB)级别的外部应用相较于上述的外部应用而言,它并未提供任何的RevitUI接口,主要作用是对于事件的处理,开发人员可以通过IExtennalDBApplication接口来添加所必需的外部应用。而其与IExternalApplication也具备相同点,IExtennalDBApplication同样是OnStartup和OnStartdown两个抽象函数,OnStartup方法用于用户对事件进行注册。

Revit二次开发有几种方式?做Revit二次开发的必看!

2022/07/08

9137

文章介绍:Revit二次开发有三种方式:外部命令(IExternalCommand)、外部应用(IExternalApplication)和宏(Macro)。下面将简要说明外部应用、宏的开发过程,并着重说明外部命令的开发过程。1.宏(Macro)宏是基于RevitAPI编写的程序,能实现重复任务的自动化,是最简单的二次开发方式。在“管理”选项卡—“宏管理器”里面可以进行宏的使用。可以通过Revit自带的编译器完成代码的编写和编译,RevitAPI的功能基本上都可以被宏使用。Revit本身自带宏管理器,负责运行宏程序,不需要额外的插件。2.外部应用(IExternalApplication)开发者可以通过外部应用来添加自己的应用。外部应用开发的插件,可以在启动和关闭Revit软件时自动执行,插件本身被添加到菜单中,外部应用的优点是不需要手动加载二次开发的插件,但很少通过外部应用的方式来实现Revit的扩展功能。IExtermalApplication接口具有两个均为UIControlledApplication类型的抽象函数:OnStartup和OnShutdown。通过外部应用中重载OnStartup和OnShutdow函数,在启动和关闭Revit软件时自动调用来实现所需功能。外部应用方式无法访问Revit文档及相关操作,需要通过UIControlledApplication访问定制UI和注册事件。3.外部命令(IExternalCommand)IExternalCommand是RevitAPI用户通过外部命令来扩展Revit时必须在外部命令中实现的接口。外部命令是应用最频繁的二次开发的方式。IExternalCommand接口只有一个抽象函数Excute(),用户可以在这个函数中添加Revit命令,当用户点击启动命令按钮,程序会重载这个函数来实现IExternalCommand,即可实现二次开发。Excute()与一般程序中的Main函数的功能一致,是程序的入口。

Revit二次开发有哪些必备工具?Revit二次开发工具推荐

2022/07/08

2577

文章介绍:使用Revit API进行二次开发对计算机的硬件性能有一定的要求,比如的CPU为Intel(R)Core(TM)I7-7700,显卡为NVIDIA GeForce GTX 1080,运行内存为32G,操作系统为64位的windows10。同时开发也需要一定的软件要求,本文的软件工具主要有Revit 2018、Microsoft Visual Studio 2019、Revit SDK(Software Develop mentKit,软件开发工具包)、Revit LookUp。1)Microsoft Visual Studio2019Microsoft Visual Studio 2019是微软公司开发的新一代集成开发环境(Integrated Development Environment,IDE),简称VS,具有强大的软件开发功能,支持多种编程开发语言。2)Revit SDK开发工具包Revit SDK是Revit二次开发必需的工具,是Autodesk官方提供的开发工具包。包含了开发所需要的各种工具,如Add-InManager插件工具、Samples(带源代码)文件夹、Revit API.chm开发帮助文档等。①Add-InManager插件Add-InManager是Autodesk提供的官方插件,是用来快速加载或者卸载二次开发程序的工具,不需要手动创建Addin文件,就可以自动保存加载命令。其特点是修改插件程序代码时,不用重启Revit可以直接加载运行,方便开发人员进行调试。该插件通过SDK安装,将SDK安装文件中Add-InManager文件夹里的“Add InManager.dll”和“Autodesk.AddIn Manager.addin”文件按路径“C:\Users\Administrator\AppData\Roaming\Autodesk\Revit\Addins\2018”复制到“2018”文件夹,即可完成安装。安装后,在Revit软件中的“附加模块”选项卡页面下的“外部工具”中使用。它有三种加载方式:“ManualMode”、“Manual Mode,Faceless”、“ReadOnlyMode”,其中“Manual Mode”对应手动(Manual)事务模式、“Read Only Mode”对应只读(Read Only)事务模式,“Manual Mode,Faceless”表示运行前一次刚刚运行的插件。②Samples源代码文件夹Samples文件夹提供了各种程序代码和示例,可以用VisualStudio2019打开“SDKSamoles.sln”文件,检索关键字来查找所需类,查看相应的代码实例,进而帮助开发者更好的理解学习Revit API中各种类的使用方法。③Revit API.chm开发帮助文档SDK中的Revit API.chm文档包含了API中所有的类、方法和属性的详细解释,是二次开发者必须参考的重要文档。Revit API.chm文档中给出了C#、VB和C++语言的代码示例Examples。3)Revit LookUp插件Revit LookUp也是由Autodesk官方提供的开发插件,提供了快速查看图元属性和参数信息等功能。该插件安装完成后,启动Revit软件时,在“附加模块”下即会出现RevitLookup调用按钮。使用RevitLookup插件可以查看Revit内图元的参数和属性信息。比如,选中BIM模型中的楼板构件,便可以通过该插件查看楼板实例的各项属性和参数,且可追溯到该实例的族类型Floor。

Revit二次开发必备工具,这篇文章都帮你总结好了!

2022/07/11

4649

文章介绍:在对Revit进行二次开发时,我们必不可少地要用到一些工具,如Microsoft Visual Studio、Revit Software Development Kit等。下面就为大家总结Revit二次开发的必备工具:RevitRevit软件是Autodesk公司开发的用于三维建筑信息模型设计的一款软件,它由Revit Architecture(建筑专业)、RevitMEP(机电专业)和Revit Structure(结构专业)三个部分组成。Revit软件一经推出,便得到了国内科研机构、高校、设计院、施工技术人员等的青睐,并且在国内市场得到了快速的发展与推广。通过该软件,设计人员可以按照自己的思考方式更加直观的进行设计,从而提高了设计质量,并为工程项目管理人员提供了更加精确的结构设计作品,使工程项目管理人员能够更加精细化的进行项目管理。另外,Revit软件应用了可以简化工作流的Ribbon界面。使用者可以根据自身的实际需求修改、规划设计界面布局。Microsoft Visual StudioMicrosoft Visual Studio是一种软件开发平台,它包含了软件二次开发所需要的大部分工具。它也是一种语言编程软件,可以使用各种语言在VS中进行编程,完成代码的编译。Revit Software Development Kit在进行Revit软件安装时,会附带一个软件开发工具包(Software Development Kit)的安装包。在软件开发工具包中,具有入门文档、开发手册或帮助文档、样板案例文件夹Samples等。其中最常用的资源主要是RevitAPI.chm和Samples文件夹。RevitAPI.chm中包含了所有RevitAPI相关接口的详细说明,对于Revit二次开发人员来说,在开发过程中是一个非常重要的参考工具。在开发手册的Index页面可查找一些接口,在查找的过程中,接口记录栏会根据输入内容快速进行过滤。接口信息展示区主要内容有接口类和接口名称、接口定义(一般同时给出C#、VB、C++三个版本的定义)、参数说明、代码示例等。Samples文件夹中包含有很多官方的实例项目,对于Revit二次开发初学者入门学习有着很好的指导意义。RevitLookupRevitlookup是Autodesk公司开发的官方插件,不需要编写代码就可以直观看到API对象。它是一款非常实用的辅助Revit二次开发人员了解构件元素的强有力工具,其由Autodesk公司的著名软件咨询分析师Jeremytammik开发而成。并且在GitHub上进行了开源。通过Git客户端工具将源码从GitHub上克隆到本地进行编译并放置Addin文件即可使用。RevitLookup插件版本必须和自身使用Revit版本相一致,否则在开发过程中该插件无法使用。开发人员在进行Revit二次开发之前可以使用RevitLookup查看构件的一些隐藏属性,比如Revit构件对象的属性、参数等信息。除此之外还可以通过该插件快速获取源代码。它包含于SDK工具包的压缩包中,也可以通过源代码编译获得RevitLookup插件。官方插件Add-InManagerAdd-InManager同样是Autodesk公司开发的一种官方插件,通常用它来加载基于Revit的各种功能的插件。它也包含于RevitSDK中,在Add-InManager插件出现之前,在进行Revit二次开发时,时常会遇到插件运行错误、出现异常或者实现有误等情况,一般情况下都需要关闭Revit软件修改插件代码,然后再重新启动Revit进行调试,这样整个开发过程就显得非常繁琐。Add-InManager插件具有不用重启Revit软件就可以修改各种插件代码并重新加载和运行的优点。因此很好的解决了上述问题。ILSpy工具ILSpy是一种开源免费的.NET反射工具,使用十分方便。它可以将将插件程序生成的DLL文件转换为C#语言以及进行C#、VB、IL三种语言之间的转换。我们在学习他人代码时,利用ILSpy的反编译功能可以方便查看他人所写程序的类库及相关接口。在Revit二次开发过程中可以使用ILSpy工具查看.NETAssembly的类、函数以及类之间的关系,例如类之间的继承关系。

Revit二次开发做什么?Revit二次开发基本要素

2022/07/15

1751

文章介绍:今天我们来简单聊聊关于Revit二次开发的那些事:Revit的可扩展性从2005年开始Autodesk公司便开始提供Revit API,版本从Revit 8.0到Revit2017。Revit API是应用程序接口,其英文全称为Application Programming Interface,是软件二次开发中不可或缺的基本因素。起初,Revit8.0的API只能访问文档中的对象。经过长时间的研究之后便可以在Revit2010版本的API进行文档对象的过滤以及族库的建立,而自从Revit2012版本的面世以来,其API已经可以实现大量的定制拓展,以满足各个领域的需求。Revit API能够提供软件各种应用的功能接口,促进Revit可视化功能和数据分析的信息集成。Revit使用者可以根据操作需求进行功能拓展。Revit API则是通过与计算机工作环境Microsoft.Net Framework兼容的语言如:Microsoft VisualC#或VB.Net来进行调用的。API功能介绍设计人员一般进行建模操作时只需要使用菜单栏中的按钮功能就可以实行。而Revit还提供了协助调用外部命令的程序接口API,使得设计人员可以通过编写外部程序,从而对Revit中建立的模型数据进行批量操作。其能够实现的功能如下:1)可以通过插件的开发来达到访问模型信息数据的目的。2)在建模过程中,本来要进行多步才能完成的操作,通过一键化操作完成。3)通过接口对外部应用程序进行引用来实现对模型的操作。API开发方式当使用外部命令方式进行软件开发时,主要分以下几步进行操作[37]:1)需要新建类,并从IExternalCommand接口派生;2)然后重载IExternalCommand.Execute()方法;3)添加用户代码实现命令功能。Revit API开发工具有两种:一种是VisualStudio,针对Revit各种版本,一般选择Microsoft Visual Studio 2013,引用接口组件文件Revit API.dll、Revit APIUI.dll,然后将接口组件通过本地引用到模型上便可以执行相应的功能。第二种开发工具是VSTA(Visual Studio Tools for Application),是Revit自带的开发环境,这就类似于AutoCAD中的VBA或OFFICE中的VBA开发工具,VB.NET和C#语法都可以适用于VSTA的操作。通过生成脚本宏的基本原理将程序附着在模型之上,通过宏的运行实现功能的操作。

CATIA怎么二次开发?CATIA的三种二次开发方式

2022/08/04

8722

文章介绍:软件的二次开发是在现有的软件上通过编程语言进行功能的扩展,满足自己的需求,不会改变原有软件的内核,实质上是软件创新的过程。CATIA二次开发的方式主要有3种:基于知识工程的EKL语言、Automation API和CAA,其具体介绍如下:(1)基于知识工程的EKL语言EKL全称Enterprise Knowledge Language(企业知识语言),是在V6/3DExperience环境下基于知识工程的一种编程语言,属于进程内的访问,与CATIA软件可同时执行,它的目的是在更寻常的条件下开发和集成应用程序。EKL具有可移植、面向对象、不需要编译、自动化、能直接操作V6对象等特点,可以用作在数据库中搜索对象、浏览不同结构、创建产品和PLM对象、导出数据至Excel或Xml中、设置或读取产品属性。EKL从低到高被定义为数学企业语言、核心企业语言、高级企业语言和可扩展企业语言4个等级,前三者一般应用在参数、公式、设计表、规则、检查等知识工程工具中,可扩展企业语言用于用户更高级定制开发中。EKL语言面向对象编程,语法简单。语言浏览器类似于帮助文档,通过搜索需要操作的对象,可以查找其对象的支持/继承类型、属性、使用此类型的函数、返回此类型的函数和函数的具体使用方法。(2)AutomationAPI(Automation Application Programming Interface)AutomationAPI全称AutomationApplicationProgrammingInterface(自动化应用接口)。CATIA基于AutomationAPI进行二次开发的技术是一种基于COM原理,在脚本解释环境下执行的技术,继承了COM技术优点,简化了底层实现细节,为二次开发提供了很大的便利。COM(ComponentObjectModel)是由微软推出的一套接口规范,通过设定不同组件之间的标准和协议,实现多语言、跨进程的模块通信,增强了代码的复用率,实现程序的可定制性。这种技术的核心就是通过一个组件去调用另外一个组件,因而不能直接的去获取和处理数据。在CATIAAutomation中,所有数据被封装成了对象的形式,并具有方法和属性,形成了特定的树形结构,Application是根对象,下面又派生出许多子对象。Automation API是CATIA预先编写的函数接口,专门用来与外部通信。不同的对象拥有不同的API,通过API调用对象的方法和属性,则间接的对CATIA软件进行操作。(3)CAA(Component Application Architecture)CAA全称Component Application Architecture(组件应用架构)是一种采用COM原理和OLE技术,通过面向对象语言来实现CATIA二次开发的方式。CATIA软件按照组件模型原理建立,因而用户可以开发出定制化组件,对软件进行扩展;也可以将自己开发的组件结合起来,实现自定义的应用。CAA采用C++语言编写,有完整的一套基于CATIA底层的C++函数库,用户在RADE环境下通过API接口与CATIA进行通信。RADE(Rapid Application Development Environment)是达索公司提供的快速应用研发环境,是一个可视化并拥有完整编程工具组的集成开发环境。RADE以Microsoft VisualStudio为载体,开发工具集成在VC++环境中,包含TCK(关键工具配置)、MAB(多空间应用生成器)、CUT(C++单元调试管理器)、MKMK(CAA编译工具)和CID(C++交互式面板)等一系列工具。API则提供了操作对象模型的方法和函数。——节选自《基于 BIM 技术的桥梁工程参数化建模方法及设计系统的研究》张云鹤版权归原作者所有 侵删

Revit二次开发知多少?Revit二次开发工具和基础

2022/08/16

1388

文章介绍:你对Revit二次开发的了解有多少?今天腿腿小编带大家了解一下Revit二次开发的工具与基础:Visual StudioMicrosoft Visual Studio(简称VS)是微软公司的开发工具包系列产品。VS包括了如集成开发环境(IDE)、UML工具、代码管控工具等在软件生命周期中所需要的大部分工具。它主要是对计算机程序以及网站、Web应用程序、Web服务和Mobile应用程序等进行开发。Visual Studio使用Microsoft软件开发平台,例如WindowsAPI、Microsoft Silver light等。Visual Studio包含一个支持IntelliSense(代码完成组件)和代码重构的代码编辑器。集成调试器不仅能用于源级调试器,还能用于机器级调试器。其中的Tools包括代码剖析器、用来构建GUI应用程序的设计器、Web设计器、Class设计器和Database模式设计器。它拥有在每个级别上增强其功能的插件,包括添加对源代码控制系统(如Subversion和Git)的支持,以及添加新Tools集(例如用于特定领域语言的编辑器和可视设计器)或用于实现其他功能的Tools集。C#.NET.NET实质上是Microsoft XML Web services的服务集成平台,允许在任何操作系统和编程语言的应用程序中通过Internet进行通讯和数据共享,并且拥有无缝、流畅的操作体验。C#由微软公司在2000年发布,由安德斯·海尔斯伯格领导开发。它是第一个面向组件的编程语言,也是面向对象、运行于.NETFramework之上的高级程序设计语言。在一定程度上,由于开发人员的关系,C#看起来与Java相似,同时和Delphi一致,直接集成COM,重点使用于.NETwindows网络框架。C#简单易用又安全稳定,衍生于C语言和C++,又去掉了一些它们的复杂特性,使得C语言和C++编程人员可以很快转向C#编程开发工作。它同时具备C++的高运行效率和VB的可视化操作特性,能够运用Microsoft.NET提供的一系列工具和服务,从而成为.NET开发的首选语言。C#中有多种数据类型,常用的有布尔型、常量、变量、数组、字符串、结构体、对象等。Revit APIAPI(Application Programming Interface)为应用程序接口,Autodesk Revit系列软件的所有产品都会提供相应的API,这使得第三方开发者可以通过接口自主开发相应软件的插件,并附加到软件当中,方便设计者使用。Revit通过API将软件设计者等设计的应用程序集成到Revit系列产品中,实现Revit功能的扩展。RevitAPI为Revit的功能模块,与Architecture、MEP和Structure模块相似,相当于Revit的附加功能,需要在Revit运行时才能工作。其使用语言需与.NET兼容,可使用如VB、.NET、C#及C++等计算机语言。通过API可以访问Revit后台,通过点、线、面建立三维模型,过滤器筛选模型的图形数据并更改模型参数数据,从而实现对模型元素的修改。通过创建插件,建立窗体程序来完善用户的交互界面,通过编程循环或筛选功能可完成一些重复工作的自动化,通过后台计算功能可完成模型的部分计算,这是Revit原来所不具备的。RevitAPI不仅对Revit功能进行了补充,还可以将插件程序应用到基于Revit的各层产品,帮助其他软件建立模型及进行计算,实现完整的BIM分析流程,极大的解放了设计人员,也增强了软件设计的精确度。

Revit是做什么的软件?Revit二次开发是什么意思?

2022/08/26

1870

文章介绍:Revit软件是Autodesk公司用于三维设计的重要软件,是目前全球最具影响力的BIM工具之一。软件可以满足建筑与设计方面的多种要求,提供准确无误的设计信息,通过相应的建筑信息模型设计工具,保证建筑结构整体从设计到最终成品在各个方面保持一致性。Revit作为建筑、结构与机电为一体的建筑设计软件,可以设计包含暖通、电气和给排水等设计的复杂的建筑模型,更高效的完成标准设计,能够很好的体现基于BIM的装配式建筑信息化的过程,实现BIM信息应用的目的。在Revit中的族分成三大类,分别是内建族、系统族和可载入族:系统族在Revit中可自定义,以创建诸如墙体、梁、地板等基本元素。类型是族的属性,因此相同的类型族可以有多种尺寸。Revit二次开发概述随着建筑设计的迅猛发展,传统设计不能满足目前的设计模式,由于三维信息建模表达形式更加准确,直观,因此逐渐被应用。Revit作为一个BIM建模平台软件,其二次开发功能不仅仅能创建模型以及批量操作构件,还能连接与其他软件的信息传递共享。

Revit API是什么?Revit API数据接口及二次开发流程

2022/08/26

2864

文章介绍:Revit API接口体现了Revit的可扩展性,其对应的应用程序编程即Revit API为二次开发提供了很大的便利。用户可根据自己的需求运用软件的可扩展性功能。现阶段软件开发人员更多的是对Revit原本的功能进行优化编码,尝试为软件进行新功能的扩展。Revit API包含众多命名空间,且所涉及专业较广泛。每一个空间对应有符合的工具类别。由于Revit API是属于在Revit基础上的一种类库,需在Revit软件运行时才能工作,因此可通过添加外部工具等插件来扩展和增强软件的应用。Revit API可在上述的Revit Architecture(建筑)、Revit Structure(结构)及Revit MEP设备(水、暖、电)之上进行实现开发功能。Revit API是扩展Revit功能的程序开发接口。二次开发时Revit API有两个接口,分别是外部命令External Command和外部应用External Application两种模式。第一,External Command外部命令。外部命令与菜单一一对应,每一个外部命令都需要实现Autodesk.Revit.UI.IExternalCommand接口,该接口只需要实现Execute接口中必须重写其中的抽象函数:Excute(),该函数是External Command接口的入口函数,必须重写。第二,External Application外部应用。外部应用是把一系列外部命令打包成一个应用包,同时外部应用还可以通过启动时注册Revit的addin文件来扩展Revit功能;外部应用随着Revit程序有关联性。因此这个函数在实现IExternal Application的接口之后,需要重写OnStartup()函数和OnShutDown()这两个函数。Revit API二次开发流程如下:1)创建一个C#项目。2)添加上述两个引用(Revit API.dll和Revit APIUI.dll),实现接口书写代码,为命令类添加属性。3)选择扩展Revit功能的方式(External Command外部命令External Application外部应用)。4)在Execute中添加编程代码来实现功能的创建,并加载DLL文件。5)打开软件Revit,点击附加模块外部工具模块,进行运用。

BIM软件怎么二次开发?各通用BIM软件二次开发概述

2022/08/29

3246

文章介绍:目前,对于各BIM软件二次开发工具的对比较少,但对各BIM厂商内部软件开发工具介绍的较多。各软件二次开发工具各不相同,但基本上都有内嵌简易开发工具、利用软件接口完整程序的开发两种使用形式,下面结合本人测试结果,对各BIM软件二次开发工具异同对比如下:(1)Catia二次开发概述Catia二次开发主要有三种方式,分别是知识工程中使用的知识工程(Knowledge ware)、自动化应用接口(Automation API)的宏、CAAV5的C++和Java应用接口。知识工程是一套预定义的服务,以规则、检查为基本使用场景,从函数、规范到组件和系统来一步一步实现的。它主要采用KWE语言(与VB.NET相似但更简单),主要用于三个方面:知识顾问、知识专家和产品工程优化。Automation API用于自动化(Automation)组件,日志(Journaling),利用visualBasic和JavaScript/HtIlll的开发,这是一种交互方式的定制。该定制方式允许用户获取CATIA的数据模型。AutomationAPI具备了与任何OLE所兼容的平台进行通讯的能力。CAAV5基于组件的定制开发。CAA是组件应用架构(Component Application Architecture)的缩写,是Dassault System产品扩展重要组成方式。CAAC++可以进行最有效率的应用程序开发,但入门困难。CAA Automation功能限制相当大.但入门容易。知识工程EKL语言最简单,但是扩展功能有限,不能访问几何图形及属性信息,只能获得有限的参数信息。(2)Revit二次开发层次概述Revit的二次开发主要有Dynamo可视化开发、RevitAPI两种形式。Dynomo是一个基于Revit的可视化编程平台,通过代码块(可使用内部提供的块或自己开发新的块)实现单一功能,再通过逻辑线进行逻辑关联。主要编程语言为DesignScript和Python。设计师通过定义程序流程,探索参数化设计方案和自动化建模与模型检查工作流,帮助用户实现互操作性的工作流程和文档管理,自动的模型创建、协调、模拟和分析。RevitAPI(Application Programming Interface,应用程序编程接口)是Revit二次开发的工具。RevitAPI是在Revit中大量的命名空间和使用类库的集合,是Revit与.NETFramework的接口。.NETFramework是可以用来开发应用软件与托管类库的一个平台。与Microsoft.NETFramework兼容的语言,如C++、C语言、VB等编程语言都可以使用该接口对Revit进行二次开发。用户可以使用自己熟悉的编程语言通过该接口对Refit进行二次开发,最终达成结果。不同语言开发的插件可以交互。(3)Microstation二次开发概述Microstation有三种二次开发接口:MDL(Microstation Development Library)、Microstation VBA、Microstation Addins三种。其中,MDL是一种结构化编程语言,以C语言为基础,其具有编译程序、链接程序、运行时间库、库管理程序。VBA是Microstation提供的基于VB面向对象的编程语言,它需要与MicroStation同时运行,对MicroStation进行编程控制是以MicroStation Object Library接口为基础的。Addins基于.NET开发,可使用C语言、VB.NET进行编程,由其编译后的DLL文件与MicroStation进行交互。MDL可以直接在MicroStation中运行并且表现为MicroStation本身的一部分,程序运行效率较高,但人门困难。VBA语法结构简单,开发快速高效,其界面可以由丰富的WinForm资源设计,更加美观,且方便地同.NET平台的其他软件集成,但由于Microstation窗体资源有限,不对代码进行编译,无法对程序保密.Addins在MicroStation程序的外部单独编译,对三维模型元素的操作效率较低。

Revit二次开发用什么语言?

2022/12/07

1487

文章介绍:Revit API是建立在Revit产品的基础之上的。它是一个类库,必须在Revit运行时才可以工作。通过运用API,可以获取模型的图形数据、参数数据;建立、调整、移除模型元素;通过生成插件对UI强化、对复杂工作进行智能化;通过整合第三方应用,来完成包括链接到外部数据库、转移数据结果到分析应用中等。Revit中的Architecture模块、Structure模块与MEP模块的API十分类似,因此共同称为Revit API。Revit API可以通过C#一程序开发语言来编写,也能够通过使用编程完成对模型元素的建立、调整和移除等功能。通过创建插件来实现对UI用户界面功能的强化,以及对某些重复性管理工作的智能化,还能够把应用程序整合到基于Revit的各层产品。同时还能够进行所有类型的BIM数据分析,以及进行自动建立项目文件。通过对Revit进行二次开发,将简单基本参数和重要基本参数的相对关系以及简单基本参数之间的约束关联和Revit连接,从而完成了采用Revit平台对新族的参数化构建。Revit API提供了用户与Revit的接口,可以实现浏览BIM模型参数、建立UI交互界面等功能。常用的二次开发工具有VisualStudio2017开发软件、RevitSDK工具包、RevitLookup插件和AddInManager插件。VisualStudio2017是基本的软件开发平台,其上承载了大量包含C#语言、F#语言、C++语言等和.NET兼容的编程语言,使用这些编程语言就能编写出可以在Revit API上运行的程序。      以上就是Revit二次开发用什么语言的全部内容了,每个人观点不同,希望本篇文章能够帮助大家!

什么是Revit二次开发?

2022/12/07

1288

文章介绍:Revit是由Autodesk公司于2002年收购,并基于BIM理念继续开发完善而推出的平台级建模软件,与Navisworks、Robot等专业软件组成了Autodesk公司的BIM解决方案。该软件面向建筑、结构、钢结构、机电设备等多个专业,提供了基本的建模功能、视图功能、分析功能、出图功能和协作功能等。Revit软件具备BIM技术中的可视化、协同性、可出图性和参数化等特点,做到在任一视图中对模型的改动,将会关联到整个模型以及所有的视图,这是与二维施工图设计软件最本质的区别。Autodesk公司为Revit软件提供了二次开发的接口RevitAPI(ApplicationProgrammingInterface,应用程序接口),使得用户对Revit的使用可不再局限于手动地选择命令,而是可以通过代码自动执行一系列Revit的建模等命令,这大大提高了Revit的使用效率,促进了Revit的应用和普及。应对实际项目对Revit软件提出的更高更复杂的要求,往往需要设计者利用二次开发工具,通过RevitAPI自行开发所需的功能。RevitAPI主要由“RevitAPI.dll”和“RevitAPIUI.dll”等在Revit运行期间运行的类库组成。“RevitAPI.dll”包含用于访问Revit的应用程序、文件、图元等方法,还包含了IExternalDBApplication(数据库级别的外部应用)及其接口。“RevitAPIUI.dll”包含了ion(选择)等操控方法以及RibbonPanel(功能区面板)、TaskDialogs(对话框)等与人机交互和Revit界面相关的API接口,另外还包含了IExternalCommand(外部命令)及其接口、IExternalApplication(外部应用)及其接口。开发者通过RevitAPI将其开发的应用程序集成到Revit软件中,形成Revit插件,以扩展和增强Revit的功能和应用。RevitAPI开发的软件稳定性很好。近年来Autodesk公司对RevitAPI的优化不断深入,尤其在架构和规范方面不断完善,修改了部分方法使其归属到相同的类中以帮助用户更好地理解和使用接口。RevitAPI借助MicrosoftVisualStudio平台,依托与Microsoft.NETFramework兼容的C#等编程语言进行Revit二次开发。Revit二次开发所需的条件包括:Revit软件、MicrosoftVisualStudio、RevitSDK(SoftwareDevelopmentKit,软件开发工具包)等。      上述就是为大家整理的什么是Revit二次开发,希望本篇文章能够帮助大家!

Revit二次开发中接口的概述

2022/12/07

1280

文章介绍:Revit API提供了强大的类库,配备一套完整的机制规范和扩展Revit的功能,Revit主要提供了RevitAPI.dll和RevitAPIUI.dll两个类库文件,其中封装了大量的库函数供开发者调用,一般开发者都需要调用IExternalCommand函数来实现外部应用,如果Revit处于运行状态下,外部命令就会被触发激活,当使用者调用该命令,软件会自动地去访问模型数据。如果开发者创建的外部命令被集成在Revit中后,一般通过Revit功能区的附加模块栏目或者外部自定义菜单栏进行触发。Revit提供了IExternalCommand接口用于使用者访问模型数据,该接口只提供Excute()函数,因此用户需要重载该函数来进行开发,该函数主要提供了输入参数commandData、输出参数message和输出参数elemnt,不同的参数功能基本能满足用户者的需求。当调用到接口后,如果实际访问到模型数据,需要使用库函数中的类函数,Revit为用户访问数据提供了UIDocument和Document两个大类,Document类主要用于访问模型上的数据,例如模型的场地和位置、模型中梁板柱等元素的数据等,UIDocument类提供更好的用户交互性,比如当用户希望获取选中的Revit模型中某个构件的数据,利用该类中的函数将会获得软件给出的数据。Revit也为用户提供了用于添加外部应用的接口IExternalApplication,该接口封装了OnStartup和OnShutdown函数。如果用户希望在Revit原有的功能栏中添加需求的功能项目,该接口将能提供更多的方便用于个性化UI开发,但是无法访问模型的数据。Revit将每次修改模型的操作都会进行一个自动记录,该行为称为事务,如果一个修改操作没有被完成,当软件执行外部命令的时候就会抛异常,这时候会产生事务回滚的现象。事务的模式主要有手动模式和自动模式,其也提供了Transaction、SubTransaction以及TransactionGroup三个类。      以上就是Revit二次开发中接口的概述,为大家简单介绍,希望本篇文章能够帮助大家!

怎么使用Revit软件进行二次开发平台?

2022/12/07

1293

文章介绍:Revit进行二次开发时,需要用户在插件中实现特殊的接口,其中API函数提供了两种主要的接口形式,分别是外部命令接口和外部应用接口。AutodeskRevit提供了开放的API数据接口,方便用户根据功能需求,对软件进行个性化的定制开发,可以极大地提高设计工作的效率。1.外部命令接口(IExternalCommand):新命令可以被放在附加模块(Add-Ins)标签下面的外部工具(ExternalTools)菜单下,该接口只有一个抽象函数Execute(),Execute函数有一个输入参数和两个输出参数。输入参数是commandData,输入参数的类型是ExternalCommandData;输出参数有message和elements,输出参数对应的类型分别是String和ElementSet,插件的功能通过重载这个函数来触发实现。2.外部应用接口(IExternalApplication):用户定制的新功能会在Revit启动时在附加模块(Add-Ins)标签下自动新建功能面板,该接口有两个UIControlledApplication类型的抽象函数,这两个抽象函数分别是OnStarup和OnShutdown,UIControlledApplication类不提供访问Revit文档的途径,开发者可以通过重载这两个抽象函数来实现在Revit启动和关闭时的定制功能。Revit二次开发有两种模式,一种开发模式是在Revit软件自带的VSTA环境下通过API定义的宏来实现个性化的功能开发;另一种是在MicrosoftVisualStudio2015和Microsoft.NETFramework4.6的环境,可选用VB或者基于.NET的语言进行开发(C#、C、C++),由于C#语言结构简单,且有C++和C语言的优点,故一般采用这种语言进行Revit的二次开发。通过引用Revit软件安装目录的RevitAPI.dll和RevitAPIUI.dll两个动态链接库即可实现调用RevitAPI的函数。      好了,怎么使用Revit软件进行二次开发平台就为大家介绍到这,希望本篇文章能够帮助大家!

进行Revit二次开发有哪些方案?

2022/12/07

1262

文章介绍:Revit可以利用调用其自身的关系数据库来实现三维模型的高效创建,并且,模型中存储了大量的参数信息,利用软件的功能,还能够生成不同视图的二维图纸,满足项目的需要。进行Revit二次开发,分为两种解决方案:一、传统方案Reivt软件内附加二次开发模块,实现Revit软件的功能升级,由Revit附加模块连接企业信息库,实现模块自动升级、数据交换等,适用于设计业。二、在线应用方案脱离Revit软件在网页上调用模块数据实现显示、操作、热点等功能,由网站服务器、数据库服务器、文件服务器协同工作,适用于有装配式、模块化特点的工程项目或产品、智能家居等。1.Revit智能系统具有模块化、装配式特点的建筑物或构筑物均可定制开发相应的revit设计系统,实现模块拼装、价格预算,辅以后台数据库、后台管理网站、登录系统即可进一步实现模型数据共享、产品系列更新等功能。2.自动建模结合CAD在线看图技术中的dwg图纸读取功能亦可实现平面设备图自动生成revit模型之功能。      以上就是进行Revit二次开发有的两种方案,每个人观点不同,希望本篇文章能够帮助大家!

Revit二次开发主要指什么?功能有哪些?

2022/12/07

1706

文章介绍:Revit的功能主要致力于三维模型的建立以及信息的存储。Revit二次开发是以Revit软件为平台,通过其所提供的API(ApplicationProgrammingInterface,应用程序接口),来进行适用于不同专业、供用户根据自己的实际需要的外部应用开发。其中,对于一些具体功能的实现,API是外部应用程序与Revit之间的信息交互纽带。Revit API不支持在多线程里调用,必须在主线程里调用。Revit API的接口有两种:一是ExternalCommand外部命令,程序安装后将会出现在外部工具下拉菜单中,能在Revit界面上添加新命令;二是ExternalApplication外部应用,程序安装后会在Revit启动时加载,并在功能区新建面板。同时,也有两种开发环境可选,一种是在VisualStudio开发环境下进行,采用支持.NET开发的编程语言,如VB、C#等开发语言;另一种是使用由Revit自带的VSTA开发环境,在其自带的开发环境下通过APIRevit二次开发在国外应用较为广泛,如RoboBAT、CSI、CSC、RISA、USCost等,利用Revit提供的API成功开发了结构计算和概预算类应用软件。在国内,针对Revit二次开发的应用较少,并且多数是利用二次开发创建新族。但随着BIM技术在国内大力推广,国内许多企业、学者逐渐认识到了Revit二次开发的重要性和方便性,开始加大二次开发的研究力度。最初的Revit API功能有限,只能提供访问文档中的对象。然而到目前为止,Revit API已经基本满足建筑工程的需要。通过对Revit API的开发,Revit的功能更加完善,应用范围也更为广阔。API编程对Revit的二次开发,具体可以实现的以下功能:1.对建筑模型包含的图形数据和参数信息进行过滤访问2.创作新的族类型3.对模型中各个构件的创建、编辑、删除功能4.对消防管道压力值参数相关的计算5.对建筑模型的视图生成的设计6.遍历模型中的构件,显示一定条件下的模型信息7.过滤构件,只在模型中显示所需要的构件。当前Revit功能已经十分丰富,Revit2014提供的API还增加了点云、属性访问等功能      上述就是Revit二次开发是什么以及功能,希望本篇文章能够帮助到大家!

Revit二次开发对象结构有几类?

2022/12/07

1268

文章介绍:Revit API是Revit软件提供的一系列类库和命名空间,也是提供的编程接口。编程人员在Revit平台使用该接口来进行程序开发时能够更加便捷,并且可以通过这个接口来开发定制用户所需要的功能。Autodesk公司将RevitAPI视为Revit二次开发中重要的组成部分。迄今为止,RevitAPI也发展的越来越完善,系统从只能访问文档的对象到可以新增用户交互API,对象过滤API等,功能变得更加的丰富和强大。通过RevitAPI,用户可以创建插件自动执行重复性任务,自动检查纠错并生成相应报告。Revit二次开发对象结构主要分为三类,即Application应用类、Document文档类和Element元素类。在RevitAPI的类继承关系中,顶层类对象是Application和Document。Application对象代表着当前与之交互的Revit程序,用户可以通过它来操作当前打开的所有文档以及Revit中的一些设置,Document对象代表打开Revit文档(.rvt、.rfa),可以通过它操作当前文档中的各元素。View对象的活动文档Document的重要元素,并通过各个View视图构成Revit的可视界面和项目出图图纸,通过对View对象的操作可控制项目的可视化和出图效果。RevitAPI主要类的关系如图1所示,其继承关系如图2所示。图1Revit主要类关系图图2Revit类继承关系图      以上就是Revit二次开发对象结构有几类的全部内容了,希望本篇文章能够帮助大家!

Revit二次开发适用工具介绍

2022/12/07

1206

文章介绍:起初Revit是没有二次开发的,Autodesk根据一贯的做法对Revit进行了二次开发接口API的提供,开始时直接再次封装所有需要的API,随着开发者的要求越来越高,封装远远达不到开发者对API的需求速度,所以后来又从软件结构上做了优化,进几年RevitAPI处于高速发展中。可以说Revit就是CAD时代的AutoCAD,没有其它任何的软件能提供像Revit那样精确的模型和自动化的施工图,这满足了从CAD时代设计者的最基本要求,最重要的是Revit可以协同建筑、结构、设备等专业工程,可以进行碰撞分析、建筑功能分析、效果图渲染等多领域的工作,同一个平台下各专业兼容性很高,这对需要投入实际工程的单位是很具有吸引力的。由于Revit软件自身功能的局限,无法满足工程需求,基于软件进行二次开发是非常必要的。Revit本身带有二次开发工具,即Macro(宏),这种开发方式局限性较大,并不常用,较常用的二次开发是借助VS(VisualStudio)。开发环境:revit是基于.NET的运行环境下,需要使用VisualStudio,根据Revit的版本选择对应支持的VisualStudio和.NET版本。1.RevitSDK:Autodesk为了方便开发人员进行开发,提供了包含Revit API的帮助文档、100多个含有源代码的开发学习案例、以及一些重要的工具,如ADD-InManager和RevitLookup等。2.ILSpy:ILSpy是一个免费、便捷的.NET反编译软件,它的作用很多,可以用来查看一个.NETAssembly的类和函数,功能插件开发过程中还可以查看文件对应的反编译之后的代码等。3.RevitLookup:RevitLookup在RevitSDK压缩包中,可以读取revit对象的属性和参数,提供源代码和工具类。是Autodesk公司专门为开发者打造的二次开发组件,不用写代码就可以直观的看到API对象数据以及对象之间的相互关系,有效的帮助解决了开发过程中的编写代码问题,使开发者快速开发出需要的功能。4.AddinManager:AddinManager也是Autodesk的官方插件,主要功能是加载Revit插件,调试过程中可以直接修改插件代码后重新加载运行,不需要重新启动Revit,有效地帮助解决加载花费时间较长的问题。      Revit二次开发适用工具介绍内容就到这了,希望本篇文章能够帮助到大家!

Revit二次开发流程是什么?

2022/12/07

1650

文章介绍:Revit有外部命令和外部应用两种形式家在创建的外部应用插件,IExternalCommand是外部命令的接口,Excute是其对应的唯一函数,功能代码编写之前需要加载Excute函数才能吊用功能。      二次开发流程Revit二次开发流程包括代码编译与代码调试。第一步是开发环境的搭建,环境搭建必不可少的三要素是开发对象、编程软件和编程语言,以Revit模型作为开发对象,启动VisualStudio2019编程软件,选择C#作为编程语言,在VisualStudio2019中新建一个类库工程。为项目文档增添接口引用,RevitAPI.dll、RevitAPIUI.dll,由于项目中需要创建Excel表格,还需要添加MicrosoftExcel的引用。设置目标框架,将目标框架改为适合自己计算机系统的框架,否则程序会自动报错。第二步是编写代码,根据自己想要实现的功能,编写相应的代码。可以通过查看RevitLookup整理开发所需要的方法与属性,借助Revit API中丰富的类、方法、属性来完成特定功能代码的编写。第三步是对编写完成的代码进行代码调试,功能插件运行之前,需要先在VisualStudio2019中进行调试,调试成功后将生成的.dll文件复制到Revit文件中。如果代码调试不成功,还需要重新检查代码,根据提示对错误代码的进行修正,重复调试指导调试成功。第四步是插件的运行,编译成功后,首次运行插件,进入Revit应用界面点击“附加模块”,会弹出新的选择框,在弹出的新菜单中点击“外部工具”,然后再次弹出新的命令选择框,选择“AddinManager”加载窗口,将完整的.dll文件路径复制到对话框中,点击“Run”运行程序,在Revit中实现代码编程的相应功能。      以上就是Revit二次开发流程,希望本篇文章能够对大家有帮助!

Revit二次开发用什么插件?用这两种最节省时间

2022/12/07

1429

文章介绍:插件在Revit二次开发的过程中能够起到节省时间的作用,在我们安装完Revit后,也要将插件进行对应的安装,为后期加载外部命令和外部程序提供帮助。Revit SDKAutodesk公司为了满足提高开发人员的开发效率,为开发人员提供了快速学习的资料集合,RevitSDK作为Revit二次开发的软件工具包,包含了许多说明性文档、开发参考文档、–些重要工具ADD-InManager和RevitLookup以及100多个带源代码开发的学习实例。开发人员可以通过Visual Studio 2013打开该实例进行快速查看学习,可以大大提高开发人员的开发效率。一、插件ADD-InManagerRevit二次开发技术正在飞速发展,二次开发人员发现在每次开发的过程中,一次代码的编写并不能完全满足所有的功能需求,面对这种情况,需要每次重新启动Revit,由于Revit在加载外部环境时需要时间比较久,从而大大降低了开发人员的工作效率,随着插件ADD-InManager的出现,很大程度上解决了重启Revit的问题,从而很大程度的提高了开发人员的工作效率。先点击加载按钮,找到之前编写代码生成的动态连接库dll文件,加载进来之后选中这个文件名,点击运行按钮﹐就会开始执行程序。二、插件RevitLookupRevitLookup插件是开发过程中必不可少的工具,该工具在SDK的根目录下,主要功能是可以读取Revit对象属性和参数,提供源代码和工具类,并且可以快速查看对象数据以及对象之间的关系。随着插件RevitLookup的出现,很大程度上解决了开发过程中遇到的编写代码问题,从而提高了开发人员的开发效率。先选中需要查看的构件,然后点击Lookup按钮,就可以查看对象的信息,并且相关的信息一层一层的都可以查找到。      以上就是Revit二次开发用什么插件的全部内容了,每个人观点不同,希望本篇文章能够帮助大家!