Plücker coordinates
From Mathematics wiki
Contents |
Introduction
Plücker coordinates are a way of representing directed rays as points in a 5 dimensional space called Plücker space. Rays in 3D are normally represented by one point that is on the ray, and a direction vector that indicates the direction of the ray. However these six coordinates contain a redundancy if we aren't interested in line segments.
Note: We will be using a right-handed coordinate system throughout this article.
Defining a Line in 3-Space
All we need to define a line in
are a point
and a direction
.
Any point
on the line is then a linear combination of
and
with a parameter t. We simply refer to this locus of points as the line
through a point
and with a direction
parametrically as
for some parameter t.
Relative Orientation
We can define a direction around a line. We will follow the convention that when looking along a line in the direction of the line, other lines are either oriented clockwise (CW), counterclockwise (CCW), or intersect or are parallel to the line being viewed. In the following example lines 2 and 3 are moving clockwise around line 1.
Let us now define a field around our line. For the sake of simplicity we shall locate the origin such that it passes through
. Information about the line is not lost however if we simply keep track of the point
that locates it. The vector value of
at a point
is given by
.
Now we have a powerful way of finding information about the orientation of lines relative to
. Consider a line
through point
in direction
. If we are looking down along the direction of
, and
is in the same direction as
, this line would appear to be pointing in a clockwise direction. On the other hand, if
is in the opposite direction as
, this line would appear to be pointing in a counterclockwise direction.
We can express these cases in terms of the dot product of
and
. Here receding lines are depicted as
and approaching lines as
(as darts might appear receding from and approaching you respectively).
| Case 1: passes clockwise
|
| Case 2: passes counterclockwise
|
| Case 3: is parallel to
|
| Case 3: is antiparallel to
|
Note: There is some ambiguity in the case of
. It can happen that
and
are parallel or antiparallel (they form angles of 0° or 180° respectively) or it might be the case that
passes through the origin making
zero. In either case, the lines are neither parallel nor antiparallel.
We ought now to generalize these cases given that
does not necessarily pass through the origin. Looking back we have two lines
and
.
The vector value of
at the point
is now given by
,
which is equivalent to
.
The orientation we are interested in we can call
, and express it as follows:
.
This expression on its own is sufficient for allowing us to express the relative orientations of lines in
and is very important in its own right. Note that
and
characterize the line
, i.e., give us information about the direction and orientation of the line relative to other lines. Enter plücker coordinates!
Plücker Space
Now that we have determined what is specific to a line, we can convert to a system in which we can readily express the orientations of lines in terms of
and
. This system is called 6D Plücker Space. A directed line in 3D becomes a 6D coordinate in Plücker Space. It is conventional however to refer to it as a homogenous coordinate in 6D in that all lines through the point
with direction being some multiple of
are equivalent. (A homogeneous coordinate in 6D becomes a non-homogeneous point in 5D). We can now define the Plücker coordinate
that corresponds to the line through the point
and with the direction
as:
We can also get the Plücker coordinate for a line from point
to
by noting that
. Then,
,
which is equivalent to:
,
because of the properties of the cross product.
The Permuted Inner Product
Let us return to the situation of the two lines
and
. Call their Plücker representations :
and
respectively.
We gave the orientation
of
with respect to
as
.
An important identity of vector products is that
which allows us to write
.
It would be sensible to look for symmetry in this expression, and indeed we find that since
, we can write
.
With this in hand we can do away this the negative sign altogether by defining a new product
:
.
This is the permuted inner product of two Plücker coordinates. If we rewrite
as
, then the product of two coordinates representing lines
and
, that is,
and
is given by
.
We can now summarize the relative orientations of lines in terms of
, recalling that
:
| and pass eachother counterclockwise
|
| and pass eachother clockwise
|
| and and/or are either parallel or antiparallel to one another.
|
What is specific to a line?
Again, take a look at the orientation
,
.
Notice that
is independent of the line
. It is specific to the line
. The direction of
, that is,
, is also specific to
. Since we chose the point rather arbitrarily as being any point on the line
, we don't regard it as being specific to
. Enter Plücker coordinates!
Plücker Space
Now that we have determined what is specific to a line, we can convert to a system in which we can readily express the orientations of lines in terms of
and
. This system is called 6D Plücker Space. A directed line in 3D becomes a 6D coordinate in Plücker Space. It is conventional however to refer to it as a homogenous coordinate in 6D in that all lines through the point
with direction being some multiple of
are equivalent. (A homogeneous coordinate in 6D becomes a non-homogeneous point in 5D). We can now define the Plücker coordinate
that corresponds to the line through the point
and with the direction
as:
.
We can also get the Plücker coordinate for a line from point
to
by noting that
. Then,
,
which is equivalent to:
.
The Permuted Inner Product
Let us return to the situation of the two lines
and
. Call their Plücker representations
and
respectively.
We gave the orientation
of
with respect to
as
.
An important identity of vector products is that
which allows us to write
.
With this in hand we can do away this the negative sign altogether by defining a new product
:
.
This is the permuted inner product of two Plücker coordinates. If we rewrite
as
, then the product of two coordinates representing lines
and
, that is,
and
is given by
.
We can now summarize the relative orientations of lines in terms of
, recalling that it is the negative of
.
-
and
pass each other counterclockwise,
-
and
pass each other clockwise,
-
and
intersect and/or are parallel or antiparallel to one another.
References
This article was adapted, with permission, from Plücker Coordinates for the Rest of Us, © 2001, Lionel Brits.
- Hodge, W. V. D.; D. Pedoe [1947] (1994). Methods of Algebraic Geometry, Volume I (Book II). Cambridge University Press. ISBN 978-0-521-46900-5.
- Behnke, H.; F. Bachmann, K. Fladt, H. Kunle (eds.) (1984). Fundamentals of Mathematics, Volume II: Geometry, trans. S. H. Gould, MIT Press. ISBN 978-0-262-52094-2.
From the German: Grundzüge der Mathematik, Band II: Geometrie. Vandenhoeck & Ruprecht. - Stolfi, Jorge (1991). Oriented Projective Geometry. Academic Press. ISBN 978-0-12-672025-9.
From original Stanford Ph.D. dissertation, Primitives for Computational Geometry, available as DEC SRC Research Report 36. - Shoemake, Ken (1998). "Plücker Coordinate Tutorial". Ray Tracing News 11 (1).
- Mason, Matthew T.; J. Kenneth Salisbury (1985). Robot Hands and the Mechanics of Manipulation. MIT Press. ISBN 978-0-262-13205-3.
- Hohmeyer, M.; S. Teller (1999). "Determining the Lines Through Four Lines" (PDF). Journal of Graphics Tools 4 (3): 11–22. Template:ISSN.
- http://graphics.lcs.mit.edu/~seth/pubs/TellerHohmeyerJGT2000.pdf from *http://graphics.lcs.mit.edu/~seth/pubs/pubs.html
- http://www.flipcode.com/dp/issue02.shtml
- http://www.acm.org/tog/resources/RTNews/html/rtnv10n3.html#art11
- http://www.flipcode.com/tutorials/tut_pluecker.shtml
- http://www.acm.org/tog/resources/RTNews/html/rtnv11n1.html#art3]











