Grasshopper

algorithmic modeling for Rhino

Hello,

Im desperate for help!

I have been working on this algorithm for 3 days, and now I need to lazer cut or cnc a smaller scale of a portion of it, however the hexagons are oriented at random planes following the surface, I have been trying to unfold or unroll or orient the surface or hexagons but nothing is working!

I need help in unfolding or unrolling or reorienting the surface and hexagons? any way possible? even if for just a part of it?

I attached the Rhino and GH files

Thank you Loads!

Views: 860

Attachments:

Replies to This Discussion

OK, if it's a matter of life and/or death ... (your def had a VERY tricky "loop", mind)

1. Is this sampling of ...er ... things (pink is the surface) what are you trying to make and/or unfold? Note: extruding using a common vector it doesn't make any sense (replaced by a little C# that extrudes a BrepFace both sides (or not) at once ).

2. Do you have a fast CPU? (otherwise I'll add a "wire" preview mode)

well It took me a while to do what I did! Im trying to unfold/unroll/ or reorient at least a part of the hexagons into an xy plane to be able to lazer cut it,

I'm not sure if what i did in this pattern makes sense, but im required to use a hexagonal pattern, and this surface is part of my concept, so to put them together was very complex,

if it does not work to unfold the entire hexagonal surface it is okay, but can we unfold just a part of it?

note* is it possible to unfold the hexagonal surface before extrusion?

I do not have a fast CPU, Working on my student laptop

thank you soooooooooooo much for replying!!! 

In general anything is possible ...

... But ... you need the surface minus the hex not the hexagons. Stupid me (I did the other thing).

Q: why "thicken" the perforated surface? what's the meaning of it? [only if you had to make the thing via 3d printing, NOT laser].

Anyway see a WIP test unrolling the hexagons (since I got it wrongly):

BTW: I'm using entirely C# to control the unroll:

more soon

Such a simple case eh? (it's a mystery: things that appear 1 minute job ... er ... hmm).

BTW: Using few hexagons to make response real-time (thus the result is a bit ugly).

Bad news:

Obviously the poor old unroller  (in plain English: Unroller uR = new Unroller(b); .. blah, blah) fails with the thickened thingy (that was expected and obvious):

Ugly news:

The very same poor old ... etc etc ... fails (well "almost") to unroll the perforated (NOT "thickened") surface - but this is maybe due to tol issues (I'll investigate more on that).

I'll be back with more (stupid) ideas. I mean: getting the curves, forgetting the invalid brep and doing the obvious:

Curve[] unC; Point3d[] unP; TextDot[] unTD;
List<Brep> miserable = uR.PerformUnroll(out unC, out unP, out unTD).ToList();

But the 1M question still is: WHAT are you going to do with that unrolled thingy? By what means you can "shape" it "as" the initial/donor surface? Or you have guiding ribs around? Or some dose of Karma maybe?

best

Waw, ur helping big time truly!

I've been trying to work on it the entire day, and it's not working unfortunately, what you have done is a little bit too complex for me at this stage to understand! i have 1 more day to do it, 

What i need to do is take have at least 8 to 10 hexagons from this shape and lazer cut them to connect them and do a partial model oh how they connect (using hinges), so what i am trying to do now is planarize those hexagons or orient them on xy plane to be able to cut them to scale, i do not know if unroll or unfold are useful in my case

Thank you again! a lot!

Attachments:

OK, let's Rock and (Un)Roll from a zero basis on that one:

1. Get this tech preview (meaning: stupid + NOT the way to do it + stupid). Play with the other test cases as well.

2. I'm going to completely rewrite this by switching entirely to C# (meaning: no components at all). Obviously keeping the Unroller C# (+ some code more in case of invalid this, invalid that: that's very easy anyway) intact - but everything on the left would be replaced (+ an intelligent layout mechanism for the unrolled pieces, if pieces [maybe from another case, another time in another Planet] are required).

3. The new thing is actually already working 95%: it can even unroll 1 cat and 2 dogs, he he.

more soon.

Attachments:

Get this as well (that would be fuzed with the other def for a total control with regard what's happening with these @@%$@ hexagons).

Obviously adding the ability to work with ANY number of attractors ... blah, blah.

The bad news are that you wouldn't be able to modify anything (unless you speak C#) but the good news are ... well ... wait to see it working.

BTW: the picture that you've posted points to the right way to do it > get standard hexagons and "drill" them with stuff depending on the attractor(s) influence

Attachments:

BTW: portions from that would be transferred as well (any number of attractors - push/pull etc etc).

Attachments:

So, let's start from a "top" node (nesting in answers is highly problematic):

In theory there's 3 ways to address this properly:

1. Either achieving planarity on hexagons (Plan A: Daniel+K2, Plan B: Evolute Tools Pro, Plan C: C# using LibShapeOp stuff, Plan D: C# using Gegenbauer/Chebyshev "filtering"/"noise" correction). Unfortunately I have classified the latter as stuff for internal use only in my practice and ... well ... hmm ... it's not for sharing, I'm so sorry.

2. Or by offseting the hex curves on surface (dist according the attractor(s) influence) and then lofting this with that (offset not planar ... but "close" if the divisions and the topology are "suitable"). Unfortunately this is the slowest "method" known to man. Unacceptable by any means.

3. Or by modifying this C# with regard the planarity of the "inwards" loft profile (that's rather very easy):

But you have very limited time and something urgent occurred in my practice (as usual) + today is the Assen MotoGP and N46 is on pole! therefor I'm not sure that the whole combo could/would be ready on time for you.

Moral: next time > avoid doing/scheduling things ... er ... hmm ... the Greek way [i.e.: the very last moment at 23.59 that is, he he]). This method is known in Greece as "bakaliko" (don't ask what this means).

Update:

Top news: Valentino won after an epic duel with Marc (and an epic last chicane "moment").

Good news: This is what you want.

Bad news:

(a) Attractor(s),

(b) remaining pieces (i.e. not the full hexagon stuff) AND

(c) closed surface(s) cases ...

... NOT (yet) addressed with this V1 (no time available > cut and paste used from other C#  > written almost "at once" > no extensive tests performed).

Attachments:

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service