28可扩展储存
在Revit模型中存储数据使用共享参数或可扩展存储在Revit模型中存储数据。 Revit API提供了两种在Revit模型中存储数据的方法。第一种是使用共享参数。通过Revit API,可以通过编程方式访问通过Revit UI提供的相同共享参数功能。如果共享参数被定义为可见,则用户可以在元素的属性窗口中查看这些参数。可以将共享参数指定给许多(但不是所有)类别的图元。有关详细信息,请参阅共享参数。 另一个选项是可扩展存储,它允许您创建自定义数据结构,然后将该数据的实例分配给模型中的元素。用户在Revit UI中永远看不到这些数据,但其他第三方应用程序可以通过Revit...
30外部事件
外部事件Revit API提供了一个外部事件框架,以适应非模态对话框的使用。它是为异步处理量身定制的,其操作类似于具有默认频率的Idling事件。 要使用外部事件框架实现无模式对话框,请执行以下步骤: 通过从IExternalEventException接口派生来实现外部事件处理程序 使用静态ExternalEvent.Create()方法创建ExternalEvent 当需要执行Revit操作的无模式对话框中发生事件时,调用ExternalEvent.Raise() 当存在可用的空闲时间周期时,Revit将调用IExternalEvents.Execute()方法的实现。 IExternalEventHandler这是要为外部事件实现的接口。实现此接口的类的实例注册到Revit中,每次引发相应的外部事件时,都会调用此接口的Execute方法。 IExternalEventHandler...
31可停靠对话框窗格
可停靠对话框窗格自Revit 2013以来,应用程序可以通过利用Revit API中的Idling事件(用户界面事件和外部事件)类来使用无模式对话框。需要非模态对话框的加载项也可以选择使用可停靠的非模态对话框。与标准的无模式对话框类似,可停靠对话框是注册的Windows Presentation...
32动态模型更新
动态模型更新动态模型更新为Revit API应用程序提供了修改Revit模型的能力,作为对模型中发生的更改(当这些更改即将在事务结束时提交时)的反应。Revit API应用程序可以通过实现IUpdater接口并将其注册到UpdaterRegistry类来创建更新程序。注册包括指定模型中的哪些更改应该触发更新程序。 Pages in this section 本节中的页面 实现IUpdater Execute方法 注册更新程序 Exposure to...
33命令
命令Revit API 提供对现有 Revit 命令的访问,这些命令位于选项卡、应用程序菜单或右键单击菜单中。使用 API 处理 Revit 命令的主要方法是替换现有命令实现或发布命令。 替代 Revit 命令AddInCommandBinding 类可用于替代 Revit 中的现有命令。它有三个与替换现有命令实现相关的事件。 BeforeExecuted - 此只读事件在关联命令执行之前发生。应用程序可以对此事件做出反应,但不能更改文档或影响命令的调用。 CanExecute - 当关联的命令启动检查以确定是否可以在命令目标上执行命令时出现。 Executed - 当执行关联的命令时,将发生此事件,并且应在此处执行任何覆盖实现。 要创建 commandbinding,请调用 UIApplication.CreateAddInCommandBinding() 或 UIControlledApplication.CreateAddInCommandBinding()。这两种方法都需要 RevitCommandId ID 来标识要替换的命令处理程序。RevitCommandId...
34故障发布和处理
故障发布和处理Revit...
35性能顾问
性能顾问Revit API的性能顾问功能旨在分析文档,并为用户标记可能导致性能下降的任何元素和/或设置。Performance Adviser命令执行一组规则并在标准审阅警告对话框中显示其结果。 性能顾问的API由两个类组成: PerformanceAdviser -一个应用程序范围的对象,具有双重角色,既可以作为运行的规则注册表,以检测潜在的性能问题,也可以作为执行这些问题的引擎 IPerformanceAdviserRule - 允许您为Performance...
36点云
点云Revit API提供了两种处理点云的方法。第一种方法允许您创建新的点云实例,读取和过滤点,选择整体点的子集,以及选择要高亮显示或隔离的点。第二种方法允许您使用自己的点云引擎并处理不支持的文件格式(即.pcg、.rcp或.rcs以外的格式),从而向Revit提供点以供用户查看。 客户端API 创建新的点云实例 读取和过滤点 点集选择 控制点云高亮显示 引擎API 注册点云文件扩展名 向Revit提供点以进行渲染 本节中的页面 点云客户端 点云引擎 点云客户端点云客户端API支持在Revit中读取和修改点云实例。 点云实例提供的点来自点云引擎,该引擎可以是Revit中的内置引擎,也可以是作为应用程序加载的第三方引擎。客户端点云API应用程序不需要关心引擎如何存储点并将点提供给Revit的详细信息。相反,客户端API可用于创建点云、操作其属性以及读取找到的与给定过滤器匹配的点。 与点云相关的主要类有: PointCloudType -...
37分析
分析相关信息 绿色建筑工作室API Pages in this section 本节中的页面 能量数据 分析可视化 概念能量分析 详细的能源分析模型 能量数据EnergyDataSettings对象包含gbXML导出和热负荷和冷负荷计算的设置以及概念能量分析的项目级别设置。 EnergyDataSettings对象是从Element基对象派生的。它在每个项目中都是唯一的,类似于ProjectInformation。虽然EnergyDataSettings是Element类的子类,但从Element继承的大多数成员都返回null或空集,但Name、Id、UniqueId和Parameters除外。 下面的代码示例使用EnergyDataSettings类。调用命令后,结果将显示在TaskDialog中。 代码区域28-7:使用EnergyDataSettings类 1234567891011public void GetInfo_EnergyData(Document document){ EnergyDataSettings...
38地点和位置
地点和位置每个建筑物在世界上都有一个独特的位置,因为纬度和经度是独一无二的。此外,一个建筑物相对于其他建筑物可以有许多位置。Revit Platform API Site命名空间使用某些类来保存Revit项目的地理位置信息。 注意:Revit Platform API不显示“场地”菜单功能。只有“site”命名空间提供与“管理”选项卡上的“项目位置”面板上的“位置”选项对应的功能。 本节中的页面 Place 地点 City 城市 ProjectLocation 项目地点 Project Position 项目位置 地点在Revit Platform...