Здравствуйте, есть два отрезка на числовой прямой, движущихся по этой прямой с различной скоростью. Нужно написать функцию, которая вернула бы время когда эти отрезки столкнулись бы(если они вообще когда нибудь столкнутся). Для удобства я представил отрезки окружностями и вычислял время столкновения вот по этой формуле:

Код AS1/AS2:
( (s1+ v1*t)-(s2 + v2*t) )^2 = (r1+r1)^2
Где:
s - текущие координаты окружности,
v - скорость движения окружности,
t - время,
r - радиус.
Нужно найти такое значение
t когда расстояние между окружностями будет равно сумме их радиусов. "На бумаге" все работает как надо, но на практике... Первая проблема с которой столкнулся, это если скорость какого либо отрезка равна нулю, то уравнение не решается. Если на момент проверки отрезки уже пересекаются, то уравнение так же не имеет решений.
прошу помочь найти универсальный способ проверки.