Slightly sloped columns and beams

Hi dynamomatters!

I write this post cause i’m having several problems on creating a grid of columns and beams I still don’t identify

I’m writting a dynamo script to automatically model a simple modular house foundation that consists on some columns that support home skeleton and transmits their loads on some foundation beams directly placed on terrain

Ok, I’ve programed the script succesfully in concept: The inputs in the dynamo environment seem to be ok but, in practise, Revit interface shows columns and beams slightly sloped at the point that the building breaks rectangular floor plan onto two rectangles, even although the lists of provided points that should build this elements are ok (i’ve checked them)

For example, in that point, beam becomes sloped trying to get connected with columns start points, as shows:


I know that beam elements in revit has an odd behavior some times but i don’t know if it could be posible to solve it or should I settle for this situation

What do you think?

Many thanks again,

Diego

Use this link Unique Download Link | WeTransfer to get the .rvt file and the script i’m writting if you want to check. Note that selecting steel frame structure is needed to generate a new foundation

Please show what the preferred outcome needs to be so that we can understand what you are wanting and guide how to get there.

Yeah, sorry cause perhaps i didn’t explain myself in a good way
Previous picture is the current result of my script (attached with my previous comment) and this image


Would be de desiderated result with the middle beam just vertical and aligned with others. Find in this link Unique Download Link | WeTransfer this ‘wanted’ versión (although some columns still are not completely vertical) and a simplified versión of the script if you want to check it in a easiest way

try this one


AlignUnparalleledLines.dyn (56.4 KB)

1 Like

Try what @jmark suggested and see if that works for you. What also may be an issue is with the grips at the ends of the beams by default being set to “Allow Join”. So all of the beams are connecting at the center of the columns. If that is the case, then below will help with that. You can feed a list of beams into the python script if needed. Also, you may have to run this, before you run @jmark tool.

import clr

clr.AddReference('RevitAPI')
from Autodesk.Revit.DB.Structure import *

clr.AddReference('RevitServices')
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager

doc = DocumentManager.Instance.CurrentDBDocument

element = UnwrapElement(IN[0]) if isinstance(IN[0],list) else [UnwrapElement(IN[0])]

TransactionManager.Instance.EnsureInTransaction(doc)

for e in element:
    StructuralFramingUtils.DisallowJoinAtEnd(e,0)
    StructuralFramingUtils.DisallowJoinAtEnd(e,1)

TransactionManager.Instance.TransactionTaskDone()

OUT = element
2 Likes

Hei @jmark, @staylor!

Sorry, I was a few days without the computer and I wasn’t able to check your ideas. Many thanks for commenting

Efectively beams were set by default to “allow join” and they connected automatically their start and end points with the center of the columns

@staylor, your Python node works perfectly in my script. Many thanks for sharing it!

@jmark, thank you also for your help although maybe the code-written node fits better in my workflow

I let the final versión of my script if anybody is curious

See you at forums!
Diego
script02_CIMENTACIÓN.dyn (548.2 KB)