Collinearity of triangle vertices on circular paths

Suppose as a function of time, the vertices of a triangle move with constant speed along circular trajectories: $$\vec p_i(t) = a_i \left( \begin{array}{c} \cos(b_i t+ c_i)\\ \sin(b_i t+ c_i) \end{array} \right) +\vec d_i,$$ where $i\in\{1,2,3\}$. All motion is in the plane, that is, $\vec p_i(t)\in\mathbb{R}^2$. Every vertex has its own speed/arc.

I need the smallest $t^\ast\geq0$ for which $p_1(t^\ast)$, $p_2(t^\ast)$, and $p_3(t^\ast)$ become collinear, if such a $t^\ast$ exists. Is this computable in closed form? If not, is there a lightweight algorithm (or convex optimization problem) that would recover $t^\ast$?

So far, all I can think of doing is defining the circles implicitly and writing down a condition for finding a line through all three circles. But, this does not involve $t$ and already is not a nice formula.

• (this problem would be similar to computing when planets align, but the motion is around three different centers) – Justin Solomon Jun 21 '16 at 18:26
• Additionally it's ok to assume the $b_i$'s don't have common integer factors. So, for example, maybe it's the case that any pair of points on the first two circles is eventually achieved? – Justin Solomon Jun 21 '16 at 19:04
• What is $\vec x_i$? – N74 Jun 21 '16 at 19:09
• Oops! I think there's an easier way to write this --- give me 5 min to correct... – Justin Solomon Jun 21 '16 at 19:11
• Fixed! Sorry about that, had rotation matrices on the brain. – Justin Solomon Jun 21 '16 at 19:13