Hi, is there any way, using Rhino.Inside.Revit components, to reliably transfer Aligned Dimensions from model A to model B (where model A is linked)? Manually copying and pasting dimensions is very unreliable, and the dimensions change their references.
I’ve tried deconstructing the Dimension References in A and recreating them in model B, but I’m unable to transfer the references.
It would be perfect If I could save necessary data for recreating dimensions and use it once the model is reloaded.
Hi, thanks for the reply, but that doesn’t solve the problem. When I use Revit to load link “A” into model B, I have to close model A. That means simple cloning won’t work.
I also tried making an exact copy of model A - A-copy right before attempting to transfer the dimensions. The idea was that I could have model B with link A loaded, and at the same time keep an identical A-copy open from which I’d transfer the dimensions to B. Unfortunately, cloning the dimensions is just as unreliable as plain copy-paste.
I don’t know why it is like that, but while Cloning or Copy-Paste dimensions, even when referenced Elements are exactly in the same place in the source and destination, Dimensions are attaching to the different (mostly nearby, but still wrong) faces.
The same applies to using Annotation References from another model: when I try to use those references in model B, even though the same walls are linked there, it simply doesn’t work.
Using References from other Revit document won’t work
The references should be from the same model or else you need to transfer the wall from the link model to the target model and then create the dimensions.
Thanks for the ideas, but in my context we’re talking about thousands of Aligned Dimensions and three links, each a six-story building… In this case, neither cloning walls nor cloning dimensions will help. Unfortunately, I also can’t share the documentation Even in fairly simple tests, the dimensions’ witness lines go haywire and pick different references when cloning - please try this with a few walls if you want, especially if you pick corners/points as a dimension reference. I’m afraid the RiR components we have aren’t sufficient, and we’ll need a deeper understanding of the Revit API’s capabilities to achieve this (if it’s even possible).
@Czaja Yes, this can be achieved directly using the Revit API. The key is to extract valid face Reference objects from the linked model, then use those references to create dimensions.
Since Revit’s standard Grasshopper components like Add Aligned Dimension or Add Linear Dimension cannot directly consume references from linked elements, you’ll need to handle the dimension creation through a custom Python or C# script.