How to control cross section rotation for slanted columns

Hi All,

I’ve set up this little script to control the cross section rotation for columns which works fine for vertical columns.

But how to I do this for slanted columns?

The image below shows 8 columns. All of them have the ‘cross section rotation’ set to 0 but the slanted columns appear to be rotated.

Could anyone pls help me to understand what the rotation is based on?

Any help would be very much appreciated.

Many thanks,


Revit System Families have various properties and abilities, particularly in placement and rotation. A plumbing family can be rotated in ways a generic model can’t, i assume this is the same for structural.

Are these WorkPlane based families? if so you can use a rhino plane for placement that could be rotated.

H @Rickson,

thanks for your quick response.

They are ‘structural columns’ and it looks like I havent got the option to make them WorkPlane based.

Any other ideas?

Many thanks

You are not able to place sloping columns on a
work plane, you could do that for beams after
they are created

structural columns that are slanted
such that their local xy axis is oriented vertical
so if you look top down webs are vertical as shown in image
and the cross section rotation starts out at “0”
(just like in your image when you look top down on your structural columns in Revit are they also oriented web vertical)
this is the same for beams and is typical of most BIM software including
structural analysis software…

are you trying to rotate the columns such that the ends are pointing in a certain direction?
if so…then
say you wanted to orient the columns in the EAST WEST Direction
then you could find the best fit plane for each column and find the angle
between that and the EAST WEST plane and then change the cross section rotation as shown

Note that Revit is touchy so if the columns are pointing in a neg direction you may need to
adjust the angle. This is similar to this example Place Beam three dimensional in family or project with orientation - #3 by msgambelluri
good luck. here is the gh script

Also note that this is only ONE way to attack this problem both on how to correct Revit cross section
rotation and the components used in the GH image

Hi Marcello,

Thank you so much for all your effort.

I’m pretty new to RIR so I’m struggling a bit to follow your example.

Nevertheless I’ve re-created your example but ran into a problem when it comes to Deconstruct Brep …

I guess this is the reason that my end result doesnt quite look the same as yours … i.e. the slanted column doesnt align to the EW direction.

View after rotation:

Any idea what the problem might be?

Also, just to clarify my starting point were two curves which I drew in Rhino.

Is long as you get your curves Into grasshopper geometry it doesn’t really matter where it was from

You need to change the detail level to either medium or fine when you convert the Revit col geometry to grasshopper geometry

1 Like

Hi Marcello and All,

I’m sorry to be a pain but I’m still struggling with the cross rotation of the slanted columns.

Below is another image which illustrates what I’m trying to achieve.

Basically I have a set of slanted perimeter columns which need to be perpendicular to the façade (so each column will have a different cross rotation angle.)

All setting out is done in Rhino (centre lines of columns, facade etc.)

Do I need to set up planes for each column and transfer them over separately?

Also if it makes things easier I could make the slanted columns a ‘structural framing’ category in Revit which would allow me to make them ‘work plane base’. Would that simplify the process.

My last resort would be to bring them through as directshapes but that would be a bit of a shame.

Any help would be v. much appreciated.

Many thanks,