Plücker Coordinates and Extended Cross Product for Robust and Fast Intersection Computation
Václav Skala · 2016
Many geometrically oriented problems lead to intersection computation or to its dual problems. In many cases the problem is reduced to intersection computation of two planes in E3, e.g. intersection of two triangles. However in several cases triangles are given by vertices in the homogeneous coordinates. The usual approach is to convert coordinates to the Euclidean space and make intersection computation in the Euclidean space. This leads to extensive use of division operations and to decreased precision of computation. Another approach is an application of Plücker coordinates which are not commonly recognized in computer graphics or direct computing in the projective space. In this paper we present a relation between the extended cross product and the Plücker coordinates. The extended cross product is especially convenient for GPU application. Also a new formulation for the extended cross product using matrix notation in n-dimensional space is introduced. The presented approach leads to simple, robust and fast intersection computation of two planes on GPU. Also the advantage of the projective representation for geometrical problems solution is presented as it actually offers "doubled" mantissa length naturally and saves division operations.