Calculate point of impact of a ball on a curved surface

71 Views Asked by At

I'd think this would be a standard problem, but I've been searching for hours now and my math is too rusty to figure this out on my own.

Here's the scenario:

We have a ball, represented by a circle with the radius R1, center C1 and vector of trajectory V1.

The ball is inside a larger circle with the radius R2, center C2, and the circle is stationary.

Now, given a position C1a inside the larger circle and the position C1b = C1a + V1, I need to find a point P (if any exists) on the line C1a-C1b such that the shortest distance from P to circle 2 is exactly R1, which means the ball is just touching the outer circle.

For simplicity's sake let us assume that C1a-C1b crosses the outer circle once.

enter image description here

What I've got so far:

  • Point P must on the line C1a-C1b, which are, at the moment of calculation, given.
  • Point P2 (the touching point of the two circles) must be on the larger circle
  • P1-P2's length must be exactly R1
  • Point P2 must be on the smaller circle

For the life of me, I can't put that into a decent formula.

P.S. Apologies for the sketch, I lack access to a decent drawing tool at the moment.