Changing a Revit Beam

  • Objective: Change a Revit Beam in C# via Speckle
  • Issue: Revit Beam pulled into Speckle ignores my changes in its BaseLine.

I have a Revit Family that includes structural steel members (HSS beams and columns).
I am placing Instances of this Revit Family in various locations and orientations, then creating a Speckle model with these Revit Instances.

As I pull the Speckle model into Revit, the Revit Family Instances appear in the correct positions and orientations. However the Revit Beams default to an origin location and orientation.

I realized that the Revit Beams are different to the Revit Instances, in that the beams don’t use a Transform Matrix, but instead are defined by a BaseLine property that has Start and End XYZ properties.

I’ve tried to set those XYZ coordinates to the coordinates I need. However, when I send the collection into Speckle, these XYZ coordinate changes I made are being ignored, apparently.

What am I missing?
Are there any examples of defining Revit Beam Speckle Objects in C#?
Any help is greatly appreciated.

Please share as much as you can. Before and after models and any code used.

As Jonathon says, we’d need more information to help you.
Here you can see the logic that in v2 connectors turns a Speckle beam into a Revit one:

Beams and Structural Columns are line based elements, but Architectural columns are point based instead.

1 Like