在 Revit 2018/2019 中跟踪元素编辑或元素编辑事件
Keep track of element editings or element edited event in Revit 2018/ 2019
我正在做一个项目,在 Revit 2018 和 Revit 2019 中对宿主元素进行钢筋。在我的代码为宿主元素重新生成钢筋钢筋后,我不知道用户是否手动编辑了我的宿主或我的钢筋(当然是由我的代码生成的)。我只是提出了这两个想法:
在我的代码生成钢筋时,将所有钢筋和主机信息存储到主机的可扩展存储中(字面意思是每个 属性、id、...)。当我再次调用我的代码在主机上工作时,我将把所有当前信息与主机实体中保存的信息进行比较,以找出发生了什么变化。
很明显,这种方法会花费我很多钱并且对性能有很大的影响。
捕获用户可能通过 "Element - edited - event" 对我的钢筋和主体所做的所有更改。但是,我似乎找不到适合我需要的合适事件。我尝试了 Element 和 Document 事件以及 ITransactionFinalizer class 但没有结果。
在哪里可以找到我想要的活动或如何实现我想要的?另一种更好的方法非常受欢迎。提前谢谢大家。
恭喜您发现 link 到 Tracking Element Modification 自己。我也会指出这一点。您可能还想查看该项目的 GitHub 存储库,以及后续项目想法:
期待听到您的最终解决方案。如果它足够通用以至于其他人也对它感兴趣,我很乐意在博客上为您分享它。谢谢!
我(以及 Jeremy Tammik 先生)提到的解决方案 Tracking Element Modification
是我需要的,但它有点太笼统了。
为了更详细地解决这个特定问题,我过滤了我的钢筋主机(梁、柱、墙……),获取所有托管的钢筋,然后对其参数进行快照。
一些像我这样的新手的小笔记:
一些参数会根据其他参数而改变。如果用户修改是您所追求的,过滤掉已更改的 ReadOnly 参数将大大缩小列表范围。
如果您从主机中删除所有钢筋,或将钢筋添加到空主机,一些参数将相应地被删除或添加。
我正在做一个项目,在 Revit 2018 和 Revit 2019 中对宿主元素进行钢筋。在我的代码为宿主元素重新生成钢筋钢筋后,我不知道用户是否手动编辑了我的宿主或我的钢筋(当然是由我的代码生成的)。我只是提出了这两个想法:
在我的代码生成钢筋时,将所有钢筋和主机信息存储到主机的可扩展存储中(字面意思是每个 属性、id、...)。当我再次调用我的代码在主机上工作时,我将把所有当前信息与主机实体中保存的信息进行比较,以找出发生了什么变化。 很明显,这种方法会花费我很多钱并且对性能有很大的影响。
捕获用户可能通过 "Element - edited - event" 对我的钢筋和主体所做的所有更改。但是,我似乎找不到适合我需要的合适事件。我尝试了 Element 和 Document 事件以及 ITransactionFinalizer class 但没有结果。
在哪里可以找到我想要的活动或如何实现我想要的?另一种更好的方法非常受欢迎。提前谢谢大家。
恭喜您发现 link 到 Tracking Element Modification 自己。我也会指出这一点。您可能还想查看该项目的 GitHub 存储库,以及后续项目想法:
期待听到您的最终解决方案。如果它足够通用以至于其他人也对它感兴趣,我很乐意在博客上为您分享它。谢谢!
我(以及 Jeremy Tammik 先生)提到的解决方案 Tracking Element Modification
是我需要的,但它有点太笼统了。
为了更详细地解决这个特定问题,我过滤了我的钢筋主机(梁、柱、墙……),获取所有托管的钢筋,然后对其参数进行快照。
一些像我这样的新手的小笔记:
一些参数会根据其他参数而改变。如果用户修改是您所追求的,过滤掉已更改的 ReadOnly 参数将大大缩小列表范围。
如果您从主机中删除所有钢筋,或将钢筋添加到空主机,一些参数将相应地被删除或添加。