1. revit 二次开发 选择物体 闪烁
Revit二次开发方向
第一类是偏向软件辅助类,这类的研发任务主要是解放繁重的软件操作、又或是统计计算软件内构件不同的属性,来辅助自己决策。此类研发能让Revit更加贴近用户使用,让Revit本土化的一个二次开发过程,需要研发人员对Revit软件操作有一定的了解,考虑业务上更加方便用户、统计的数据更满足业务需求。
第二类是数据接口的研发类,这类的研发任务主要是Revit数据解析,重构,满足可以是自己定义格式,对接已有的平台;也可以是对通用的数据格式的转换。此类研发更多的是需要了解图形学、三维数据格式(顶点、纹理组织等)方面技术、同时考虑更多的是几何、属性数据的无损以及数据导出的效率、导出数据的大小等。
2. 如何系统的学习Revit二次开发
学习revit二次开发,需要了解如下内容:
一、熟悉c#语言,熟悉面向对象的编程思维。
二、熟悉revit软件操作、API开发接口
1、BIM软件熟练,其中包括revit、BIM5D、Navisworks、橄榄山、鸿业软件等软件。
2、建筑模型的建模能力。其中包括建筑、结构、给排水、强电、弱电、消防、供暖、通风、钢结构、幕墙等专业的建模。
三、熟悉BIM应用需求和revit二次开发解决方案
1、建筑模型的分析应用:其中包括建筑碰撞检查、日照、采光、通风、节能、防尘、恒温、施工等仿真模拟应用。
2、建筑工程的管理控制应用:进度工期控制、造价控制、质量管理、安全管理、施工管理、合同管理、物资管理、施工排砖、三维交底等管理控制等工程管理控制应用。
四、具备建筑工程基本从业技能,其中包括如下内容:
1、对图纸的识图能力。对于剪力墙结构、框架结构、砖混结构三大类型的图纸熟练识图是基本功。结构识图的核心是对结构图集的掌握。16G10国标图集和地区结构图集,是结构识图的基础。
2、熟悉施工流程和工作内容。对施工流程和工作内容的熟悉,是建筑工程施工管理的基础。
3、熟练掌握建筑工程测量放线的技能。
4、熟练掌握建筑工程钢筋下料的技能。
5、已完工程量的计量和结算。
6、对工程质量、进度、造价的控制能力。
7、建筑工程施工手册是必备工具书。
3. revit 二次开发中如何得到楼层平面数据
想掌握revit的二次开发需要了解如下内容: 1、BIM 平台软件的操作、功能,比如revit 软件的操作和功能了解。 2、了解平台软件的API的用法,比如revit API 3、阅读revit SDK中的帮助文档和例程代码。 4、自己手动编写几个简单的小程序来学习BIM
4. revit文件发生不可恢复的错误(二次开发)
(1)在 Windows 中显示隐藏的文件和文件夹。
(2)浏览到与 Revit 安装同名的文件夹。在 Windows 7、8 和 10 中,文件夹为 C:Users\%用户名%AppDataRoamingAutodeskRevit。
(4)启动 Revit。这应该会创建一个新文件夹。
(5)如果问题仍然存在,请重置许可。
第二种解决方法:
原因:UIState.dat文件被损坏解决方案 问题Autodesk Revit 已停止工作
发生故障的模块名称: RevitDB.dll
异常代码: 0xc0000005原因注册表项丢失不正确
解决方案:
1. 运行 regedit 找到
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders
2. 找到以下“键”(在Shell Folders目录):Common AppData
如果“键”不存在创建它(右键单击 - > 新建 - > 字符串值 )
如果 “键” 存在确认它包含以下数据(右键单击 “修改):C:ProgramData
3. 在注册表中进行更改后,重新启动系统。
如果上述两种方法无法解决,建议更换其他版本,或者重装系统。
5. revit二次开发+访问属性界面
咨询记录 · 回答于2021-10-19
6. Revit二次开发 如何设置淡显
具体需要以下步骤:
1.在Revit的视图里可以通过可见性/图形替换。
2.来设置构件的显示颜色,里面有一个通过模型类别。
3.设置构件颜色的方法,在API里也是可以实现这一操作的。注意:此颜色在真实模式下不显示,RevitBuilding可适应各种工作方式。
7. 如何创建revit二次开发插件
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插件!