Grasshopper

algorithmic modeling for Rhino

Hey guys,

 

I downloaded a vb script of packing circles, then extruded them into cylinders and played with the depth.. I want to unroll this and fabricate it with sheet material. But first, to roll a piece of paper into a cylinder, the edges have to overlap. How do I do this in grasshopper? Also, How do I find the intersection points of one cylinder to another? I've tried using intersect Brep|Brep but nothing comes out =(

 

 

 

Views: 1065

Attachments:

Replies to This Discussion

Hi,

 

try using delaunay edges with the circle centers as input. Go through the resulting connectivity diagram and wherever the length of the delaunay edge (the distance between the circle centerpoints) is equal to the sum of the respective circles' radii, you have a connection. Calculate the angle of each circle's connection points in relation it's center and multiply by it's radius to get the unrolled position of the connection points. You might want to subtract the position of each circle's first connection point from the rest, to make each unrolled cylinder start with a connection point.

There might be an easier way, taking advantage of Grasshopper's many tools, but this is how I would do it.

I don't know how you plan to unroll your cylinders, but if you draw them as rectangles with the same height as the cylinders and the same width as the cylinders' diameters, you just add a constant to the widths to get an overlap.

 

Good luck

/Ola Jaensson

The intersection point finding. No hidden inputs, just be sure to graft the input parameters where needed.

/Ola Jaensson

Frankly, with my shallow knowledge in grasshopper, I don't understand this definition. So I simply follow step by step referring to your attachment, but still can't get the intersection lines between neighboring cylinders..
Attachments:
Hi Ola, is it possible if you upload your ghx file of this definition? Perhaps I might have keyed in some mistakes.. Thanks!

Sure. I started doing a bit of the unrolling too, but it's very unfinished and uncommented. Maybe it can be of some help anyway.

 

/Ola Jaensson

Attachments:
I changed my design to hexagon grids instead of circles.. I'm able to find the intersection points only among two inputs, but not for the cells within the same row. Can anyone help me? thanks!
Attachments:


There has to be a more compact way to do this but I don't see it.  Basically what you have done is generated the intersections of adjacent rows.  What you now need additionally are the intersections of the adjacent columns.  That's what I've done here but not with any finesse.

Chris

Attachments:
Thank you Chris! when I unroll surface in rhino, can I control the position of splitting line? I'd like to have it in the middle between the intersection points.

It looks like you could take pairs of intersection points and then find the midpoint between them.

 

Chris

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service