Grasshopper

algorithmic modeling for Rhino

Hi!

I'm making this elevated two story train platform.

And I'm out of ideas for making structural framework out of optimized topology.

Please see attached gha. 

I made this nice inner force optimized mesh using millipede and now I want to make structural framework from this mesh. I tried to use this sweet tool called Intralattice but this is somewhat different from the approximate result I want to achieve.(not exact trees but framework that goes trough mesh) 

Closest I have gotten to achieve result is some straight lines trough some volume of mesh are in attached .gha


Any ideas / plugins for next steps? 

Thank you!

Views: 3992

Attachments:

Replies to This Discussion

Columns shown are fractal type of deployment (rather some code is required here, especially WHAT "node" to pick on a per individual decision basis: in plain English: from a pool of "nodes" select specific ones that appear "right" (aesthetically AND structurally)).

I have some "similar" examples. BTW: Are you familiar with C#?

Q: Is this Academic? (If yes up to what point you would like to proceed? Because the reason that a frame exists is to support some roofing/something ... and that is another animal).

Q: What type of frame you have in mind? MERO style or what?

Hi Peter!

No, I don't know anything about C#. I know some basic python..

This is academic project. In file there had some breps with roofs and platforms, that has to be supported and was used as vertical force input for topology optimization in millipede. 
Up to what point, hmm hard to tell, guess until it looks like it supports platforms and roof.

I was not aiming for MERO style frame or any space frame. Tree-like columns was what I had in mind.(I don't want to copy this exact sammple) There are similar columns which I started to make for another part of this project. Please see last image in this post. At least until your comment :) 


For now I have reached the point where I have our beloved voronoi grid going through mesh volume middle. Please see image below. I will try to combine these voronoi cells with kangaroo to get some sort of united column-like frame hopefully.. 

Well ...

1. This is NOT the way to do it.

2. Columns: must yield some "random" combos (in their node deployment) and not behave like soldiers in a parade. Additionally columns grow as they approach the ground (or they "combine" branches in "groups" - a rather expensive way to skin a cat).

3. The whole topology: any mesh has little to serve here (OK it can serve for some "generic" guideline, but for many reasons it's best to avoid the mesh enumeration - NOT the same as dividing a surface, mind). An approach (using meshes) for outlining the truss is to create a "proper point cloud" (kinda) and then connect the points via some Ball Pivot algo. Reason is that when the skin deviates severely from some plane ... the Delauney is out of question. Another approach is to define a nurbs - flat in your image (and/or modify the control points for aesthetics AND function [ water pockets etc]) and then either create a geodetic skin (minus the areas "influenced" by the columns) or a W type of truss that gets "thicker" when columns are around. The more the depth of a W ... the more "airy" is the whole thingy since it can support itself with far less material. A W truss with fewer columns is much more economical than I beams directly supported by a dense column grid. Anyway ... possibilities are endless.

4. Skin: columns serve to support some skin, yes? By skin I mean the portion of the truss that is not a "column"). This is where the MERO type question was about.  Or you need/think to arrange the columns in some kind of steady grid in order to be able to directly support the roofing system? If yes ... have in mind that this yields the soldiers in a parade result (up to a point, he he). Spot the different topology in the image that you've posted it (all appear different: since supposedly they "mimic" nature). 

The image below represents what I am trying to achieve for now.

The mesh I have in the beginning (in the gha file) is rough approximation of the result. If I had an supercomputer I would iterate the mesh in millipede until I get thin frame. For now I have thick mesh. 

It would be cool and my goal is to get this kind of optimized structure but replace these rough, rugged frame with straight nice columns and trusses. 

I'm a bit lost: the first image was a nice engineering approach as follows:

1. Define a flat grid of points (roof).

2. Define a flat grid of base points (base).

Break: put whatever in between 1-2: spaces, cats, dogs anything.

3. Pick some in 2 and write down some algorithm (rather impossible without code) that makes "random" tree - like columns that grow with some fractal logic and  "end" to the grid points in 1. Take case about some "even distribution" (see step 4). Obviously columns are made by tubes welded on site (expensive + tricky) or modular via some MERO variant (cheaper but a bit ugly).

Break: in order to do WOW tree-columns you need quality code not a mesh (or a CRAY or even ... hmm ... HAL9000). Estimated CPU time for a random tree-like column with, say, 5-20 nodes: 0.001 milliseconds.

4. place I beams (or C or IPE or IPN) along a given direction (or both) using points in 1 and support them by the ends of the tree-columns. I would recommend ball-pivot joints for obvious reasons.

Now ... this ... (as I said: I'm a bit lost). I mean ... doing this in a large scale (as your initial image suggests) is rather out of question even in Dubai (prior the D-Day). Maybe out of question even in China (where billions are aplenty).

Ok, now I'm trying to make this tree with anemone loop.
Please see attached gha file. 

Logic goes:

1.define base points
2. use grid on roof
3. find closest roof points and group
4. make average vector for each base point towards roof points
3. draw line on that vector and add two new points at the end.
5.repeat from 1. using new points as base points.

The problem is that as iterations goes something goes wrong in data trees...

Attachments:

I'll give this a spin ... BUT fractal logic (especially with regard "random" tress that - correctly - you have in mind) it takes a lot of other factors into account as well.

Note: I really like people trying (is the walk on the hilly path and not the arrival that counts the most) ... therefor as a bonus you'll receive soon something that does  fractal trees (from chaotic to "normal" ) the proper way - several parameters control the grow, the length of branches, the aperture of expansion blah, blah (it works solely via C# code ... but ... well ... we can cheat a bit by assuming that is some sort of add-on provided by some fractal aficionado to this noble Forum). Obviously it makes different (or the same) fractal trees that grow from points in a given "start-up" pointList.

Code needs some "adjustments" in order to add a "mode" that does exactly what you are after (instead of growing "randomly" ... grow with some "target" in mind: meet some random N of roof grid points that define the local support system (per tree) - if not remove the branch that failed to deliver a supporting point).

But the main issue here is of a totally different kind: since these trees are made via structural tubes (that are available in industry at specific radii - NOT any radius you like) the C# must make "adaptation" cones when going from the parent (bigger R) branch to child (smaller R) branches for a totally sleek look: BTW: these are hideously expensive to make (thus I've mentioned MERO) in real-life  ... but what the hell: we'll do it in the name of Science, he he.

To tell you the truth I was always looking some reason to do that kind of specific AEC oriented fractal thingy ... thus blame your thread acting as the ignition.

RSS

About

Translate

Search

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service