Grasshopper

algorithmic modeling for Rhino

# Is there a bounce command in grasshopper ?

Hi there every one.
This is my first post and I can basically say I'm a newbie to grasshopper.
I am working on a project that uses the bounce command in rhino.
Basically, for those who don't know, it's a command that take a/some reflective(s) surface(s) and a vector, and gives you all the reflections of the vectors until it stops hitting the reflective surfaces.

Would there be any way to use this in grasshopper, so that when I modify the initial vector the whole resulting "bounce" is modified ?

Views: 3699

### Replies to This Discussion

All right I tried to make a definition that could reproduce the example above, but I'm stuck, I can only make the vector bounce off once on one reflective surface.
I really don't know how I could reproduce the example above.
Is there anyway to take the rhino "bounce" command and use it directly in grasshopper?

I've included what I've done so far
Attachments:
Hi Thomas,

I think a general solution for this problem must involve loops, so I suggest you move the discussion to the VB and C# Corner...

For a specific case of rectangular* boundaries though, you could do it without the need of scripting using a little mirroring trick:

1. Mirror the base rectangle various times
2. Intersect the straight red line with all instances
3. Map the intersection points to the base rectangle
(you'll have to figure out how to adress the corresponing segments)
4. Connect the dots

*in the 2d plane the same principle should apply also for regular triangles and regular hexagons

J
Thank you very much for your response.
I guess I need loop since I'm working with a 3 dimensional reflective surface.
I guess I'll go and see if there is a solution working with VB.
Problem is, I only did a little java a few years back and I forgot it all.

Still, if the code exist for rhino, it must be possible to transpose it in VB or C#
I'll be on my way then.
thomas, i am working on generating a similar definition [to illustrate light paths] and was wondering if you managed to get any where with this ... i have looked into multiple bounces between surfaces with 'overlapping' faces and have been running into problems connecting the necessary intersection points ... any help would be great !
I remember Jess Maertterer wrote a nice little optics plugin with reflection and refraction back in the days of Rhino 3.
http://www.rhino3.de/_develop/__v3_plugins/

It would be really nice to have something similar in grasshopper.
looks interesting / very useful ! i was actually thinking if kangaroo would be a sensible way of approaching such a problem, using particle bounces to duplicate the path trajectories ... but am not sure if this is too 'heavy' a way of solving something that could be generated with a series of intersections and mirrors ...?
Here is a def I wrote a while ago which uses the rayShooter class in a VB node. Thought it might be useful. It's a little crude, but its some place to start . . .

Attachments:
Peter, thank you very much for sharing. Its a very nice example.
thank you so much, It's a great definition. very useful
Nice!1
Wow, that's really great. Thank you for taking the time to make this and thank you for sharing this with us.

• View All