hs (sequenced points) in initially one of two lattice structures. Output only the paths that meet the path requirements.
Path requirement (GH Inputs):
1. Number of path points: 1..N (N could and up being up to 100? (Massive calculations, realistic numbers in the up to 30 range)
2. Symmetry requirement: 0 (none), 2,3,4,5,6 fold (path sections repeat)
3. Closed path boolean: default true (output only paths where first point is last point)
4. Lattice selection: cubic body centered, cubic face centered
5. Straight path section boolean: default false. Blocking the path from going straight or allowing it to go straight. Going backwards should always be blocked.
Outputs:
1. List of unique points in sequence for path in the lattice. grouped by individual path
On implementation:
1. generate all paths and eliminate paths with duplicate points (self intersecting lines)
2. eliminate paths that don't meet closed boolean (first point not equal to last point)
3. eliminate paths that don't meet symmetry variable
for symmetry paths (symmetry not equal to 0) only number of points divided by symmetry has to be calculated. each section can be repeated the number of times of the symmetry.
For closed paths, a distance from the staring point could be maintained that could stop the generating of paths that can't make it home.
Any thoughts would be greatly appreciated!…
Added by Anton Bakker at 10:38pm on December 29, 2013
pts. Beginning with a presentation on the main principles of scripting with Python, this webinar will incrementally unpack a diverse set of Programming techniques through a series of “live” exercises with Python and Grasshopper. With two instructors offering guided curriculum and continuous support it is our goal to provide you with an in-depth and personal learning experience. Additional topics covered will include: the basics of scripting with python, where to look for help and references, and when to script in Rhino3D vs Grasshopper.
This Webinar will last 2.5 hours including a 30 minute Q & A session. Registration can be found below. We look forward to your participation!
Topics:
What is Python and How do I create a Script?
Where can I find References and Help?
What are Variables, Iteration, and Recursion?
I can do a lot already with Parametrically. Why would I want to Script inside of Grasshopper?
I have a nice Script I wrote. How do I use it inside of Grasshopper?
Registration and details can be found here:
http://modelab.nu/?p=7248…
Added by GIL AKOS at 10:37am on September 25, 2012
Loop'. The fun part of the slower version is that you can see what it's doing while it's running. 'Fast Loop' gives no indication that it's working, so you want to test it with small numbers and be sure it's coded properly before bumping the iteration count up.
The GH profiler running the slow version showed between 1 and 1.5 seconds per loop, but the reality was more like ~10 seconds per loop toward the end of an 11 X 11 grid, or ~20 minutes total. It's easier to be patient because you know it's working.
The 'Fast Loop' finished the same grid in 1.6 minutes! An impressive improvement. I've been running it on a 30 X 30 grid (900 points) for ~23 minutes so far and see nothing yet. Not the ~12 minutes I had hoped for... Now 36 minutes on this loop for 900 points... hope it's not stuck. Not fast! Later - DONE!! Profiler says 59 minutes for 900 points but it was more like an hour and twenty minutes total. It succeeded, I have a single 'Closed Brep' from 900 extruded rings, baked to Rhino.
Another strategy to explore would be doing 'SUnion' on a smaller grid using the Anemone loop, then replicate it by moving it as needed to form a larger grid; then run the copies through another 'SUnion' loop. I went ahead and implemented that while waiting. It works and is fast! Started with 3 X 3 and ran the result again as 5 X 5 (9 X 25 = 225 total) in barely ~70 seconds!? Trying 36 X 36 now... 1,296 points appears to have succeeded in less than ten minutes! Though it seems to take quite awhile after the loop ends before control is restored to GH/Rhino. I'll let you do your own experiments and benchmarks.
I encapsulated the loop in a cluster called 'suLoop' (blue groups).
Internal of 'suLoop' cluster:
…
Added by Joseph Oster at 11:14pm on March 22, 2017
hat is. Anything attempted/made in this ^#$^$# world it's done because it can prove (with a dose of lies) that has some profit on sight (even Paris Hilton did some feasibility study for her involvement in ...er ... hmm... Moto2 racing (Yikes !!!!)).
2. Packing algos ? Mama mia > As you know these are the golden boys these days ... where blob design rains supreme > thus "cheapo" titanium "random" facade panels > ... > min wasted material > blah, blah. I seriously doubt that you can find anything ... er... realistic out there.
3. To encourage you: I have 4567 C# defs. Despite that it took me 2 months for the thingy required for that ungrateful girl (Mom/Dad said: why moaning so much? had you something better to do? [fair point if we forget the practice of mine]). Sister is back 2 *30 * 4 (min) * 300 E/hour (ultra friendly price) = enough to get a decent NCR Ducati.
All in all: Hercules comes in mind (or Sisyphus).…
ut it says "Did not succeed" and doesn't do any difference except adding plane division in the middle of the overall surface. Idea to Explode Brep and than delete unnecessary surfaces is the overkill.
2) Join all closed Breps together and use Solid Difference with the box, which totally covers the pipe, but there are still 30 pieces as output after Join Brep and this bring really weird result, see screenshot.
3) Trim basic pipe before Surface box or Divide Domain2 using Cull and Split but these operators still map boxes along untrimmed surfaces, as it was discussed on forum at least twice and is not helpful in my case.
I am almost sure that I searched whole forum for similar issues and could not find solution, however it is possible that I missed something. Hope You can give me some advice. Please, see attached files.
Cheers,
Dmytro.
…
instead of ballooning outwards, just puffing upwards.
THIS WILL WORK! Creating the mesh springs is only three seconds for 200X200 and the Unary Force is still milliseconds. Only Kangaroo takes an initiation time then cycles rapidly (0.5 seconds each) and it only takes a few cycles, maybe a dozen or two.
There is considerable 3D aliasing from the 2D mesh crudeness.
Now, to best Laurent's scheme, let's double down to 400X400. First I disable Kangaroo, and the timer. The preparation takes...FOREVER....and...ever...4.6 minutes to cull the points is all, a trivial step there is likely a better strategy for than finding the ones on the inside then using those to cull duplicates from the whole collection. The springs only took 12 seconds and the forces again milliseconds.
Kangaroo, to initialize takes...after hitting the reset button to start it...over 15 minutes and counting...well 400X400 is 160K vertices and Rhino tends to bog down at 30K points...but it was done in 30 minutes. Then I enable the timer and each cycle takes...uh...it's not in any error mode but nothing is happening past a very faint first automatic cycle that shows in the mesh...yet no CPU power is being used by Rhino...well...it's simply not running...ah, well, there's just a dummy delay of another 5 minutes and then the cycles take 2.7 seconds...what a stupid delay that was not using CPU power.
Now that it's cycling, can I change the stiffness in real time, usually I can...well, no, I seem to be back in the 5 minute delay, but not the 30 minutes interface-locking one...still waiting. Here is a 1/4 scale height model of the above output:
Time's up, life goes on. The aliasing and slow speed make it unworkable except for little logos or something. Some math and parallel processing are needed?
…
Added by Nik Willmore at 5:51pm on February 21, 2016
s because the geometry is too big for cuting in laser machine plotter, so I Want to separate this 5 segments, If you see the image 2.
I select the item number 3 that is in the midle and its all fine, but if u watch the image 3 when i select the Item 2 for example tooks segments for randomly :(.
Its like the curves are not in the same direction, i tried to flip them but no results, I tested the curve direction and it seems all ok. Look at this:
This is killing me T_T... any commentaries...…
rsi giornalieri (livello base) dedicati a 4 diversi topic Rhinoceros - 8 febbraio Grasshopper - 16 febbraio Rhino cam - 8 marzo Stampa 3D - 9 marzo
tutor: Amleto Picerno Ceraso, Francesca Viglione, Gianpiero Picerno Ceraso.
. Arduino for interaction (livello base-medio) 15, 16 marzo Il workshop parte dalle basi della programmazione di arduino fino ad arrivare all’interazione tra un oggetto fisico ed un imput informativo tutor: Gianpiero Picerno Ceraso
. Grasshopper advanced: “Complex surface” (livello medio) - 18, 19, 20 marzo Il workshop ha come obiettivo lo sviluppo di superfici complesse rispondenti ad informazioni provenienti dall’ambiente. Il corso parte dalle nozioni di Grasshopper fino ad arrivare alla possibile realizzazione di un oggetto tramite le tecniche di fabbrizazione digitale. tutor: Amleto Picerno Ceraso nb: è richiesta una conoscenza base di Grasshopper
. Emotional design (livello alto) 23, 24, 25 marzo Il workshop verterà sull’acquisizione, registrazione e manipolazione di tali dati/emozioni tramite Grasshopper e il loro utilizzo per controllare i parametri del design di specifici oggetti che diventeranno quindi, essendo customizzanti con le specifiche emozioni dell’utente, istanze e memoria tattile di precise esperienze. tutor: Andrea Graziano nb: è richiesta una conoscenza base di Grasshopper
. Fabricated fashion (livello alto) 26, 27, 28, 29, 30 marzo Il tema del workshop verte sulle tecniche di progettazione digitale applicate al fashion. tutor: Luis e Elizabeth Fraguada nb: è richiesta una conoscenza base di Grasshopper
. Blender (livello alto) - 16, 17, 18 maggio tutor: Andrea Graziano
. Interaction design: Arduino + Grasshopper (livello medio) - 2, 3, 4 maggio Il corso ha l’obiettivo di indagare processi di interazione tra le persone e gli ambienti in cui vivono attraverso il responsive design. nb: è richiesta una conoscenza base di Grasshopper e Arduino. tutor: Amleto Picerno Ceraso del Mediterranean FabLab e Antonio Grillo del FabLab Napoli.
info su costi: http://www.medaarch.com/2765-il-nuovo-calendario-attivita-firmato-medaarch/
…
grid size 3 = 2.7 mins
grid size 2 = ??? memory peaks and rhino freezes.
However now that I have switch the unit of the rhino file to feet,
now grid size 3 = 18 mins.
which makes i suppose since the analysis will have to work with smaller tolerance.
The below img is what i got after 18 mins. I think also the fact that I have joined the individual units with solid union also make it longer maybe? you can see the mesh triangulation not only around the corners of masses but also inbetween different units (if you look at the top level you will see)
oh, and I also have very little disk space left.
I would like to share the file but right its a big mess and has a lot of stuff that is unrelated to this particular memory issue, like revit interoperability and urban modelling. and the definition is set up so that it needs to have an excel file that feeds what you see on the lower left corner, wing mass scales. In order to compare design studies I am animating the index of list component that feeds the different scale of the wings and the width of the floor plates you see. you can see it in my video here. I will try to clean it up a bit when I get a chance, but it seems like grid size 3 might work as a starting point.
when I get around to extract values from the mesh vertices and actually apply different facade designs driven from the parameters, I would know better what grid size might be necessary.
…
ou would do the following:
dim int1 as new inteval(0,1)
I suggest that you "reparameterize" your surface in code which happens like this:
(assuming that "sur" is a surface you've brought in or already dim'ed)
sur.setdomain(0, int1)
sur.setdomain(1,int1)
then if you want to cut the surface up into whatever pieces you can use the domains like percentages so 0 to .2 would be from the start to 20% and .2 to .3 would be 20% to 30% and so on.
I am not quite sure what you want with the chopped up domain unless you are trying to split the surface in which case please see the ghx I attached.
you could run that trim in a for loop to get a bunch of parts and add those surfaces to a list. Let me know if this is not what you needed and I'll see what I can do to help.
…