On the other hand ... well ... we can pretend that this could be some sort of add-on dedicated for broken pieces, (and nerves if loops = a big number) he he.
Anyway:
1. If you enable the history (the yellow things) you can watch the recursion working: get a donor box and "slice" it in 2 (either via an "orthogonal" plane [the fast boxes] or a random one [the slow breps]). Then get each one and repeat until the desired "depth" of "slices" is achieved (the loops, that is). Pure recursion in terms of programming (a function does something, yields results and then calls itself to further process each result).
Double click on the C# to see the code (but don't change anything). For the record this is the function that does the main job (spot the fact that if it's not terminated it calls itself [last line]):
2. The x, xy, xyz options restrict the random plane (actually in the boxes case there's another technique used (Intervals) but never mind). For instance (case random breps) the slicing plane is defined at the brep center and using a random direction:
Vector3d dir = new Vector3d(rand.NextDouble(-1,1), rand.NextDouble(-1,1), rand.NextDouble(-1,1));
If the 3rd value is 0 then the plane's YAxis is parallel to Plane.WorldXY.ZAxis.
3. Now if the "slicing" thing was a random polyline at a random plane the pieces could be far more "elaborated" (and/or "naturally looking") ... but the thing with programming is to know(?) where/when to stop.
4. This approach could use any donor Brep (a blob for instance) or a Brep List. Notify if you want to add such an option.
5. Added some lines more for an option that allows to sample the pieces (due to the last loop) in an automated flat "layout" (it's a bit more complex than it appears on first sight).
6. The x,y restriction mode now affects the random slices as well. See what I mean:
and the same restriction using boxes:
Truth is that all that freaky stuff could be helpful for you if you had serious plans to learn C# (not something achievable without pain and tears aplenty).
best…
putational Planning Group (CPlan) and is a result of long term collaboration between academic institutions and praxis partners across the globe with the common goal to increase the efficiency and quality of architecture and urban planning.
For additional information, updates, examples and tutorials please visit DeCodingSpaces-Toolbox.org
Authors
Abdulmalik Abdulmawla1,
Martin Bielik1,6,
Peter Buš2,
Chang Mei-Chih2,
Ekaterina Fuchkina1,
Yufan Miao4,
Katja Knecht4,
Reinhard König1,4,5,
Sven Schneider1,3,6
Partners
Member institutions of the Computational Planning Group (CPlan):
1Bauhaus-University Weimar (Chair Computer Science in Architecture, Chair Computational Architecture)
2ETH Zürich (Chair Information Architecture)
3Emerging City Lab - Addis Ababa
4Future Cities Lab Singapore
5Austrian Institute of Technology Vienna 6DecodingSpaces GbR
Gallery
…
Added by Martin Bielik at 10:13am on September 28, 2017
) Course Fee: Professional EUR 825,- (+VAT), Student EUR 415,- (+VAT)
Led by plug-in developer and structural engineer Clemens Preisinger, along with Zeynep Aksoz and Matthew Tam from the expert Karamba3D team, this three-day workshop will focus on methods of setting up structural systems in the parametric environment of Grasshopper. The participants will be guided through the basics of analyzing and interpreting structural models, to optimization processes, and how to integrate Karamba3D into C# scripts.
This workshop is aimed towards beginner to intermediate users of Karamba3D. However, advanced users are also encouraged to apply. It is open to both professional and academic users. For beginner users of Rhino and Grasshopper, there will be an optional introductory course one day before the Karamba3D course.
Karamba3D 1is a parametric structural engineering tool which provides accurate analysis of spatial trusses, frames, and shells. Karamba3D is fully embedded in the parametric design environment of Grasshopper, a plug-in for the 3D modeling tool Rhinoceros. This makes it easy to combine parameterized geometric models, finite element calculations, and optimization algorithms like Galapagos.
Course Outline
Introduction and presentation of project examples
Optimization of cross sections of line-based and surface-based elements
Geometric optimization
Topological optimization
Structural performance informed form finding
Understanding analysis algorithms embedded in Karamba3D and visualizing results
Complex workflow processes in Rhino, Grasshopper, and Karamba3D
Places are limited to a maximum of 10 participants with limited educational places. A minimum of 4 participants is required for the workshop to take place. The workshop will be canceled if this quota is not filled by October 28. The workshop will be taught in English.
Course Requirements
Basic Rhino and Grasshopper knowledge is recommended. An introductory course is offered.
No knowledge of Karamba3D is needed. Participants should bring their own laptops with Grasshopper and either Rhino 5 or Rhino 6 installed. You can download a 90-day trial version of Rhino. Karamba3D ½ year licenses for non-commercial use will be provided to all participants.
Please register here……
Added by Matthew Tam at 6:38am on September 13, 2019
xes as well.
If you want to jump straight in, you can download the latest build from the Firefly website or from Food4Rhino project page. Or, if you'd rather learn more about all the new features, keep reading!
Improved Arduino Support The Firefly Firmata (Arduino Sketch) has gone through a massive overhaul - making it much more compact, efficient, and extensible. The sketch is now just over 230 lines of code (compared to more than 500 in the previous version). But more importantly, the firmata is now more extensible; making it easier to add support for new Arduino boards... Like what you ask? Well, support for the new Arduino Due platform for example. The Arduino Due is an advanced board and while it may look similar to the Arduino Mega... it's actually quite different under the hood. It features an ARM Cortex-M3 CPU which means its really fast. It also features 12-bit analog resolution for reading and writing (which is pretty awesome). As I said, the Due is a more advanced board and it does require some caution when getting started. You can find out more about the Due platform at the Arduino Due Getting Started page.
One of the biggest changes with the revision of the Firmata was that it required some structural changes with how the data is sent/received from Grasshopper. So, if you are planning on using the latest version of the Firmata, you'll need to also have the latest Firefly components installed as well. This shouldn't be an issue because the installer will place the new Firefly Firmata in your sketchbook folder and install the new components as well... but it's worth noting so you don't try to mix and match the versions.
Kinect Version 2 Support Earlier this summer, Microsoft released a new and improved version of its popular Kinect motion tracking sensor. The sensor includes better body, hand, and joint orientation, 1080p color video (1920x1080), depth video (512x424), and a new active infrared video (512x424). The sensor now has the capability to track up to 6 people at once (compared to only two people with the previous version).
This build of Firefly now comes with three new components to work with this new sensor. The Video Stream can access the color, depth, and infrared video streams at different resolutions. Simply right-click on the video component to choose the video feed and resolution. Note: You may need to update your graphics card in order to get the infrared video stream to work properly (at least I did before it began working properly). The Skeleton Tracker is similar to the previous version, but can now track up to 6 people. And the Mesh Reconstruction component will build a fully colored 3D mesh using the color and depth data from the sensor. I plan to add more components to this section soon, but I wanted to go ahead and release this so more people could use it! [EDIT: I would like to thank Panagiotis Michalatos for his collaboration in the development of the Kinect V2 tools].
New Computer Vision Tools This release also includes a number of new computer vision tools. One component to note is the Bitmap Tracer, which can be seen in action here. The Bitmap Tracer component spawns a number of randomly generated particles which trace the edges of a bitmap using the nearest contouring vector. Another pair of components is the Bitmap Decompose/Recompose which can either decompose or reconstruct a bitmap using a list of values for its constituent channels. These two can be used together to swap channels in an image (think chroma keying). There's also a Bitmap Threshold component which uses the average dithering algorithm to find the color quantization of an image. Lastly, I've updated the Leap Motion Finger Tracking component to work with the latest release of the Leap v2.2.1 software release. The component now has improved finger tracking including joint and bone position/orientation.
In addition to these new features, there's also a number of bug fixes too (check out the readme if your interested). As always, I welcome any and all feedback on this build. Your support really helps, so please let me know what you think!…
xes as well.
If you want to jump straight in, you can download the latest build from the Firefly website or from Food4Rhino project page. Or, if you'd rather learn more about all the new features, keep reading!
Improved Arduino Support The Firefly Firmata (Arduino Sketch) has gone through a massive overhaul - making it much more compact, efficient, and extensible. The sketch is now just over 230 lines of code (compared to more than 500 in the previous version). But more importantly, the firmata is now more extensible; making it easier to add support for new Arduino boards... Like what you ask? Well, support for the new Arduino Due platform for example. The Arduino Due is an advanced board and while it may look similar to the Arduino Mega... it's actually quite different under the hood. It features an ARM Cortex-M3 CPU which means its really fast. It also features 12-bit analog resolution for reading and writing (which is pretty awesome). As I said, the Due is a more advanced board and it does require some caution when getting started. You can find out more about the Due platform at the Arduino Due Getting Started page.
One of the biggest changes with the revision of the Firmata was that it required some structural changes with how the data is sent/received from Grasshopper. So, if you are planning on using the latest version of the Firmata, you'll need to also have the latest Firefly components installed as well. This shouldn't be an issue because the installer will place the new Firefly Firmata in your sketchbook folder and install the new components as well... but it's worth noting so you don't try to mix and match the versions.
Kinect Version 2 Support Earlier this summer, Microsoft released a new and improved version of its popular Kinect motion tracking sensor. The sensor includes better body, hand, and joint orientation, 1080p color video (1920x1080), depth video (512x424), and a new active infrared video (512x424). The sensor now has the capability to track up to 6 people at once (compared to only two people with the previous version).
This build of Firefly now comes with three new components to work with this new sensor. The Video Stream can access the color, depth, and infrared video streams at different resolutions. Simply right-click on the video component to choose the video feed and resolution. Note: You may need to update your graphics card in order to get the infrared video stream to work properly (at least I did before it began working properly). The Skeleton Tracker is similar to the previous version, but can now track up to 6 people. And the Mesh Reconstruction component will build a fully colored 3D mesh using the color and depth data from the sensor. I plan to add more components to this section soon, but I wanted to go ahead and release this so more people could use it! [EDIT: I would like to thank Panagiotis Michalatos for his collaboration in the development of the Kinect V2 tools].
New Computer Vision Tools This release also includes a number of new computer vision tools. One component to note is the Bitmap Tracer, which can be seen in action here. The Bitmap Tracer component spawns a number of randomly generated particles which trace the edges of a bitmap using the nearest contouring vector. Another pair of components is the Bitmap Decompose/Recompose which can either decompose or reconstruct a bitmap using a list of values for its constituent channels. These two can be used together to swap channels in an image (think chroma keying). There's also a Bitmap Threshold component which uses the average dithering algorithm to find the color quantization of an image. Lastly, I've updated the Leap Motion Finger Tracking component to work with the latest release of the Leap v2.2.1 software release. The component now has improved finger tracking including joint and bone position/orientation.
In addition to these new features, there's also a number of bug fixes too (check out the readme if your interested). As always, I welcome any and all feedback on this build. Your support really helps, so please let me know what you think!
…
large scale prototyping techniques. The programme continues to build on its expertise on complex architectural design and fabrication processes, relying heavily on materiality and performance. Autumn DLAB brings together a range of experts – tutors and lecturers – from internationally acclaimed academic institutions and practices, Architectural Association, Zaha Hadid Architects, among others.
The research generated at Autumn DLAB has been published in international media – ArchDaily, Archinect, Bustler – and peer-reviewed conference papers, including SimAUD (Simulation in Architecture and Urban Design), eCAADe (Education and research in Computer Aided Architectural Design in Europe).
Autumn DLAB investigates on the correlations between form, material, and structure through the rigorous implementation of computational methods for design, analysis, and fabrication, coupled with analog modes of physical experimentation and prototype making. Each cycle of the programme devises custom-made architectural processes through the creation of novel associations between conventional and contemporary design and fabrication techniques. The research culminates in the design and fabrication of a one-to-one scale prototype realized by the use of robotic fabrication techniques, with the aim of integrating of form-finding, material computation, and structural performance.
The programme is structured in two stages:
PART 1 – participants are introduced to core concepts of material processes, computational methods and digital fabrication techniques. Basic and advanced tutorials on computational design and analysis tools are provided. The programme performs as a team-based workshop promoting collaboration, research and ‘learning-by-experimentation’.
PART 2 – participants propose design interventions based on the skills and knowledge gained during phase 1 and supported by scaled study models and prototypes. The fabrication and assembly of a full-scale architectural intervention with the use of robotic fabrication techniques will then unify the design goals of the programme.
Applications
1) A limited number of 10 places are available. To apply, please send a small portfolio (5MB) to the Visiting School Office.2) PARTIAL SCHOLARSHIPS ARE AVAILABLE. Please send a letter of intent and a small portfolio (5MB) to the Visiting School Office.3) As this programme has a limited number of places it requires a selection process, if you are offered a place on programme, the Visiting School Office will inform you of how you can complete the registration process.
The deadline for applications is 13 AUGUST 2021.
Eligibility
The workshop is open to current architecture and design students, PhD candidates and young professionals. Software Requirements: Adobe Creative Suite, Rhino 6. No prior knowledge of software tools is required for eligibility.
Fees
The AA Visiting School requires a fee of £975 per participant, which includes a £60 Digital Membership fee.Students need to bring their own laptops, digital equipment and model making tools.
…
umbers behave differently from the reals, in that when they are squared they give a negative result. They are written as multiples of the imaginary unit i, which is defined so that:
i*i=-1
Complex numbers are numbers which have two parts (hence the name complex) - a real part and an imaginary part.
For example:
3+4i,
or more generally:
a+bi, where a and b are some real numbers.
Well that's a definition, but I guess you might be wondering what is the point of them - I've not said anything yet about why they are interesting and useful...
Solving cubic equations was one of their first uses, but I doubt that is what most of you are interested in.
Where they really get fun is when you start looking at them geometrically.
The Argand plane is a setting that allows us to treat complex numbers a bit like vectors.
Each complex number a+bi defines a point relative to an origin (0,0), much the same as a vector with an x and y component.
Like vectors we can add and subtract them to get a new point.
But when we multiply them, unlike vectors, we add the angles (measured anti-clockwise from the positive real axis, also called the argument) and multiply the lengths (or the modulus of each number).
This all follows naturally as a consequence of the definition of i as the square root of minus one.
........
That is just dipping a toe into the great depths.
Complex number math, and in particular complex Analysis (calculus with complex numbers) is a vast subject that I obviously can't cover much of here.
If you are interested in learning more :
The Math department at Cal State Fullerton has some very nice Complex Analysis pages.
Chapters 5 and 6 of the film Dimensions covers complex numbers very visually. You can watch it online here, or read the description here.
Complex numbers on Wikipedia
on MathWorld
Hans Lundmark's complex analysis pages
The book Indra's Pearls is about making certain types of fractals with complex numbers, and includes a good introduction, along with lots of pseudocode.
To really engage with some of the true depth and power of complex numbers I particularly recommend the beautiful Visual Complex Analysis. This was the book that made me love this subject.
I'm really looking forward to seeing more designers make use of complex numbers. I think it is a wonderful tool. It is an advanced branch of mathematics, requiring some serious study to understand, but because of its strong geometric connections, I think relatively accessible to those who tend to think more visually. Now that David has included them in Grasshopper, starting to explore them should be easier than ever.…
Added by Daniel Piker at 4:38am on November 25, 2009
can work in any node of a given hierarchy tree (loaded in your work session) by making the node "active". "Nodes" can be other things as well (like workplane, clip definitions etc).
Why to do that weird thing? Well, think any design being "flat" > meaning that all objects are placed in a single file (and in a single layer). Not that good > although the items are present you barely can handle them (because power is nothing without control, he he).
Let's go one step further: we can start classifying objects in "groups" (like a directories/files organization in any O/S). This means, in MCAD speak, creating assemblies (a void thing kinda like a directory) that contain components/entities (kinda like files).
Several steps further we end up with severely nested "arrangements" of entities (an assembly could be parent of something and child of something else).
For instance, it could be rather obvious the logical classification of a "geodetic" (so to speak) structure like this : a 40000m2 "hangar" defining some thematic park.
I mean : a void master that owns 4 equal void segment sets that own 4 "legs" that own various geodesic structural members + cables + membranes + you name it etc etc.
Each "leg" owns the concrete base (Shared) and a rather complex set of objects.
Notice that some tensile membrane "fixture" combos (see above)...act as perimeter light fixtures as well...meaning that the membrane tension plate may could be a child of a void "light" parent...or may could be a "stand alone" assembly etc etc.
These arrangements can be internal (belonging in, say, a x node within the current active file) or external (belonging in a y node within another file). If they deal with the same (topologically speaking) object they define clusters of Shared entities (or variations)- where only the view transformation matrix changes (in the simple scenario, he he). For instance the disk shown above is a Shared Assembly that owns the bolts, the plates, the tension member etc etc. Selective Instancing allows modifying some attributes without affecting the topology (i.e. the geometry).
The whole (terrible) mess is controlled by some tree like "dialog" (in Catia is "transparent") that is called Structure Browser. By controlled I mean (1) display/display mode with regard any tree member combo/selection set (assembly and/or component) in any View (2) clip state control (3) active status (for modifications/variations) (4) workplane control (5) drag and drop ownership control (6) ....
Now...what if I would chan…
this occasion, but it could be converted for DT in no time). Requires some minutes more as regards ... some things, but the usual update is due to some days.
Bad news: it's C#
Good news: User's Manual :
1. That thing (the C#, not me) after sorting (in a "sequential way", so tho speak) the panels (their order was chaotic) allows you to start the massacre by locating a focus of interest (and the user controllable +/- Range derived from it).2. The Range is variable (obviously) and takes care not to exceed the indices of the panel list (OK, that's elementary).
3. If you click the right button (Sadistic Q: where is it? he he) things are deleted and a new constantly self-updating list is your new List. Thus the massacre of panels is totally controllable. An autoZoom thing is also included (free of charge, but it's a bit nerve braking). Zoom factor is variable as well.
4. Then you move over (via the index slider) and start the massacre again. Notice the change of Range.
5. If you turn begin to false (initialization) and then begin to true > start all over again.
6. The other C# thing allows you to increment the index slider in a rather more convenient way. It's a bit weird: it uses delegates (A delegate is an object that knows how to call a method) and events (An event is a construct that exposes just the subset of delegate features required for the broadcaster/subscriber model - but don't ask what this means, he he) in order to talk with your slider (with a defined NickName) and perform the required value control.
NOTE: without realizing it you've just (indirectly) asked one of the most important questions even exposed in this Noble Forum. I hear you : what question? Well ... wait some days for the mother of all threads: "Total control in collections on a per Item basis"
may the Force (the dark option) be with you (and me)
best, Peter…
Rubicon (ii.e. some programming language [I would strongly recommend C#] > the Dark Side > years of pain + tears > hell or heaven?).
Back to that pile or worms of yours (I hate "simple" cases, he he).
0. if you want rounded lips ... Styrofoam is the only solution (+ sanding [buy a mask and some decent cigars ... path is long and hilly]). if not > goto 5/6.
1. by what means you think that you can shape Styrofoam? Do you have access to some CNC foam cutter? Or the only tools that you have are ... 2 hands and a knife? (or a thermal cutter). Accuracy is a BIG issue here: chances are that panels won't "fit". Solution is available in the forthcoming V3.
2. male "protrusions" on Styrofoam is kinda 3rd marriage > AVOID at any cost > this would end up in tears.
3. female ones are safe ... thus we need a proper "insert stripe" that must be compatible with the Styrofoam adhesive and strong enough to hold the pieces until the glue cures (it takes time, there's no instant Styrofoam adhesives around). Maybe aluminum (hard to cut by hand) or balsa (very expensive) or plywood (best option).
4. Some CNC foam cutters they can't shape the female "crevices" > be prepared (a thermal tool may(?) cut the mustard).
Note: panels made with Styrofoam look miserable because reality and theory differ. They also look miserable as well (and kitsch and miserable).
5. making the panels with (marine) plywood ... well this yields far superior accuracy and therefor aesthetics but (a) yields max panel thickness constrains, (b) introduces max panel dimensions constrains (c) yields packing issues [waste material] and (d) requires a totally different "connection" approach: it doesn't make sense to do some female crevice ... unless the plywood is very thick (expensive + heavy).
Note: Designing (pro option) self supporting "rib" reinforced sandwich composite panels ... well this is a bit far and away from what you can handle at present time.
So ... I've suspended the male/female thingy until you decide the final policy: it's the material/detailing that should dictate the method(s) AND the whole design and not the other way.
This is what we call bottom-top design approach (dinosaur Architects follow the top-bottom: disastrous + naive + naive + naive + avoid).
6. Plan ZZTop: make a stand alone autonomous perimeter frame per panel (marine plywood: imagine "thickening" these abstract beams shown inwards per panel) then join these frames by means of bolts (easy) and fill the "gaps" with Styrofoam (hmm). Note: you can reinforce the frames by a variety of means (say: a secondary "beam" sub-structure) achieving a rather elegant all overall solution.
This is the best solution by roughly 666 miles.
…