Structural nodes

A forum dedicated to the Draft, Arch and BIM workbenches development.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
yorik
Founder
Posts: 13640
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Structural nodes

Post by yorik »

Great, thanks to both of you for the input.
I think we could do this:

1) add an "offset" property that allows to shift the node axis upwards or downwards.
2) add structural nodes to arch walls. I think we could simply make it derived from Arch structure, actually... Not sure how to handle openings yet, but that would be needed for slabs too anyway.

Then we can see about the rest, exporting to IFC, etc..
User avatar
saso
Veteran
Posts: 1920
Joined: Fri May 16, 2014 1:14 pm
Contact:

Re: Structural nodes

Post by saso »

yorik wrote:Great, thanks to both of you for the input.
I think we could do this:

1) add an "offset" property that allows to shift the node axis upwards or downwards.
2) add structural nodes to arch walls. I think we could simply make it derived from Arch structure, actually... Not sure how to handle openings yet, but that would be needed for slabs too anyway.

Then we can see about the rest, exporting to IFC, etc..
Sounds like a good plan :)

For walls and slabs, could we somehow downgrade (explode) the wall / slab solid to faces and then position the face to the center of it and add nodes to that face? :roll:
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Structural nodes

Post by bernd »

yorik wrote: 1) add an "offset" property that allows to shift the node axis upwards or downwards.
2) add structural nodes to arch walls. I think we could simply make it derived from Arch structure, actually... Not sure how to handle openings yet, but that would be needed for slabs too anyway.
sounds perfect! and add offset property to walls to to move in normal direction of the wall. Imagine if a wall 18cm in second floor is above a wall 25 cm in first floor. But they are outer walls and the outer faces meet each other. This means the structural faces does not meet each other. In analytical model the structural faces have to meet each other verticaly.
User avatar
yorik
Founder
Posts: 13640
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Structural nodes

Post by yorik »

ok first part is done already. I'll see about second part. Offsetting the area node already works, should be easy to adapt to the wall scenario that bernd describes.

For openings, the problem is, right now the nodes are stored in a PropertyVectorList. This makes it hard to store openings. Unfortunately we cannot store the nodes as a Part Shape because having more than one PropertyShape in a Part Feature screws everything. And adding another object to each structure just to store the nodes is way overkill. I don't have a good idea for this yet...
User avatar
cnirbhay
Posts: 115
Joined: Wed Aug 17, 2016 4:24 pm

Re: Structural nodes

Post by cnirbhay »

This post is very interesting for a structural engineer. I'm glad to see the heavy improvements/additions made in FreeCAD in a very short time. :-)
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Structural nodes

Post by bernd »

I have been playing with the structural nodes. They are cool. I'd like to try to play with FEM. I can't remember how do I access the shape of the structural nodes.
User avatar
yorik
Founder
Posts: 13640
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Structural nodes

Post by yorik »

bernd wrote:I can't remember how do I access the shape of the structural nodes.
It is because you can't :?

the structural nodes are the Nodes property of the object. It is a list of 3D vectors. If the Role property == "Slab" and len(Nodes) > 2, then the nodes define a closed polygon/area. Otherwise they define a polyline. This quick code gives you a corresponding shape (Face or Wire):

Code: Select all

if (obj.Role == "Slab") and len(obj.Nodes) > 2:
    shape = Part.Face(Part.makePolygon(obj.Nodes+[obj.Nodes[0]])
else:
    shape = Part.makePolygon(obj.Nodes)
User avatar
Anam
Posts: 39
Joined: Mon Mar 20, 2017 10:22 am
Location: Teramo, Italy

Re: Structural nodes

Post by Anam »

Hi there, I have a question for you. Is it possible to link the structural nodes with a sketch? I was thinking about to link them in a way that would change the structure of the beam when I modify the sketch. I saw the flamingo's workbench but I'm not sure that it works for this way to link the nodes.
User avatar
yorik
Founder
Posts: 13640
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Structural nodes

Post by yorik »

Using a sketch to define the nodes automatically is not possible, but the nodes are automatically calculated like this: 1) the center of the profile is taken 2) the extrusion path is added to that first point. Flamingo objects are common Arch structures, so I believe this should work...

But you can also set the nodes manually. So via python scripting, it is possible to take the vertices of a sketch, and use them as nodes of another object. But they won't change if the sketch changes (unless the python script takes care of that of course).
User avatar
Anam
Posts: 39
Joined: Mon Mar 20, 2017 10:22 am
Location: Teramo, Italy

Re: Structural nodes

Post by Anam »

yorik wrote: Wed Oct 11, 2017 1:33 am But you can also set the nodes manually. So via python scripting, it is possible to take the vertices of a sketch, and use them as nodes of another object. But they won't change if the sketch changes (unless the python script takes care of that of course).
I’m going to start to study that. Does somebody have some advice?
Post Reply