Grasshopper

algorithmic modeling for Rhino

Sorry guys

 

I want to write a grasshopper definition where I can just draw circle and a random two points outside of circle to find a point on a circle that will give bisected angles in the image...

 

I'm not good at grasshopper :( Is this possible in grasshopper? can someone guide me through how to do this?

 

Thank you very much!

Views: 2029

Attachments:

Replies to This Discussion

Ok, I think this might work for a geometrical construciton:

 

1) Notice that if the give circle were a line, the following construction would give the right point:

But it's not....so we need inversive geometry.

 

2) Construct a reference circle anywhere on the circumference of the original circle and invert it, along with the given points A and B.

 

 

3) Perform step 1 on the line L

 

4) The resulting point C', when inverted back should be the point needed....because although inversion distorts angles, it does preserve the cross ratio (see this theorem).

 

 

 

 

 

 

 

I haven't constructed it yet, so I hope it works! I'll post a definition soon....

 

It seems that I was wrong....this construction doesn't work.

 

Apparently the problem is well known: http://mathworld.wolfram.com/AlhazensBilliardProblem.html

 

One solution is to find the ellipse with foci at the given points A and B that is tangent to the given circle. Since every ray passing through a foci of an ellipse will pass through the other foci after one bounce off the ellipse, the point of incidence will be the required point.

Hi Daniel, did you manage to constuct this ellipse? I tried but couldn't find out how to get it to touch the circle...
Still I was very happy to hear you had found about the Alhazen problem. This was driving me nuts, so thank you!

It is unfortunately not a ruler and compass construction...you need to plot a hyperbola defined by the relationship between the ellipse and the circle (I used this paper). One of the intersection points of that hyperbola and the given circle will be the right point. Still, it's not so easy to do in GH....I got it to work for a few cases, but not in general. I still feel like I'm missing something.

 

Very tricky problem! I wonder what it is being used for?

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service