algorithmic modeling for Rhino
Hi All,
I tried this for a long time in many different ways but I failed to achieve the result I am anticipating.
I need to model a Bucky space frame based on 2 triangular grid meshes (see image).
This is what I did in the definition:
1- Pick every other mesh face using David Stasuik's VB script
2-Project a pyramid mesh face on each of these
3-Get the edges.
The last step would be to connect the vertex of each of the pyramids in a triangle grid mesh that is 'slipped' from the original grid.
Any ideas?
Definition attached. Your help is appreciated.
Chap.
Tags:
OK, let's start from a top "node" on this
1. See animation (added some freaky things and ... trusses "grow" until all the points are consumed: extra stupid or cool? - top "layer" [not activated in this sequel attached] is under re-consideration since the "grow" option dictates the usage of DataTrees instead of a List)
2. For "simplifying" the whole task I'm thinking to deliver this in 2 phases: in phase one your truss could be made as a combo of 3 DataTrees (but with NO connectivity data, since I have a feeling that you find that a bit "complex") PLUS an option that creates a skin (as "tri-breps"),
3. In phase two ... well ... you can Imagine, he he.
PS: As regards the def provided recently: potential connectivity differences (in indices) may occur (Lord VS Sandbox) due to the fact that Sandbox doesn't handle (rather correctly) invalid/non manifold meshes. But that C# is written with non manifold meshes in mind ... for some other paranoid project(s).
more soon
Update:
Phase one approach is stupid (and amateurish) > what for?
One C# that does it all connectivity intro: ("top" layer struts - option: fTf).
1. We've seen so far that W points are piece of cake. What is the interesting thing with these? Well since are created by iterating trough the mesh faces (mesh face Normal * d + flip option ... etc etc) ... their enumeration (order) in the resulting wPtsList list ... is exactly the same with the enumeration (order) of the mesh Faces list.
2. So a ff connectivity Tree [Lord way or Sandbox] (where f(ace)-to-f(ace) actually means: neighbor faces(indices) that a given mesh face has) is the only thing that we need in order to achieve this type of "top" struts layout. Spot the extra crude List.Distinct().ToList() "clean" up method (but why bother? he he).
3. The other way ("top" layer struts - option: ballPivot) well ... it does the obvious.
Peter,
Your work is very impressive! I have to say, I feel like I have a lot to learn.
That being said, I really need a solution to my problem soon, and I would love to learn from your skills.. You have a simple solution now, can you walk me through it? Also, can I try to use your file (which hopefully is user-friendly by now?) :)
Chap.
Mmm...o.O...and here we go...
??
Sorry, but did I say something wrong? I mean I know you guys are all skilled coders and all but I thought the purpose of this discussion thread is to solve problems and benefit users in the process.
If someone has a solution for a problem I have been pursuing for a while, that I can learn from, is it rude to ask for it?
Chap.
Sorry, It was a very rude reaction, but there is a lot of people that sing up in the forum just to resolve their problems, and usually that kind of person is in a hurry trying to finish something very important and asking for specialized advise from people that usually "in the real world" are paid for that advise or knowledge. I overreacted reading "I really need a solution to my problem soon", or "which hopefully is user-friendly by now?"...Anyway I was following the post and I found the chat very helpful (I need to improve my skills in mesh topology algorithms).
Just be extra polite and careful about how you demand help, that's all...the people that is helping you are spending their free time helping you for free.
Sorry for the disturbance.
Angel
Indeed on ethical AND moral AND practical basis your are 100% spot on.
But let's make an exception (he, he) since in fact ... er ... hmm ...I confess that I had plans to do something out of points (NOT meshes) using my (still WIP) BallPivot thingy (still highly temperamental despite wast quantities of Vodka consumed - in the Name Of Science, what else?):
Watch this Forum for the forthcoming mother of all threads : Get Points > Do Something.
On the other hand (real-life):
1. A truss without connectivity is nothing.
2. A truss without clash defection is nothing.
3. A truss without instance definition(s) is more than nothing.
4. A truss without (rather very complex that one, mind) roof/envelope stuff is nothing + pointless.
5. Mesh from points without a 1000% working ball pivot thingy is like 3rd marriage.
And as you'll discover this Monday ... well ... "some" things would be MIA from the definition.
Other than that:
For Chap, David, Angel and anyone else interested on these freaky things (get points do something, that is).
Do you people think that this (mode: dense [yellow stuff] ) has any meaning?
I mean for the truss itself not the roofing paraphernalia. Notice that in this handsome hex mode we've already achieved max rigidity since we deal with tetrahedral stuff.
PS: My aunt Drusilla finds the dense mode ... utterly pointless (and a bit disgusting).
That's friends is the 1M question.
Yep, you are right. You are adding dead load to a structure that is already triangulated.
But you will (as a very brief foresight):
1.- Improve bending response (traction/compression) in the outer shell (you are increasing the steel area), which is not useful for a concave dome structure (the outer layer will be compressed and probably the stress will be bigger in traction areas)...so I don't know if this is what we want...actually...What we want? xD
2.- Improve how the structure deals with tangent loads applied directly to the outer layer. And this will be "more true" or function of the total truss thickness if you keep the structure density fixed (as bars linking outer and inner layer will be less tangent and more perpendicular to both layers).
This is becoming interesting...now I want to check my assumptions with a proper FEA :D
Remember all this foresights were dropped here without any amount of vodka running trough my veins...so probably they will be not very useful :P
Well indeed the "hex" is all what we need ... but remember the skin part of the equation - the target after all, he he (usually made via a special "grid" of less "robust" things like aluminum extrusions/steel tubes/whatever).
On the other hand "dense" means (maybe) "thinner" struts whilst the advent of carbon (+ large scale 3d printing) for the masses ...
Moral: maybe switching to Tequila could be the turning point for all that freaky stuff.
Seconded, for sure.
BTW: kinda like the Death Star thingy
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by