имеются 2 шара (тобиш окружности) которые соприкасаются в одной точке, известны координаты их центров - X1 Y1 и X2 Y2 и радиусы R1 R2, как найти координаты точки их спорикосновения?
Вот что я придумал:

Код:
// Расстояния между кругами по Х и У
var dx = (x1 - x2);
var dy = (y1 - y2);
// Угол
var alpha = Math.atan2(dy, dx);
var cosalpha = Math.cos(alpha);
var sinalpha = Math.sin(alpha);
//собственно координаты точки соприкосновения
x3 = x2 + cosalpha * R2
y3 = y2 + sinalpha * R2
Работает не во всех положениях шаров относительно друг друга.
Чего тут нехватает?