way everything is consolidated and people can share their thoughts.
1. Cluster rollover tips
Id like to be able to create rollover help text for each cluster input. This could be a right click thing once the cluster is created or something specified before creating the cluster (a string input for the cluster input arrows?)
2. Disconnect all outgoing
I'd like to be able to right click on an output of any component and disconnect all wires coming out of it.
3. Disconnect all selected
It would be cool if you could disconnect all incoming or outgoing wires from all currently selected components (instead of just one at a time).
4. List item dynamic slider
There has been a lot of discussion about dynamic range sliders and the issues that they would cause. Id like one specifically for list item selection. This would be an integer slider that would have a range of 0 to the list length-1. If the range remaps and the previous value is no longer available, I think it's best to have the current value stay as close to the previous value as possible.
5. Cluster slider/toggle inputs
I think it could be valuable to cluster a series of variable inputs (like sliders or toggles) to make a sort of options cluster. In this case you could just have a list of sliders and toggles each connected directly to a cluster output arrow, select all and create your cluster. This would be great with the value list component as well.
6. Have a component that could output the x and y location of actual components on the canvas relative to the top left corner... Not sure exactly what you could do with this but I think someone could do something interesting with it.
7. 3d MD slider. I see the option is greyed out and don't see a way to activate it... Still under development? Seems like it could be just like the color picker. Would be cool.
That's all I can think of right now. I'm sure there will be more to come in the future.
Feel free to comment.
-Brian…
Added by Brian Harms at 2:22am on December 15, 2011
nd and downloading definitions to learn from them, but still don't get it right.
So my problem is:
1.- I want to achieve a kagome, hexagonal gridshell that keeps the bamboo pieces like straight geodesic lines.
2.- I also would like to keep the curved bamboo as splines, so I imagine this will give the easiest method for bending the bamboo at the real scale. As Mårten Nettelbladt in his blog http://thegeometryofbending.blogspot.jp/ mentions, the best way will be to keep the geometry where all the pieces have a spline curvature ( or as B.K.P. Horn calls it “The curve of last energy”) In order to achieve splines do I need to make the grid a Dynamic relaxation “Kangaroo”? will this help?
3.- I would also like to simulate the bending of the elements from a 2D to a 3D, but maybe this can be a next step on the definition…
Some of the common problems that I notice in the definitions found is that when people do weaving, the lines don't bend flat to the geometry but rather they twist so when you look close the cross of pieces intersect, which is impossible in real life…
As you can see there are a number od issues here, I apologize to put them all together, maybe it makes this confusing but I think is better to look at the whole picture. I have been reading a lot but I have no idea how to start.
The more I read the more interesting the subject becomes but the more confused I become. Is there some kind soul that could give me a hand? Any help will be really appreciated.
Thanks a lot!
Miguel…
o fix before it becomes very usable, but I'm posting the file here in case anyone wants to try it out.
It is a few simple scripts which record point locations from a first Kangaroo simulation whenever the capture button is pressed, and then when you playback the animation it interpolates between this captured sequence of points, pulling a second Kangaroo simulation to these targets. You can control the playback with a slider or automatically with a timer.
This should work with other Kangaroo2 setups, but here demonstrated with a human figure modelled as a collection of rigid bodies. At the knees and elbows the rigid bodies share 2 points to give a hinge joint, while for shoulders, neck, hips, ankles, wrists and torso they share only single points, giving a basic ball joint.
This is also the first time I've posted this model, and I'm also including the setup without the animation script. I know there are numerous issues with this poseable figure - dragging joints sometimes moves parts of the model you don't want to, and joints have unrealistic ranges of motion. I made a start at trying to limit some of these - such as ClampLength goals to stop the torso bending too much, but more could be done. There is also an issue with the rigid bodies (which track orientations with a frame of 3 points) that if you grab the frame itself, the simulation can break. I'm currently rethinking this whole approach.
I should also say that although I have heavily modified this human model to make it work for this setup, I did start from a mesh downloaded from some free 3d model collection site, but unfortunately I do not know the name of the original artist. If someone recognises it I would like to add appropriate credits.…
(http://www.food4rhino.com/app/quelea-agent-based-design-grasshopper) take like 40 seconds when the toggle activates to go from one end of the ramp to another.
With proximity 3d i'm analyzing each instance the agents are closer than x units. In picture 3 we can see that in 212 instances the agent are closer than those x units.
Finally all the genes that controll the ramps are connected to the G of octopus component and one of the conflicting objectives connected to the O of octopus component is the number of instance quelea agents get close.
So the thing I need is to iterate the ramps controling the genes with octopus but activating the boolean toggle (quelea run) each time the ramps are modified so the agents take 40 seconds to perambulate the environment, analyze the instance they get close and let octopus iterate again searching for a optimized environment.
…
raries by entering %appdata% into the dialog box and browsing to the Grasshopper Libraries folder to find KangarooSolver.dll.)
Oh wow, because of "physics" there is substantial gap between the surface layer of many particles and the inner truss, so we already have some form of boundary adaptive 3D meshing, albeit only in the surface "XY" direction not the normal "Z" direction. There's less full XYZ directional force on the particles at the surface, so they can cluster more there due to the forces from within having to struggle much more against one another from all directions. Something like that.
Differing surface curvature has not much if any affect on particle packing:
The actual physics of electrons along a conductor says they are all on the surface, where they concentrate at sharp features, but here I imagine if they concentrated more at the finger tip, they would then push more interior particles away, which is not very adaptive after all.
Higher falloff exponents than 3 (actually -3) give much more even distances of surface vs. interior, so my color coding by length doesn't even work and there are visibly a lot more interior particles:
I confirm that exponent -2 drives everything to the surface, but also gives a quite odd artifact that they are not minimizing energy by close packing away from each other but are forming squares that seem to align with the UV directions of the container:
Exponent -4 then and even more -5 maximize the interior population, but beyond -5 it it becomes unstable and bounces around like crazy.
The Kangaroo2 custom goal C# script is simple enough:
I'm still confused how to attenuate the effect according to distance to the surface and also curvature of the surface when you are getting close to it since I don't understand if Kangaroo is running the entire Grasshopper script each iteration or not so I could just do calculations via Grasshopper stuff and feed it into the C# script as needed?
…
Added by Nik Willmore at 7:43pm on August 12, 2015
essarily architectural. As you can guess from the tone of my previous response, I finished with school and had a hard time finding a job that focused on the technologies I delt with all through undergrad and grad. During grad school I was working with ASGvis (the makers of V-Ray) so I got exposed to the software side of things both on the support/management side and the development side. Now I'm off on my own doing development projects like RhinoHair, a few others, and some custom plugins for clients. Not necessarily what I thought I'd be doing after grad school, but I'm certainly enjoying it more than the "standard" practice of architecture.
I definitely understand "creating" a program. I did both my undergrad and grad at Catholic U here in DC, and although there was some ground work laid in regards to fabrication, I was one of only two or three students spearheading a lot of the scripting/GH/parametric stuff and some of the topics that go along with them (algorithmic design, adaptive systems, advanced geometry). One thing that was incredibly helpful for me was to pair up with the most advanced and forward thinking professor(s) that you can and take their studios, electives, and/or help out with their research. I was lucky enough to pair with a professor who had been at MIT and really encouraged me to explore my interests and sharpen my technicial skills.
It might also be a good idea to stick your head in some other departments, probably the math and engineering ones, or even biology and economics if there are some forward thinking professors. Talk to some people and get a different perspective on things. When I went to the ACADIA conference in 2008 it really opened my eyes to some of the potential influence from those different arenas.
Fabrication wise, I'd really try to focus more on milling (3 axis is fairly standard, 5 axis if you can get access) than 3d printing. Printing is a lot of fun, but ultimately we're not printing buildings (yet), so some of the milling processes will be much more valuble. If your school doesn't have those kind of facilities on campus (either in the Arch dept or engineering or something), then contact a local fabricator and see if you can work together somehow or someway. You'd be surprised and how many fabricators are interested in talking to architects.…
Added by Damien Alomar at 3:13pm on February 8, 2010
, and it was only devised for triangular faces:
I could track all my edge labels (via the neighboring cell discussion) but from that info (the pesky tree) I needed unique face pairs to output a single crease angle.
Now (with your scripted component) I have the crease angles. All the 3D text is temporary for trouble shooting. This is 3 faces from a dodecaheadron:
So now I have the remaining hurdle as to whether the proper crease angle is the GH angle or the GH reflex angle.
The funny thing with the "pesky tree" is the meaning of the pattern doesn't become apparent until it's more complicated than the simpler excerpt from above.
I think I could make the scripted component a little cleaner if I use some nested loops instead of your search and remove method, but that may take me a while.
But it all the fun comes from this guy:
…
...hmm... points across the facade edges are not included (or may be some) and thus the whole thing is the art of pointless.
2. See the 1a unfinished part ... that defines internal boundaries for that purpose - then you need to create points across the edges, random reduce them and merging the list with the other points...blah blah.
3. That way each facade could yield structural members that touch the edges (where the biggest HEB/columns are expected to be). Obviously nodes are shared between facades with a common edge - the best logical approach for obvious real-life reasons.
4. The whole approach is stupid : here we need some Hoop snake "loop" control (that could take into account the critical connection angle constrain) in order to achieve a "progressive" deployment of the diagonal members in order to satisfy structural requirements and ... hmm...aesthetics. Free espresso for everyone is an added bonus.
5. Bottom to top design mentality is urgently required here: mastermind some 3d conceptual arrangement of nodes keeping in mind ... well...just 345,67 different real-life factors (but you could combine insulation and fireproofing if you use my favorite material: Foamglas - name with with one "s"). That way you can define the critical deployment planes : i.e. diagonal rigidity members, some facade aluminum system and floor main perimeter I-Beams MUST be in different planes.
I'll be back with a more stupid version of that thing.
may the Force ...blah blah
…
ed many inverted normals, holes, bad edges, intersecting mesh faces etc and couldn't really find a good fix for all the issues.
3. I imported the file again and tried the mesh offset to thicken it just by 1mm. It gets a reasonable result but still has errors where the offset creates intersecting mesh faces. The result looks better than the Rhino offset mesh and looks like it might actually stand on a table. It was a 53Mb STL file!
Unfortunately I do not have the Objet software on my laptop otherwise I would have tried to prep it for 3d printing but I have a feeling any slicing software will struggle to process this mesh and it would be quite an expensive risk to try and print it as is.
You might be able to take the thickened mesh and cut away at the problem areas, then manually tidy up the holes created but this would be a long, manual process.
I also tried a 2mm offset but this was less successful... I think what is really needed is a sort of intelligent offset whereby in areas where the offset creates intersecting mesh geometry, the offset is smoothed off in the intersecting areas. Sorry... no idea how you could do this.
Do you want me to upload the 53Mb STL somewhere? Can I upload it to your dropbox?
Do you want me to upload the 53Mb STL somewhere? Can I upload it to your dropbox?…
Added by martyn hogg at 2:41pm on November 24, 2014