Collision detection of 3D complex objects is often needed for practical applications. In this paper, a new algorithm for testing collision is proposed. The algorithm combines the sweeping technique and a parametric surface modeling method. A collision detection process is carried out firstly in continuous time using sweeping, in order to determine a time interval for collision as early as possible. In the second step the collision detection is performed at discrete time in this time interval, so that exact collision positions and times are found.