# Efficiently deciding if any of a set of cylinders in 3-space intersect

Let's say I have a set $C$ of $N$ cylinders in 3-space, $(c_1, ..., c_N) \in C$, where each cylinder, $c_i$, has an associated radius $r_i$ and two coordinates specifying the endpoints of the line segment representing its axis of symmetry, $(x_{i,1},y_{i,1},z_{i,1})$ & $(x_{i,2},y_{i,2},z_{i,2})$.

How can I quickly decide if the union volume of the cylinders is equal to the sum of the volumes of the individual cylinders? In other words, how can I quickly verify or disprove the existence of an intersection between any two cylinders? I'd like to stress that I mean this as a decision problem - I'm not necessarily asking for an explicit union volume calculation or a manner of finding points of intersection.

-