Plucker Coordinates

Plucker Coodinates provide a convenient representation for directed lines in affine 3-Dimensional space, R3[1,2]. This section reviews relevant notation for, and some useful properties of, Plucker coordinates.

Each ordered pair of distinct points p = (px, py,  pz) and q = (qx, qy, qz) defines a directed line in 3-Dimensions. This line corresponds to the following set of six coefficients called the Plucker coordinates of the line:

L = (L[0], L[1], L[2], L[3], L[4], L[5])

Each Plucker coordinate is the determinant of a 2x2 minor of the matrix:

px    py    pz    1

qx    qy    qz    1

We adopt the following convention relating these minors and the Plucker coordinates L[i]:

L[0] =  px  qy -    qx  py
L[1] =  px  qz -    qx  pz
L[2] =     px    -    qx
L[3] =  py  qz -    qy  pz
L[4] =     pz    -    qz
L[5] =     qy    -    py

Side Operator:
If a and b are two directed lines, and a[i] and b[i] their corresponding Plucker mappings, a relation side(a,b) can be defined as the permuted inner product

side(a,b) = a[0]*b[4] + a[1]*b[5] + a[2]*b[3] + a[3]*b[2] + a[4]*b[0] + a[5]*b[1]

which is zero whenever a and b intersect or are parallel, and non-zero otherwise.

However, although every directed line in R3 maps to a point in the Plucker coordinates, not every six-tuple X of P5 corresponds to a real line. Only the points satisfying the quadratic relation:

side(X,X) = 0 and X[2], X[4] and X[5] not all equal to zero

correspond to real lines in R3. If

side(X,X) = 0 and X[2] = X[4] = X[5] = 0

then it corresponds to a line at infinity. The remaining points do not correspond to lines in P3.

The plucker coordinates are determined only to within a scale factor. That is if points p, q and r lie on a line L, plucker(p,q) and plucker(p,r) are identical up to a scale, that is there is some constant c (not zero) such that plucker(p,q) = c*plucker(p.r). Note that this property is made use of in converting back from the plucker coordinates to the 3-Dimensions.

References:
[1] Jorge Stolfi. Primitives for computational geometry. Technical Report 36, DEC SRC, 1989
[2] Seth Teller & Michael Hohmeyer, Determining the Lines Through Four Lines, Journal of Graphic Tools.