Grasshopper

algorithmic modeling for Rhino


I am trying to contour a blob similar to... http://fancywires.com/?p=151 for laser cutting however I would like to create it myself and make adjustments in the offsetting etc.

I would like to contour a brep and make each contour a surface (only to make the next part work)

Then project each contour onto the plane either above OR bellow depending on whether it intersects with the adjacent surfaces.

Then offset the projected curve by specific distance.

Ideally it would be great to then incorporate LMNts contour definition (http://lmnts.lmnarchitects.com/featured/updated-contour-tool/) in order to reduce the amount of material used in the laser cutting.

Any help would be greatly appreciated.

Views: 3071

Attachments:

Replies to This Discussion

Hi Patrick,

Will you please explain a bit better what you are trying to achieve?

Why do you want to project the contours?

What is the rule for projecting above or bellow? (what does "intersect with adjacent surfaces" mean?)

Finally why do you want to offset them?

My only comment at this point is that GH has a built-in contour component, so you don't need to draw a line, divide, create planes and find plane-brep intersections.

Thanks so much for the reply!

The end result is to have a contoured lasercut object with an internal void.

In order to make this easier to construct I would like each contour to have the outline of the above/below contour. This will allow for etching and I'll know where to position the material when glueing.


Picture 3 contours...

Contour one. If the contour below is bigger, the outline of contour 1 is projected to the contour below.

Contour two. The outline is projected to the contour which is largest between 1 and 3.

Contour 3. The outline is projected to contour 2 as there is nothing below.

In order to achieve this I thought it best to convert contour lines to surfaces and use surface intersect. The problem with my definition is that it doesn't know when to stop. It just intersects every plane.

Patrick

ok, this proved to be way more complicated than I expected and that's mainly because some contours create 2 curves instead of one.

What I did: I found the largest contour and split the rest in two groups (those above it and those below it) with both groups containing the largest section as well (the largest section should be cut twice, one for the top part and another for the bottom).

I rotated the bottom group so that the largest contour is first.

then layed all the curves on a grid, and for each curve I also got the one above it and offseted inwards.

This definition seems to work with the solid you provided but is not suitable for any solid (yours is kind of symetric and has the largest section in the middle...)

hope this works for you

ps. If offset is giving you some strange results you can try the offset component from clipper plugin.

Attachments:

Thanks Nikos this works very well! And it seems to works well with asymmetrical shapes. I'll have a play around with it and post photos when I end up cutting.

PS

Hi, does anyone of you have this great definition from LMNS architects?

It was awesome script, but Ive lost it.
So, if we are able to reconstruct it, or find it, I would be happy.

Thanks. KP

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service