and...how to bake meaningful assembly/component type of structures for the rest of the tedious work required > you know what I mean > the ugly part of our business > documentation drawings, BOM, tech etc etc etc.
For instance, let's focus to the planar glazing support items: absolutely no need to make them it via any smart app since they are plenty of them around in the market (unless you are I.M.Pei and you do that exceptional Pyramid wonder thing).
But...the goal is...hmm...to create some kind of "smart" (kinda, he he) solution where components (the "baked" ones, so to speak) are structured in such a way that further work (via conventional CAD apps) is easily managed. To speak in Rhino dialect: nested Blocks and/or nested Refs. Like having components in GH that could manage nested Block/Ref stuff (but I guess that you can do it rather easily via VB).
Back to that ugly truss: It's obvious that this is a nested collection of "repetitions" (should I call them iterations?) : meaning that a void top node owns a module truss that owns 2 supportive sub-trusses that are made by some pipes that own connecting items that own the planar glazing items etc etc etc.
With regard the "own" thing: Imagine a CAD file that is simply a container/place holder of some individual entities (called Models). These Models can be "linked" to others (in a nested parent/child relation). Links can be external of internal. They can be either References or Cells or Shared Cells. This the way that Microstation classifies/handles "entities" (a bit primitive, mind, but nobody's perfect - for the real thing see CATIA/NX).
Back to that ugly truss: Obviously this structure (actually the assembly/component combo related with the given solution) has to be transfered into classic 2d extractions (say: plans, elevations, sections et all). This is done why a weird thing called Dynamic Views/live markers in Microstation (you define Clip planes in 3d space that manage 2d extraction content in something called Drawing Model that controls other weird things called Sheet Models, all these live linked etc etc).
To make things more spicy...these 2d extractions can been viewed as master detail directives: from where 1:1 classic details are made (that is: you apply more Dynamic Views and live markers and life goes on - red pepper extra strong Russian vodka is a must when you do that type of work).
This is where Rhino is out of his depth (but to be fair: it's not designed for this type of work) and also this is where Microstation has no competition at least for AEC purposes (but to be fair: it is designed for this type of work).
Of course Autodesk...well expect soon the Gen Comp equivalent for Revit...a fact that complicates things (for Bentley) a bit given the Revit mania in the AEC world.
Moral: intelligence is good but it's only the tip of the iceberg. …
we're actually using PET sheets for our flexures. We try to design so that the flexures don't go through more than +/- 30 degrees of deflection. If the angular deflection is kept small, the lifetime can definitely be on the order of 1000000 cycles.
As for the design process (item 2), ideally the designer would be able to use a simple 3D CAD tool to design a model of a robot, and the geometry would be represented by dimensioning the individual parts in the model. Maybe there should be some parametric primitive kinematic building blocks like four bar linkages, box frames, etc. that a user could build up a robot from. But, the key functionality the tool needs to provide is for the designer to be able to visualize how the robot will move when it's fabricated. This could mean observing (or plotting) the motion of a leg, a wing, or a series of body segments. Ideally, then, the tool would generate an unfolding of the design. How this would work is still very vague - maybe the user would assist in the unfolding, maybe there would be an optimization routine that computes optimal unfoldings based on criteria like minimal waste, or fewest pieces (I would *not* constrain the problem to construction from a single monolithic piece as in origami). The biggest problem we have right now, is that our design process is totally divorced from fabrication. Even if we went through the trouble of extruding individual thin plates in Solidworks and creating an assembly for visualizing the kinematics of a mechanism, that particular representation doesn't transfer easily to the fabrication process because it's essentially monolithic.
Item 3: The 2D drawing is simple a drawing done manually in Solidworks. There are different layers for flexure cuts, outline cuts, and potentially any cuts to be made in the plastic flexure layer. Depending on the robot, there may be many separate pieces for different parts and linkages in a single robot. For example, the drawing for a robot containing a fourbar linkage may have the linkage laid out as a physically separate piece consisting of five rigid links connected by four flexure hinges. During assembly, the designer would then fold up that linkage and insert it into the robot wherever it's supposed to go. If you're curious you can see some sample 2D drawings for older designs here: http://robotics.eecs.berkeley.edu/~ronf/Prototype/ under the "Example Structures" heading.
I noticed Kangaroo seems to be a popular choice for physical simulations. I don't really even need to include forces like bending resistance - I'm happy to allow the design tool to approximate flexures as pin joint-type hinges. Once the design is unfolded, the details of how to cut the flexures could be worked out in a post-processing step. I wouldn't expect the tool to be able to realistically simulate the bending of the hinges.
I'm going to have to dig a lot deeper into understanding Grasshopper and Kangaroo. I only just got started with Grasshopper today by following the folding plate tutorial on wa11ace.com.au today. …
heranno la maggior parte delle funzionalità di Rhino, tra cui i comandi più avanzati per la creazione di superfici.
Struttura Le lezioni tratteranno in maniera sistematica argomenti riguardanti l'interfaccia utente, i comandi, la creazione e modifica di curve, superfici e solidi.
Risultati attesi Dopo questo corso l’allievo deve essere in grado di:
• Muoversi agevolmente attraverso l’interfaccia di Rhino.
• Identificare quando è richiesto modellare in maniera free-form o di precisione.
• Creare e modificare curve, superfici e solidi anche di natura complessa.
• Utilizzare ausili di modellazione per la precisione.
• Produzione di facili rendering per la visualizzazione dei modelli di Rhino.
Destinatari Questo corso è rivolto a progettisti e studenti che vogliono imparare in modo efficace i concetti e le caratteristiche del software di modellazione Rhinoceros. Le lezioni saranno esposte da un docente ART qualificato dalla McNeel esperto di modellazione Nurbs.
Prerequisiti Per affrontare il corso sono richieste competenze di Windows, passione e volontà di modellazione; precedenti esperienze di modellazione, anche con altri software, sono utili ma non indispensabili.
Attestato Alla fine del corso verrà rilasciata l’attestato di partecipazione ad un corso qualificato McNeel valido anche per l’ottenimento di crediti formativi universitari.
Luogo Le lezioni si terranno in Via dei Valeri 1 int.9, 00184 ROMA
Pre-iscrizione Per garantire il numero di iscrizioni è necessaria una pre-iscrizione inviando una mail all'indirizzo 4planstudio@gmail.com il cui contenuto deve essere il seguente:
Nome:
Cognome:
Indirizzo di residenza:
mail:
telefono:
La preiscrizione dovrà avvenire entro il 30/11. A seguito di questa procedura verrà inviata dal tutor una mail di conferma con le procedure di iscrizione.
Quota di iscrizione
Il corso prevede le seguenti quote di iscrizione:
studenti: 400 Euro; (sarà necessario presentare in copia la ricevuta di pagamento dell’anno in corso)
non studenti: 470 Euro. Le quote sono considerate iva inclusa.
Info
Per ulteriori informazioni sono a disposizione i seguenti contatti:
Responsabile didattico: arch. Michele Calvano
Info mail: 4planstudio@gmail.com
tel: 340 3476330
…
ts in extreme aliasing effects that carry into the 3D realm as regular steps along what should be smooth surfaces.
On sleeping on it, I realized I hadn't yet tried fast Unary Force on fine quad meshes from the standard Grasshopper meshing system that includes the meshing options component.
Bingo! It's fast now. Workable. I don't need super fine meshing since I'm not running from aliasing. I can still use rather fine local meshes since Unary Force lets Kangaroo do a simple thing just in the Z direction rather than a full 3D force.
After only a minute or so of Kangaroo initialization that slows the interface, each of a dozen needed cycles takes half a second, FOR THE ENTIRE GRAPHIC.
I just set the timer to 1 second so I can move around the interface, and I double click the Windows taskbar timer shut-off to enjoy the result.
WHILE RUNNING VIA TIMER, IF I CHANGE A SPRING/FORCE SETTING IT SUFFERS NO DELAY AT ALL AND JUST ALTERS THE OUTPUT OVER TIME. I can change Unary Force from 20 to 100 and immediately see the bigger areas balloon like crazy:
It's fast enough overall to play with, yet the individual steps are slow enough that it's fun to watch the hysteresis as it overshoots back from 100 to 20 Unary Force, going concave in the middle of bulges then back to more shallow hills.
A force of 1000 is a bit disturbing, I wonder if I can tamp it down with greater spring strength or will that just give me the same result as before?
Looks like it's the same, just the ratio matters. Makes sense I guess. At one point it blew up though. Hitting the reset button...a minute later it blows up again...and just doesn't like huge numbers, so I don't see an advantage playing with bombs. The high mesh strength is pulling the mesh apart.
With low Unary Force and moderate mesh tension, you get flat tops, as if the overall force on the mesh fighting its anchored edge vertices, is enough to displace it, but the surface itself is too stiff to care about local gravity.
Then you have less flat areas as you increase Unary Force:
Weird, there *is* some sort of absolute effects, rather than just relative, between Unary Force and spring stiffness, since now I'm getting flat tops even in the extreme:
Oh, wait, strike that, I may be seeing but a single step with the timer off, subject to hysteresis. With the timer back on...it can sit there a minute...not locked up but just idling...until you see the Display > Widgets > Profiler time start cycling to near half minute numbers...makes you want to hit the reset button...and indeed that locks the interface for another initialization...and yes, it was merely hysteresis, not an equilibrium result. My former flat tops may have been due to that too, due to my use of the Windows taskbar timer disabler. The lesson is that you can obtain different results by using a long timer setting and just stopping it before it equilibrates.
This script is a keeper, fast and fun after the relatively mild Kangaroo initialization period is over.
The uniform mostly quad meshing is all done in Grasshopper too, from any flat surface with holes, especially from images of shapes that are traced with potrace to give surfaces with holes.
Could I switch to hex meshes from triangular meshes to do the same thing with fewer vertices?
Are there other forces I can add to smooth the bulging? Letting things bulge is not so bad if you then just scale down the result in Z afterwards (though perhaps the same result could be had with lesser force):
Also, can this same thing be done with possibly faster Kangaroo 2?…
Added by Nik Willmore at 10:02pm on February 21, 2016
racting isocurves in Grasshopper in order to use them as more curves. If I could figure out the thorny use of Grasshopper data trees within Daniel Piker's Geometry Wrapper VB script that is used here, it would be considerably faster than having to include each isocurve in a separate field strength lookup.
The way marching cubes and an isosurface work in the code, is to simply find the distance to the closest point on each curve and run the distance to that point through a slow equation to determine field strength there, usually an r^2 operation, and this causes awful bulging where geometry clusters, so I just hacked it to use no math and instead yes/no values based on a fixed radius value, doubling the speed of the script and removing all bulging effects, so it's not really metaballs any more but after MeshMachine relaxes the mesh under tension, the result is similarly smooth. To build up a full 3D spacial field, it simply adds the field values from each curve (or point) together via a loop over all those geometry objects, so there is no big implicit equation created except such summation.
HOW DO I ADD SURFACE ISOFIELD TO THE SCRIPT ITSELF SO I CAN AVOID THE ISOCURVE KLUDGE?
It's not the VB I'm thrown off by but the lack of a real loop where a data tree is used:
I can likely write my own calculate_surface_field function since it just needs to spit out one of two fixed numbers depending on using Rhinocommon to find the distance of the test point (a corner of a marching cube) to the closest point on the surface. But the above loop doesn't cooperate with my attempt to rewrite it as simple loops going through each point, curve, and surface for each test point. I can barely tell what's looping here, as he has stuffed all geometry into one container and then tests for curves. I'd rather just make loops for separate Points, Curves and Surfaces inputs and get rid of the baffling data tree.
The overall canvas is also rudely updating the preview twice, making it much slower than the two big components actually take so solve, as I believe it may be regenerating a display mesh between VB and MeshMachine solutions?
…
arametric Design, in the history of architecture, has defined many rules for current designers and for future practitioners to follow. One of the strongest aspects that are prominent from this style is ‘geometry’. Arguably, there is nothing new about geometry and aesthetics forming the most prominent aspect of any style or era. The language of any style, in the long history of architecture, is visually defined by geometry or shape, beyond the principles that define the core of the style. In the distinguishable style of parametric architecture, geometry has played and is continuing to play an integral role. And with this fairly young style, there are many strings of myths and false notions associated.
The workshop aims to provide a detailed insight to ‘parametric design’ and embedded logics behind it through a series of design explorations using Rhinoceros & Grasshopper platforms, along with understanding of data-driven fabrication strategies. An insight to Computational Design and its subsets of Parametric Design, Algorithmic Design, Generative Design and Evolutionary Design will be provided through presentations, technical sessions & studio work, with highlighting agenda of using data into Hands-on fabrication of a parametrically generated design. A strong focus will be made on ‘geometry’ and ‘matter’.
// Methodology
Workshop has been structured to teach participants the use of Grasshopper® (Generative modelling plug-in for Rhinoceros) as a generative tool, and ways to integrate it with Hands-on Fabrication process. A strong agenda on ‘geometry’ and ‘matter’ will form the focus of the studio with design experimentation through computational & parametric techniques, culminating into a manually fabricated wall panel using understanding of data-driven design during the course of workshop.
Day 1 Topics / Agenda
Rhinoceros 3D GUI and basic use
Installing Grasshopper & plug-ins
Grasshopper GUI
Basic logic, components, parameters, inputs, numbers, simple geometry, referenced geometry, locally defined geometry, baking, etc.
Lists & Data Tree: management, manipulation, visualization, etc.
Design Experimentations with Geometry & Data
Understanding Data for Manual Fabrication
Day 2 Topics / Agenda
Design Experimentations with Geometry, Form, Matter
Data for effective numbering and strategizing during Manual Fabrication
Collaborative effort for Hands-on ‘making’ process
Analysis & Evaluation of Fabricated Geometry
Documentation…
bsp;
-Vehicle elements (3D objects and a component for custom vehicles; models from Google Warehouse)
-Traffic Velocity Graphs, drawn on every trajectory curve (allow custom graphs drawn)
-Traffic regulation elements (such as Traffic Lights and Stop Signals) and traffic density
-Particle Systems on trajectory curves, just to manage the traffic regulations and avoid collisions based on security distances
-Traffic Vehicle Animation Modes (Dots, Bounding Boxes or complex Meshes with attributes for final rendering (Giulio Piacentino´s Render Animation)
-Vehicle Lights and Vehicle Sights, to make visual studies
Team:
-Sergio del Castillo Tello (Doctor No, lead programmer)
-Everyone that wants to be involved, support.. these tools
The development of Roadrunner is planned to take part within a Research Group Program at ETSAM (University of Architecture in Madrid); This forum group is created just to test the interest of the community, while we keep on developing (it is still being tested), probably we will share the whole thing in the future. Cheers!
Traffic Cluster Scheme
Traffic Elements
Traffic Urban Systems
Vehicle Elements
Roadrunner - overview
Roadrunner 0 Basics
Roadrunner 1 Modes
Roadrunner 2 Elements
Roadrunner 3 Urban Systems…
make quad mesh usable with Kangaroo and with limited inputs parameters in order to simulate funicular structures like "Vaulted Willow" or "Pleated Inflation" from Marc Fornes and the Verymany.
Here is a first attempt script.
As inputs there are :
Lines_in, just lines, no duplicates, on XY plane could have Z values, but the algorithm works on a , on XY plane could have Z values, but the algorithm works on a flat representation.
Tolerance is used to glue lines when points are closer than tolerance
Width is the half width of the “roads” going through the network
Angle is the shape of the ends of the roads, 0° means flat end, 180° a totally rounded end
Deviation is the shift generating spikes or enabling to generate pleated geometry
N_u is the number of subdivision along the “roads”, image above with 3 subdivisions on the roads
N_u is the number of subdivision across the “roads”
Zbool if false everything is flat, if true the mesh is in 3d, best with angle = 180° or -180°
For the outputs there is the topology of the network (like Sandbox)
As outputs geometry are put on datatree, each branch represent a path on the road, above 3 paths, which are brep output.
Adding a diagonal there are now 4 paths so 4 branches
The mesh M goes with F which are fixed points, anchor in Kangaroo.
U and V are lines in datatree, there will be used as spring in Kangaroo, U above
This script could be used to draw sort of roads, like in here https://codequotidien.wordpress.com/2013/03/22/hemfunction/
But the primary purpose is to do that.
…
ppresentazione di modelli per l’architettura ed il design, verso un apprendimento d' alto livello delle tecniche di modellazione parametrica 3D.
Il corso si svolgerà nei seguenti giorni:
Sabato 19/10 dalle 10.00 alle 19.00
Domenica 20/10 dalle 10.00 alle 19.00
Scadenza preiscrizione: 16/10
Contenuti
Durante questo corso, attraverso l' uso di tecniche avanzate di modellazione Nurbs,
si potranno costruire modelli tridimensionali complessi che permetteranno di comprendere le tematiche legate alle forme complesse dell’architettura.
Particolare attenzione verrà data allo studio delle superfici a doppia curvatura, alle superfici rigate e alle superfici sviluppabili, quest’ultime adatte alla creazione di manufatti rivolti alla produzione. Allo studio delle superfici sarà affiancata la logica della loro tassellazione, quindi il passaggio da entità continue ad entità discrete, indagandone il valore attraverso esercitazioni pratiche.
Per comprendere meglio le finalità pratiche della tassellazione verrà adoperata una plug-in integrativa specifica per questo tipo di operazione: Paneling Tools. Le lezioni pratiche saranno arricchite da brevi comunicazioni teoriche utili a perseguire l’obiettivo della costruzione di modelli complessi. Sintesi programma
Costruzione di superfici free-form facilmente editabili attraverso tecniche di sculpting ed una gabbia adeguata di punti di controllo;
Presentazione e spiegazione delle superfici a doppia curvatura, rigate, sviluppabili e loro pannellizzazione attraverso elementi lineari o tasselli piani;
Studio della tassellazione attraverso la plug-in Paneling Tools per lo sviluppo di tasselli tridimensionali complessi;
Modellazione di un'architettura complessa, costruita avvalendosi della anche della tecnica del morphing.
Preparazione della mesh e del file per il rendering.
Alla fine del corso, verrà rilasciato l’attestato di partecipazione ad un corso di Rhinoceros qualificato e certificato dalla casa sviluppatrice McNeel, valido anche per la richiesta di crediti formativi universitari.
Docente del corso
Il corso è tenuto da un docente qualificato, con riconosciuta esperienza universitaria, esperto in disegno e rappresentazione dell' architettura e del design ed istruttore McNeel:
Michele Calvano|_architetto, dottore di ricerca in rappresentazione architettonica specializzato nella modellazione matematica (Nurbs) e modellazione parametrica.
Docente ART (Autorized Rhino Trainer) - [vedi CV]
Info
Per ulteriori informazioni di carattere didattico sono a disposizione i seguenti contatti: Responsabile didattico: arch. Michele Calvano
Info mail: parametricart@gmail.com
cell: 340 3476330
…