问题标签 [revit-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Revit API 获取 OST_Viewers 和 OST_Level 类型的坐标
我需要找到坐标OST_Viewers
和OST_Level
类型。我用这段代码得到它们:
我试图Location
为他们使用该属性,并将其转换为LocationPoint
,但它总是返回null
。我应该使用什么方法进行坐标?
c# - Revit API 代码单元测试
是否可以在不运行 Revit 的情况下创建我自己的 Revit API 代码的单元测试,该代码与 Revit DB 模型交互。
如果是这样,如何实现。
revit - 在revit api中查找基点的坐标
我创建了一个插件来计算网格之间的交点。交点计算的坐标使用基点位置作为坐标的原点。我想将坐标转换为测量点位置。我尝试使用以下代码获取基点的坐标:
我想使用基点坐标来调整我在交点计算中找到的坐标,以使用测量点作为原点。但我不知道如何使用基点的值来调整坐标。似乎基点中的值不是使用测量点作为原点,而是可能是内部坐标。或者我可能误解了基点中的值。有什么我可以尝试的指针吗?
c# - 取消和完成按钮的 Revit API 2012 事件处理程序
在创建模型组或地板时,我需要事件来捕捉 Revit 中的完成和取消按钮。下图显示了按钮。这些动作有事件吗?
revit - 如何在不重新启动的情况下构建 Revit 应用程序
有谁知道如何构建 .NET C# Revit 应用程序而不必每次都重新启动 Revit?这适用于 REVIT MEP 2013。
c# - 使用 Revit API 的 BDD/TDD
我的问题与这个问题有关,但我以某种方式更进一步并使用 nunit 实现了一个测试框架。
当我在 Revit 中运行测试框架插件时,测试框架会以某种方式锁定测试程序集,从而无法重新编译测试程序集。为了解决这个问题,我尝试制作一个影子副本,以便 nunit 测试运行器在复制的程序集上运行。但是一旦我第一次运行测试,后续的测试运行就不能在更新的副本上运行。这就像测试运行器缓存 dll 并总是尝试在缓存的副本上运行测试。
所以每次更新测试程序集时,我都需要关闭重新打开 Revit 来运行测试,这真的很痛苦。我为 Revit 实施测试框架的主要原因是能够使用 Revit API 进行 BDD/TDD。
这是我如何运行测试的代码片段:
有谁知道如何解决这个问题?
revit - 在 Revit API 中从文件插入视图
有没有办法使用 Revit API 从文件中插入视图?我正在使用 Revit 2013 API。它需要与下面的功能相同。这是Autodesk Revit API 论坛上的一个类似问题。
c# - 如何使用 Revit API 获取 Revit 文件版本?
在 Revit API 中,我知道我可以获得当前正在运行的 Revit 实例的版本 ( ControlledApplication.VersionBuild
, ControlledApplication.VersionName
, ControlledApplication.VersionNumber
)。但是,我想在打开 Revit 文件之前获取它本身的版本。这样,当用户在较新版本的 Revit 中打开较旧的 Revit 文件时,我可以停止自动升级对话框。我正在使用 Revit 2013 并期待 2011、2012 和 2013 的文件。
c# - 在 Revit API 中获取墙布鲁托区域
我正在尝试使用 Revit API 获取墙布鲁托区域。然而,我唯一得到的是 netto 区域。
我正在使用删除墙并还原更改以确定放置在墙上的所有元素的方法。然后,我从 ElementSet 中删除墙的 id,在变量中获取 HOST_AREA_COMPUTED 的值并再次恢复更改。然而,结果是墙网区域:(参数或墙是否需要重新加载?或者可能有更简单的方法来获取 brutto 区域?任何帮助将不胜感激,因为我找不到与该问题相关的任何内容。 提前致谢!
c# - 访问维度的上、下、后缀和前缀属性时出现 AccessViolationException
在 Revit 2013 中,我正在制作将尺寸从一个绘图视图复制到另一个绘图视图的工具。我已经可以正确创建一个新版本的维度,包括Curve
、DimensionType
和 ,References
但是我在使用属性Above
、Below
、Prefix
和时遇到了问题Suffix
。如果其中至少一个具有价值,它们就可以很好地复制。但是,如果它们都没有值,那么AccessViolationException
当我尝试访问它们时它会抛出一个。我试图捕获该异常,但它冒泡并导致 Revit 崩溃(我假设它是由失败的本机代码引起的)。
当我在不触发此复制的情况下进行复制时,如何检查这些属性是否有任何价值AccessViolationException
?
该类DimensionData
是我自己的,用于存储维度信息,以便可用于在单独的文档中创建维度。