Как определить столкновение цилиндров?

Есть несколько изгибающихся цилиндров, как найти точки их столкновения? В лучшем случае нужны точки явного пересечения, касания и точки когда цилиндры очень близко друг к другу.

У каждого цилиндра я знаю точки на его стержне и их нормали.