Você está na página 1de 14

An introduction to line geometry with applications

Helmut Pottmann
a,
*
, Martin Peternell
a
, Bahram Ravani
b
a
Institut fur Geometrie, Technische Universitat Wien, Wiedner Hauptstrasse 8-10, A-1040 Wien, Austria
b
Department of Mechanical and Aeronautical Engineering, University of California, Davis, CA 95616, USA
Received 1 May 1998; received in revised form 16 July 1998; accepted 2 August 1998
Abstract
The article presents a brief tutorial on classical line geometry and investigates new aspects of line geometry which arise in connection with
a computational treatment. These mainly concern approximation and interpolation problems in the set of lines or line segments in Euclidean
three-space. In particular, we study the approximation of data lines by, in a certain sense, linear families of lines. These sets are, for instance
linear complexes and linear congruences. An application is the reconstruction of helical surfaces or surfaces of revolution from scattered data
points. This is based on the fact that the normals of these surfaces lie in linear complexes; in particular, normals of surfaces of revolution
intersect the axis of revolution.
Approximation with linear complexes or congruences is also useful in detecting singular positions of serial or parallel robots. These are
positions where the robot should be a rigid system but possesses an undesirable and unexpected instantaneous self motion. 1999 Elsevier
Science Ltd. All rights reserved.
Keywords: Geometry; Straight lines; Revolutes; Surface reconstruction
1. Introduction and motivation
Line geometry investigates the set of lines in three-space.
The ambient space can be a real projective, afne, Euclidean
or a non-Euclidean space. There is a vast literature on this
branch of classical geometry including several monographs
[4,5,7,16,22,23]. Line geometry possesses a close relation to
spatial kinematics [2,9,11,22] and has therefore found
applications in mechanism design and robot kinematics.
Despite recent applications in robotics, a careful study of
line geometry from the computational point of view has not
been undertaken so far.
Let us look at an example to motivate the development of
computational line geometry: A parallel manipulator has a
singular position if the axes of its hydraulic cylindrical legs
lie in a linear complex, a special three-parameter set of lines.
In practice, several sources for errors (manufacturing, mate-
rial properties, computing, etc.) can hardly be avoided.
Thus, the question is whether the lines on the objects near
their realization are close within some tolerance to
the lines of a linear complex. This is an approximation or
regression problem in line space.
In this article, we will study the central results of classical
line geometry and present new results on computational line
geometry. The general concepts of specic applications in
areas such as robot kinematics and surface reconstruction
will be illustrated. We also prepare a computational study of
ruled surfaces, which appears in a separate article of the
same issue [17].
2. Line geometry and Plu cker coordinates
Let us introduce our notation and get started with some
essential fundamentals. First, we work in real Euclidean
space E
3
. We use a Cartesian coordinate system and the
points are represented by their coordinate vectors x. A
straight line L can be determined by a point p L and a
normalized direction vector l of L, i.e. l = 1. To obtain
coordinates for L, one forms the moment vector

l Up l; (1)
with respect to the origin. If p is substituted by any point q =
p ll on L, Eq. (1) implies that

l is independent of p on L.
The six coordinates (l;

l) with
l = (l
1
; l
2
; l
3
); and

l = (l
4
; l
5
; l
6
)
are called the normalized Plucker coordinates of L. The set
of lines in E
3
is a four-dimensional manifold and accord-
ingly the six Plucker coordinates satisfy two relations. One is
the normalization and the other is, by Eq. (1), the so-called
Computer-Aided Design 31 (1999) 316
COMPUTER-AIDED
DESIGN
0010-4485/99/$ - see front matter 1999 Elsevier Science Ltd. All rights reserved.
PII: S0010-4485(98)00076-1
* Corresponding author. Tel.: 431-58-801-11310; fax: 431-58-801-
11399.
E-mail address: pottmann@geometrie.tuwien.ac.at (H. Pottmann)
Plucker relation
l

l = 0; (2)
which expresses the orthogonality of l and

l.
Conversely, any six-tuple (l;

l) with l = 1, which satis-
es the Plucker relation l

l = 0 represents a line in E
3
. As we
are not concerned about the orientation, (l;

l) and (l;

l)
describe the same line L (Fig. 1).
For some applications, it is convenient to study lines in
real projective space P
3
, which can be considered as a
projective extension of E
3
. This is the closure of E
3
by all
points at innity (intersections of parallel lines; for a simple
introduction to concepts from projective geometry we refer
the reader to Boehm and Prautzsch [1]). We use homoge-
neous Cartesian coordinate vectors (x
0
,, x
3
) = x. These
coordinates are only determined up to a common scalar
multiple, which means that
x and xr; r R\{0};
dene the same point which shall be denoted by xR. A point
at innity is characterized by x
0
= 0 and the points which are
not at innity possess the corresponding inhomogeneous
Cartesian coordinates (x
1
/x
0
, x
2
/x
0
, x
3
/x
0
). It is convenient
to collect the projective homogeneous coordinates x in the
following way
x = (x
0
; x) with x
0
R; x R
3
:
Let a plane in P
3
be given by a linear homogeneous
equation
u
0
x
0
u
1
x
2
u
2
x
2
u
3
x
3
= 0: (3)
The vector u = (u
0
, u
1
, u
2
, u
3
) is called the homogeneous
plane coordinate vector of that plane. As the coordinates u
i
are also determined up to a common scalar multiple, we
denote the plane by Ru. The left and right scalar multiples
in plane and point coordinates are just a convention to
distinguish them. Analogously, one uses the notation u =
(u
0
, u) with u
0
R and u R
3
. All the points at innity
form the plane at innity (ideal plane) x
0
= 0, which, in our
notation represented by the vector (1, o). Any other plane
possesses u as a normal vector.
The points and planes are now represented in exactly the
same way. Moreover, Eq. (3) can be seen as the incidence
relation between point (x
0
, x)R and plane R(u
0
, u) and is
symmetric. This is the basis of the principle of duality in
projective geometry, which will be discussed later. Basi-
cally, this suggests that exchanging the meaning of points
and planes and keeping the lines and incidences in a result
yields a correct dual result.
To represent lines in P
3
, one has to give up the normal-
ization of Plucker coordinates, as a line L at innity (inter-
section of parallel planes) does not possess a direction
vector.
To include all the cases, one spans a line L by two points
xR, yR, possibly at innity. Then, the homogeneous Plucker
coordinates are found as
L = x y U (x
0
y y
0
x; x y) = (l;

l) = (l
1
; l
2
; l
3
; l
4
; l
5
; l
6
)
R
6
:
(4)
As the homogenized form of the previously discussed
case of normalized Plucker coordinates, these coordinates
again satisfy the Plucker relation l

l = 0. Lines L at innity
are characterized by l = o. Note that a line L at innity is
determined by parallel planes through it. A normal vector of
these planes is

l. If L is not at innity, it can be spanned by a
point in E
3
with coordinates x = (1, x) and a point at innity
y = (0, y). Inserting this in Eq. (4), we see that l = y is a (not
necessarily normalized) direction vector of L and

l = x l
is the moment vector of the force l on L about the origin.
The interpretation of a line L as being a connection of two
points xR, yR can be dualized to the interpretation of a line
L as intersection of two planes Ru = R(u
0
, u) and Rv =
R(v
0
, v). Then the homogeneous Plucker coordinates of the
intersection line are
L = (l;

l) = (u v; u
0
v v
0
u):
If L = Ru
T
Rv is not at innity, u v is a direction
vector of L.
The rule of duality says that exchanging the meaning of
point and plane coordinates in a formula and exchanging
vectors l and

l in the Plucker coordinates, gives a correct
dual formula.
Example 1. One can prove that the intersection points s
i
R
of a line L with the coordinate planes x
i
= 0 are
s
0
= (0; l
1
; l
2
; l
3
); s
1
= (l
1
; 0; l
6
; l
5
);
s
2
= (l
2
; l
6
; 0; l
4
); s
3
= (l
3
; l
5
; l
4
; 0):
To verify this, we compute the Plucker coordinates from
any pair of points s
i
, s
j
using Eq. (4) and, possibly making
use of homogeneity and the Plucker relation, we nd in all
cases (l
1
,,l
6
). Two of the four points s
i
are certainly differ-
ent. If a line L lies in a plane Ru =R(u
0
, u), all points s
i
Rlie
in that plane. These four linear equations, of which only two
are necessary, can be summed to
lu = 0; u
0
l u

l = o; (5)
which is the incidence condition of a line L and a plane Ru.
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 4
Fig. 1. Direction and moment vector of a line.
Similar to this, one gets the incidence condition of a line L
and a point xR by

lx = 0; x
0

l x l = o: (6)
Example 2. The intersection point pR = (p
0
, p)R of a line
L and a plane Ru = R(u
0
, u) can be calculated as follows:
Let s
i
, s
j
be two distinct points and ls
i
ms
j
be a para-
meterization of L in homogeneous parameters. The intersec-
tion point satises l(s
i
u) m(s
j
u) = 0, which leads to the
homogeneous parameters (l : m) = ( s
j
u : s
i
u). Inserting
this, some algebra leads to the formula of the intersection
point
( p
0
; p) = (ul; u
0
l u

l): (7)
Similar to this the connecting plane R(u
0
, u) of a point xR
and a line L is given by
(u
0
; u) = (x

l; x
0

l x l): (8)
Let s
i
, s
j
and t
i
, t
j
be two distinct pairs of points in coor-
dinate planes on lines G = (g; g)R and H = (h;

h)R, respec-
tively. The two lines G and H intersect, if the four
mentioned points lie in a common plane. This can be
expressed by
det(s
i
; s
j
; t
i
; t
j
) = 0:
Inserting the Plucker coordinates G and H, it follows that
the lines G and H intersect if
0 = g
1
h
4
g
2
h
5
g
3
h
6
g
4
h
1
g
5
h
2
g
6
h
3
= g

h gh:
(9)
Sometimes, we denote the bilinear form g

h gh in this
intersection condition by V(G, H).
We derive a formula for the intersection point sR =
(s
0
, s)R of intersecting lines G and H with Plucker coordi-
nates (g; g) and (h;

h). Using the incidence condition Eq. (6),
we obtain
gs = 0; s
0
g s g = o;

hs = 0; s
0

h s h = o:
Assuming that g;

h are linearly independent, the two left
hand side equations require s = l g

h; l 0. Further, one
calculates s
0
and nally we obtain
(s
0
; s) = (g

h; g

h) = ( gh; g

h): (10)
We get two formulas as V(G, H) = 0 holds good. But,
note that the linear independence of g and

h is the crucial
point in this formula. It does not work in general if one line,
say G passes through the origin ( g = o). In this case a direct
computation leads to
(s
0
; s) = ((g h)(g h); det(g; h;

h)g):
Also, Eq. (10) does not work for parallel lines (g = lh),
but in this case the intersection point is known as sR =
(0, g)R.
2.1. The Klein mapping
The homogeneous Plucker coordinates dene a mapping
from lines L in P
3
to ordered, homogeneous six-tuples
L = (l;

l) R
6
\{0}:
These six-tuples may be interpreted as points in ve-
dimensional real projective space P
5
. We write LR to indi-
cate homogeneity and also denote points in P
5
in this way.
This means that we obtain a mapping from the set of lines in
P
3
to points in P
5
, which is called Klein mapping. Not all
points in P
5
are Klein images of lines. By the Plucker rela-
tion Eq. (2), those points in P
5
are images of lines in P
3
under the Klein mapping g, which lie on the Klein quadric
M
4
2
l
1
l
4
l
2
l
5
l
3
l
6
= 0: (11)
The quadratic form l

l = l
1
l
4

l
3
l
6
will also be
written as V(L).
The Klein mapping g has the following important proper-
ties. The lines of a pencil are mapped to the points of a line.
This can be seen in the following way. Let a pencil of lines
be spanned by two intersecting lines L
1
, L
2
with intersection
point xR. Their Plucker coordinates will be L
1
, L
2
and let
y
1
R, y
2
R be a point on L
1
and L
2
, respectively. An arbitrary
line L of this pencil can be spanned by the vertex xR and a
point yR on the line through y
1
R, y
2
R. Such a point has a
coordinate vector y = l
1
y
1
l
2
y
2
. Hence, the Plucker
coordinates of L are
L = x (l
1
y
1
l
2
y
2
) = l
1
(x y
1
) l
2
(x y
2
)
= l
1
L
1
l
2
L
2
:
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 5
Fig. 2. Subspaces on the Klein quadric.
This implies that the Klein image LR lies on a line
spanned by L
1
R and L
2
R on M
4
2
, see Fig. 2.
Further, the lines of a bundle are mapped to points of a
plane, entirely contained in M
4
2
. A bundle consists of all
lines through a xed point, say xR. Let L
1
, L
2
, L
3
be three
lines in the bundle. Their Plucker coordinates will be L
1
, L
2
,
L
3
and let y
1
R, y
2
R, y
3
Rbe a point on each line. An arbitrary
line L of this bundle can be spanned by the vertex xR and a
point yR in the plane spanned by y
1
R, y
2
R and y
3
R, i.e., y =
l
1
y
1
l
2
y
2
l
3
y
3
. The Plucker coordinates of L are
therefore
L = x (l
1
y
1
l
2
y
2
l
3
y
3
) = l
1
(x y
1
) l
2
(x y
2
)
l
3
(x y
3
)
= l
1
L
1
l
2
L
2
l
3
L
3
:
This implies that the Klein image points LRto the lines in
a bundle form a plane. Of course, this plane is contained in
the Klein quadric.
Using similar arguments, we see that the lines lying in a
xed plane are also mapped to points of a plane, entirely
contained in M
4
2
. Thus, the Klein quadric M
4
2
carries exactly
two three-parameter families of 2-dimensional planes,
which are the g-images of line bundles and line elds
(lines in a xed plane), respectively.
Two planes on M
4
2
belong to the same family, if they have
a point in common. This point is the Klein image of the
connecting line of two bundles or the Klein image of the
intersection line of two elds.
Otherwise two planes on M
4
2
intersect in a line or are
skew, depending on whether the vertex of the bundle is
contained in the plane of the eld of lines or not.
A regular quadric in P
5
cannot contain three-dimensional
subspaces and thus M
4
2
carries maximal dimensional
subspaces.
Example 3. All lines in P
3
passing through the origin
satisfy

l = o (see Eq. (1)). This means that their g-images
are contained in the plane l
4
= l
5
= l
6
= 0, which lies entirely
on M
4
2
.
Example 4. Let us consider lines in P
3
lying in the plane
at innity x
0
=0. FromEq. (4), it follows that they satisfy l =
o. This means that their g-images lie in the plane l
1
= l
2
=
l
3
= 0, entirely contained in M
4
2
.
3. Special sets of lines
We give a short overview of special sets of lines in
Euclidean or projective three-space. Especially problems
in constraint solving [6] lead us to interesting examples.
Detailed studies follow later in connection with space
kinematics.
3.1. One-parameter families of lines
We have already got to know pencils of lines which are
the simplest one-parameter sets of lines. Their Klein images
are lines on M
4
2
. One-parameter families of lines form ruled
surfaces. Their Klein images are curves on M
4
2
and will be
discussed in detail in a separate contribution [17]. Here, we
will give just some basic examples to get a better under-
standing of the Klein mapping.
Let a conic c in P
5
be the intersection of a 2-plane 1 with
M
4
2
. We note that 1 is not contained in M
4
2
. It can be shown
that the points of c are Klein images of lines on a ruled
quadric F in P
3
, precisely, one family of generator lines
of F.
Example 5. Let a ruled quadric F be given by the equa-
tion x
2
0
x
2
1
x
2
2
x
2
3
= 0. The Plucker coordinates of
one family of generator lines are
G(t) = (sint; cost; 1; sint; cost; 1); t [0; 2p):
Any two lines G(t
1
); G(t
2
); t
1
t
2
are skew. The plane 1
containing the Klein images of these lines is
1 : x
1
= x
4
; x
2
= x
5
; x
3
= x
6
:
By the way, F carries a second family of generator lines
H(s) = (sins; coss; 1; sins; coss; 1); s [0; 2p]);
and, by Eq. (9), each line G(t) intersects each line H(s). The
Klein images H(s)R lie in a plane f which is skew to 1.
If the conic c lies in a plane 1, entirely contained in M
4
2
,
its points are Klein images of generator lines of a quadratic
cone or tangent lines of a conic in P
3
, depending on whether
1 is Klein image of a bundle or a eld of lines.
Example 6. Let a quadratic cone be given by the equation
x
2
1
x
2
2
x
2
3
= 0. The Plucker coordinates of the generator
lines are
L(t) = (cost; sint; 1; 0; 0; 0); t [0; 2p):
This denes the homogeneous parameter representation
of a conic in M
4
2
which lies in the plane x
4
= x
5
= x
6
= 0. As
another example,
L(t) = (0; 0; 0; cost; sint; 1); t [0; 2p)
parameterizes the tangent lines of the conic
x
0
= 0; x
2
1
x
2
2
x
2
3
= 0, lying in the plane at innity.
Note that these are the lines of all planes at innity which
form the constant angle p/4 with the z-axis. Again we see
that the Klein image of this line set is a conic.
3.2. Two-parameter families of lines
The simplest two-parameter families are bundles and
elds of lines and their Klein images are planes, entirely
contained in M
4
2
. Further, the normals of a surface in
three-space form a two-parameter family of lines, called
normal congruence. General two-parameter families are
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 6
called line congruences and their Klein images are two-
dimensional manifolds on M
4
2
. Later, when we study more
projective line geometry, we will have more examples. For
instance, the intersections of M
4
2
with three-spaces, are
Klein images of important families of lines (linear
congruences).
3.3. Three-parameter families of lines
Three-parameter families of lines are much harder to
imagine and we give two examples which come from
constraint solving.
Example 7. We search for all lines L, which have a
constant distance d from a given point p. Without loss of
generality let d = 1 and p be the origin of the coordinate
system. The family of lines L that we consider are just all
tangent lines of the unit sphere S
2
. Using normalized
Plucker coordinates (l;

l) for a moment, we rst note that
the length

l gives the distance of the line to the origin.


Hence, the lines under discussion satisfy

l
2
= 1 in the
normalized Plucker coordinates, which, by normalization,
is equivalent to

l
2
= l
2
. Obviously, this homogeneous quad-
ratic equation is already the expected relation in homoge-
neous Plucker coordinates,
V
4
2
: ll

l = 0:
It denes the quadratic hypersurface V
4
2
in P
5
. The upper
index denotes the dimension, and the lower index the
degree. This means that the Klein images of tangent lines
of the unit sphere lie in the intersection M
4
2
T
V
4
2
.
In general, such families of lines satisfying a quadratic
equation in addition to the Plucker relation are called quad-
ratic complexes. The tangent line complexes of quadrics are
examples of quadratic complexes, but there are other types
as well.
Example 8. We are interested in all lines L which intersect
a given circle, say the unit circle in the xy-plane. It is easy to
see that the Plucker coordinates of lines L satisfy
l
2
3
l
2
4
l
2
5
= 0. Again, we have a quadratic complex.
A further example of the same type is the following. We
are interested in all lines L which enclose an angle of p/4
with the xy-plane. In Plucker coordinates (l;

l), the rst
vector l is a direction vector, and therefore these lines satisfy
l
2
1
l
2
2
l
2
3
= 0 and again form a quadratic complex.
The examples discussed earlier led to quadratic
complexes. What about the lines which satisfy a linear equa-
tion in Plucker coordinates? Using Eq. (9), we see that all
lines H intersecting a xed line G are given by a linear
equation. But Eq. (9) is just a special case of a linear equa-
tion in Plucker coordinates, as both G and H satisfy the
Plucker relation.
We use the notation
C = (c; c) = (c
1
; c
2
; c
3
; c
4
; c
5
; c
6
):
where c; c are not necessarily Plucker coordinates of a line.
A set of lines L = (l;

l) satisfying a linear equation in
Plucker coordinates,
c
4
l
1
c
5
l
2
c
6
l
3
c
1
l
4
c
2
l
5
c
3
l
6
= 0 (12)
is called a linear line complex or linear complex. The
strange numbering of the coefcients c
i
will be explained
later, (see Eq. (15)). The expression on the left is cl c

l,
which can also be written as V(C, L).
There are two different types of linear complexes. Firstly,
if (c; c) are Plucker coordinates of a line C, the linear
complex consists of all lines intersecting C, see Eq. (9).
Such a linear complex is called singular.
Secondly, c c 0 characterizes regular linear
complexes. So far, we have no idea of such sets of lines
and cannot explain their properties. Later they will be
discussed in connection with kinematics and with the so-
called null polarities.
We want to motivate the study of line geometry by giving
more examples on complexes. A general algebraic line
complex is dened by a homogeneous algebraic equation
G(l;

l) = 0 in Plucker coordinates, clearly different from
Eq. (11). For our examples, only those complexes which
have already been understood are used.
3.4. Intersection of complexes
The intersection of two algebraic complexes in general
position is an algebraic line congruence, the intersection of
three algebraic complexes in general position is an algebraic
ruled surface. This seems to be rather theoretical but the
following examples shall demonstrate the practical use of
this interpretation.
Let A
i
, i = 1, 2, 3 be three given skew lines in three-space.
All lines L intersecting A
i
will be calculated. By the inter-
section condition Eq. (9), one obtains the Plucker coordi-
nates of L as solutions of
V(A
i
; L) = a
i
l a
i

l = 0; for i = 1; 2; 3;
V(L) = l

l = 0:
Thus, the lines L lie in the intersection of three singular
linear complexes. The last equation just guarantees that (l;

l)
are Plucker coordinates of lines L.
Interpreting these equations in P
5
we see that the Klein
images LR form an intersection of M
4
2
with a two-dimen-
sional plane which is the intersection of the three hyper-
planes V(A
i
, L) = 0, i = 1,2,3. Thus, the Klein images LR
of the considered lines lie on a conic. Using the result of a
previous example, it follows that the lines L form one family
of generator lines of a ruled quadric F. The quadric F
contains a second family of lines G, which contains the
lines A
i
and all lines G intersect all lines L.
Example 9. Let the lines A
i
be given by their Plucker
coordinates
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 7
A
1
= (1; 0; 0; 0; 0; 0);
A
2
= (0; 1; 0; 1; 0; 0);
A
3
= (0; 0; 1; 1; 1; 0):
All points in P
5
satisfying V(A
i
, X) = 0 form 2-plane 1,
parametrized in homogeneous parameters by
Y = (y; y) = (l; m; n; 0; l; l m):
Only those points in 1 are Klein images of lines L P
3
which lie on M
4
2
. Thus, we solve y y = 0 and this leads to the
expected quadratic parameterization
L(t) = (t(1 t); t; 1 t; 0; t(1 t); t
2
):
Further, the family G(s) containing A
i
is given by
G(s) = (1 s; s(1 s); s; s
2
; s; 0):
Clearly, we have A
1
= G(0), A
2
= G() and A
3
= G(1)
and L(t), G(s) are both families of generator lines on the
ruled quadric determined by A
i
.
Another constraint solving problem is the following. We
look for all lines L which intersect a given line G orthogon-
ally and have a certain distance d from a xed point p. From
a previous example we know already that lines having a
constant distance from a point form a quadratic complex.
We choose again d = 1 and p as the origin of the coordinate
system. Together with the other constraints, we obtain the
system.
V
4
2
: ll

l = 0;
g

l gl = 0;
gl = 0;
M
4
2
: l

l = 0:
The intersection of these four hypersurfaces (M
4
2
and V
4
2
are quadratic, the other two are linear) in P
5
is, by Bezouts
theorem, in general a curve of order four. We will see later
that this curve is the Klein image of a ruled surface of order
four, which is the solution of our problem.
So far, we studied the correspondence between lines L in
three-space and their Klein images LR in P
5
, and got a point
model (M
4
2
) for the set of lines, which is a helpful tool for
solving certain problems. The coordinates of points CR
P
5
not on the Klein quadric, i.e. c c 0, appear naturally in
connection with the regular linear complexes (Eq. (12)).
However, to get a better understanding of linear complexes
and points CR, we need more projective geometry. This will
turn out to be very useful in a study of rational ruled surfaces
[23]. However, before extending our tutorial on the projec-
tive theory, we would like to draw a picture of the close
relation between linear complexes and kinematics and use it
for some applications in surface reconstruction and robot
kinematics.
4. Line geometry and kinematics
The relation between line geometry and kinematics in E
3
will help us to understand linear complexes from a practical
point of view.
A continuous motion in E
3
, composed of a continuous
rotation around a line A (with constant angular velocity)
and a continuous translation parallel to A (with constant
velocity) is called a helical motion or screw motion with
axis A and pitch p, see Fig. 3. If A is chosen to be the z-axis
of a Cartesian coordinate system, a helical motion is given
by
x(t) =
0
0
pt
0
B
B
@
1
C
C
A

cost sint 0
sint cost 0
0 0 1
0
B
B
@
1
C
C
A
x(0):
However, in the following this special choice of A is not
used. For p = 0, the motion reduces to a pure rotation
around A. If p 0, all points of the axis A travel along it,
whereas the paths (trajectories) of the remaining points of
the moving system are helices. As the limiting case, p = ,
we include a continuous translation, where the rotational
part vanishes and all points travel with constant velocity
along parallel lines.
The velocity vector eld for these motions is time inde-
pendent and linear, see Bottema and Roth [2]. A point x has
velocity vector
v(x) = c c x (13)
where the constant vectors c; c R
3
are related to axis A =
(a; a) and pitch p of a helical or rotational motion via
p =
c c
c
2
; (a; a) = (c; c pc): (14)
Here, c is not necessarily normalized. We note that c = o
belongs to translations parallel to c.
Lines through points x normal to v(x) are normal to the
trajectory at x and are called path normals. Their Plucker
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 8
Fig. 3. Helical motion with axis A, pitch p.
coordinates satisfy a linear equation
0 = vl = cl (c x)l = cl c(x l) = cl c

l: (15)
These three parameter sets are called linear complexes,
dened by the coefcient vectors c and c. Hence, the path
normals of a helical motion, rotation or translation form a
linear complex C = (c; c): But note that in general c c 0,
such that (c; c) are not Plucker coordinates of a line in E
3
.
Conversely, any linear complex in E
3
, dened by vectors
c; c, denes a velocity vector eld (Eq. (13)), and thus is
formed by the path normals of a helical (rotational, transla-
tional) motion (Fig. 4). We called a linear complex singular,
if the coefcient vectors c; c satisfy the Plucker relation
c c = 0, and (c; c) are (not necessarily normalized) Plucker
coordinates of a line.
Using the kinematical interpretation, singular complexes
belong to p = 0 and p = . In the case p = 0, the linear
complex consists of all lines intersecting the rotational axis
A = (c; c), whereas in the case p = , it consists of all lines
which are perpendicular to the vector c, which means that
these lines intersect a line at innity.
As a linear complex determines a helical, rotational or
translational motion, we also speak of pitch p and axis A of
the linear complex C, which are found from Eq. (14) in the
non-translational case.
At any non-stationary instant of a one-parameter motion
in E
3
, the velocity vector eld is of the form (Eq. (13)) and
thus the instantaneous path normals form a linear complex.
5. Approximation in line space
In practice, errors in data are often unavoidable. In certain
applications which will be discussed here, the question
arises how to construct a linear complex C, which in a
sense to be specied best approximates a given set of lines
L
i
, i = 1,,k. In other words, we are interested in the
construction of a linear complex of regression to a given
set of data lines.
An important input to the solution of the problem is an
appropriate measure of the deviation of a given line L from a
given linear complex C in E
3
. Let us represent L with
normalized Plucker coordinates (l;

l); l = 1. The linear
complex C shall be dened by the equation cx c x = 0.
For the moment, the linear complex C will be different from
the path normal complex of a translation and thus satisfy
c o.
According to F. Klein [12], we use the moment of L with
respect to C,
m(L; C) :=
cl c

l
c
(16)
to measure the deviation of L from C. Usually one denes
the moment between an oriented line and an oriented linear
complex (linear complex with oriented axis) and thus omit
the absolute value in the denition. We do not need orienta-
tions and thus dene the moment as a non-negative real
number.
The moment has the following geometric interpretation,
see Fig. 5. Pick an arbitrary point x on L. Let r be the
distance of x from the axis A of the complex C with pitch
p. Let a [0,p/2] be the smallest angle between L and a
line of C through x, or, in other words, the angle between L
and the plane (path normal plane of x), in which the lines of
C through x lie, see Fig. 5. Then, the moment m can also be
expressed as
m(L; C) =

r
2
p
2
q
sina: (17)
Lines with vanishing moment, m(L, C) = 0, are exactly
the lines of C. Eq. (17) indicates that the moment is a useful
deviation measure of a line from a linear complex (very
much like the distance of a point to a plane in three-space).
5.1. Linear complex of regression
Let us now compute a linear complex C which is as close
as possible to the given lines L
i
, i = 1,,k with normalized
Plucker coordinates (l
i
;

l
i
). For this, we compute C as a
minimizer of
X
k
i=1
m(L
i
; x)
2
(18)
among all linear complexes x, represented by
X = (x; x) R
6
. With Eq. (16), this is equivalent to
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 9
Fig. 4. Path normals of a helical/rotational motion with axis A.
Fig. 5. Moment of a line w.r.t. a linear complex.
minimizing the positive semidenite quadratic form
F(X) :=
X
k
i=1
( xl
i
x

l
i
)
2
VX
T
MX (19)
under the normalization condition
1 = x
2
V X
T
DX; (20)
where D = diag(1,1,1,0,0,0). This is a familiar general
eigenvalue problem. Using a Lagrangian multiplier l, we
solve the system
(M lD)X = 0; X
T
DX = 1: (21)
The rst equation has a non trivial solution X, if l is a
root of the equation
det(M lD) = 0: (22)
As three diagonal elements in D are zero, this is just a
cubic equation in l. For any root l, and corresponding
general eigenvector X = (x; x), which is a solution of
(M lD)X = 0 and with x = 1, we have
F(X) = X
T
MX = lX
T
DX = l:
This means that all roots l are non-negative and the
solution C is a general eigenvector to the smallest general
eigenvalue l 0.
The standard deviation of the given lines L
i
from the
approximating linear complex C is
s =

l
k 5
:
r
(23)
In case of a sufciently small deviation s, the given lines
L
i
can be well approximated by lines of the linear complex
C. We use Eq. (14) to compute axis A and pitch p of the
complex C. Note that the moment m, the standard deviation
s as well as the pitch p are distances in Euclidean geometry
and hence, their magnitude has to be seen in comparison
to the error tolerances and the size of the objects under
discussion.
Linear complexes with pitch p = have so far been
excluded. They are characterized by c = o and the complex
consists of all lines in E
3
which are orthogonal to the vector
c. The deviation of a line L from such a complex can simply
be taken as the cosine of the angle between L and c. Thus,
we now minimize
X
k
i=1
( xl
i
)
2
(24)
over all unit vectors x R
3
. This is an eigenvalue problem
in R
3
. Note that one might not know in advance whether an
approximation of the given data lines L
i
with this special
type of singular linear complex would be possible. If it is
possible, the general algorithm as outlined earlier will cause
numerical problems, as all coefcients in Eq. (22) will be
close to zero. There are two simple ways to overcome this
problem. One can either check for a complex with p =
rst or run at rst the general algorithm with another
normalization condition, namely X
2
= 1. The latter case is
equivalent to treating D as a unit matrix. Note, however, that
this leads to a characteristic Eq. (22) of degree six.
Families of solution complexes: It might be seen that in
solving Eq. (22) two small eigenvalues l
1
, l
2
occur. Then,
there exist two nearly equally good solution complexes C
1
,
C
2
to the given set of lines L
i
. Thus, the lines L
i
can be well
approximated by lines of the intersection C
1
C
2
. This is a
special two parameter family of lines, which will be
discussed later in Section 6.2.
Analogously, three small eigenvalues l
1
, l
2
, l
3
dene
three linear complexes. The intersection of independent
complexes C
1
, C
2
and C
3
, is in general a one parameter
family of generator lines of a ruled quadric, see also Section
6.2.
A detailed treatment of special cases and the approxima-
tion of line segments by lines in a linear complex is done by
Pottmann et al. [18].
5.2. Rotational/helical surface reconstruction
Let us look at a problem that arises in the context of
reverse engineering of geometric models [21]. Here, a
real part has to be transformed into a computer model,
including a CAD description of its geometry. The surface
of a part may consist of different surface types. There might
be simple surfaces like planes, spheres, cones and cylinders
of revolution and tori. It might also contain more general
surfaces of revolution, general cylinders and helical surfaces
and might exhibit general freeform surfaces. Both for the
CAD representation and for the manufacturing of the part, it
is essential to recognize the simpler surface types and t the
given data, usually clouds of points with measurement
errors, by surfaces of the determined type.
Recall that a general cylinder is traced out by a curve
which is moved under a continuous (straight) translation.
A surface of revolution is generated by a curve that is under-
going a continuous rotation. As the simplest surface types
are special cylinders or surfaces of revolution, it seems to be
important to recognize whether the given data can be tted
well with a cylinder or a surface of revolution and to
develop an algorithm for computing a t with the surface
of the determined type. The method of Pottmann and
Randrup [19] then suggests to look more generally at helical
surfaces, which are generated by curves under screw
motions. The approach is based on the following well-
known result. The normals of a C
1
surface lie in a linear
complex if and only if the surface is (part of) a cylinder, a
surface of revolution or a helical surface.
Let us now return to our problem, how to recognize heli-
cal and rotational surfaces. Let a set of scattered (noisy) data
points of a helical surface F or one of its special or limit
forms (surface of revolution, cylinder) be considered.
1. First, we have to estimate the surface normals N
i
at the
given data points d
i
, i = 1,, k, see Fig. 6. For methods
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 10
that can be employed to estimate surface normals, we
refer to the CAGD literature [8]. Here, one has to take
care that the density of the points d
i
, at which we
compute the normals N
i
is approximately the same every-
where. For reverse engineering applications, we perform
a data reduction algorithm [14] and compute the normals
just on a subset of the original data points. We assume
that d
i
is already an appropriate set of data points.
2. Secondly, because of the fundamental result mentioned
earlier we now have to calculate an approximating linear
complex C to the estimated normals N
i
. In the case of a
small deviation (Eq. (23)) of the normals N
i
from C, there
will be a good helical surface approximant to the given
data points d
i
. To determine the helical surface, we use
Eq. (14) to compute the axis and pitch p of the generating
motion. This gives important information for type recog-
nition, as for instance the normals of a surface of revolu-
tion lie in a singular complex with p = 0. We will not
pursue this here, but refer the reader to the articles
[18,19,20].
In connection with type recognition, it has to be
mentioned, that cylindrical surfaces, which would
cause numerical problems in the algorithm, can be
detected earlier. The unit normal vectors of a cylinder
form a great circle (Gaussian image) on the unit sphere.
So, one should rst check the Gaussian image of the
surface before running the approximation algorithm.
3. So far, we have discussed the construction of the gener-
ating motion. Thirdly, we want to reconstruct the surface.
What is missing is just a curve c, which generates the
surface under the just dened motion. To determine c, we
project (move) the given data points d
i
, i = 1,,k with
the help of their trajectories into an appropriate plane p,
see Fig. 7. For a surface of revolution, p passes through
the axis. For a cylinder, it is orthogonal to its generators
and for a helical surface, one can choose p as a path
normal plane of an appropriate data point [19].
The resulting points p
i
in p form a set, which should lie
close to the curve c to be constructed. For computing an
approximating curve c of the points p
i
, one can use the
methods devised by Lee [13] or Randrup [20].
4. Finally, moving c with the help of the determined motion
yields the approximating surface (Fig. 8), which has to be
trimmed according to the region of given data.
5.3. On the stability of a parallel manipulators position
Let us consider a six-legged parallel manipulator (Fig. 9).
Here, the moving systemS and the xed base system S
0
are
connected by six legs, which are prismatic joints (hydraulic
cylinders) attached to both systems via spherical joints.
Geometrically, we may think of the legs L
i
, i = 1,,6 as
lines. Special cases of such manipulators appear for
example in ight simulators. Research on this kind of robots
was quite active in the past decade [11]. We will show its
relation to line geometry and in particular point to a stability
concept based on approximation in line space.
Keeping the leg lengths xed at a position S(t) of the
moving system, we obtain a rigid system. However, it
may be innitesimally movable and even admit a nite
motion. Such positions are referred to as singular. As the
legs L
i
of xed length r
i
are xed at points m
i
S
0
, they can
only move on spheres F
i
with centers m
i
and radii r
i
. Hence,
the legs appear as path normals and we immediately arrive
at the following well-known result [11,15]. A position of a
parallel robot with k 6 legs is singular if and only if the
positions of the legs lie in a linear complex. In practice, such
positions are avoided. Moreover, if a robot has two different
positions, but in space nearby congurations for the same
leg lengths, the robot may snap into the neighboring posi-
tion, which is clearly undesirable. Such positions are close
to a singular position [11]. Therefore, snapping into a neigh-
boring position can be avoided by avoiding positions where
the legs can be tted well by a linear complex. Note that we
have given the computational tools for checking this. More-
over, various sources for errors occur in practice, such that
the test for a singular position itself should be formulated as
a regression problem.
In case the leg positions L
i
(t) lie in the intersection of two
independent linear complexes, we have an instantaneous
movability of a two-parameter motion. Finally, if the legs
lie in the intersection of three independent linear complexes,
the indeterminacy of the points of the moving system is in
three independent directions in general (in two directions for
the spherical links) [15]. Again, our results are suitable to
detect such positions [18].
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 11
Fig. 6. Perturbated data points of a rotational surface with estimated normal
vectors.
Fig. 7. The auxiliary plane p with the projected points and approximation
curve c (shifted).
An analogous application occurs in the context of serial
robots. For example, if the robot has six revolute joints, a
necessary (but not sufcient) condition for a singular posi-
tion (dened by vanishing Jacobian of the mapping from the
six-dimensional conguration space to the motion group
SE(3)) is that the positions of joint axes lie in a linear
complex [10,11].
6. More projective geometry
We have seen that the path normals of a helical (rota-
tional, translational) motion lie in a regular (singular) linear
complex. We will now study more projective geometry to
get another interpretation for linear complexes in connec-
tion with the so-called null polarities. Especially studying
their Klein images will be important for dealing with
rational ruled surfaces [17].
Let P
3
be projective three-space, as before. We use homo-
geneous coordinates x = (x
0
, x) to represent points xR. In
the same way, u = (u
0
, u) are homogeneous plane coordin-
ates of a plane Ru with respect to a xed coordinate
system.
A regular linear map f: P
3
- P
3
from points xR to points
y
/
R can be written with the help of a regular 4 4-matrix A
as
f : y
/
= Ax: (25)
Such a map is called a projective map or a collineation.
These maps play a fundamental role in projective geometry,
as projective geometry studies properties which are invar-
iant under projective maps. Note that, by linearity, a colli-
neation maps lines and planes (as point sets) to lines and
planes, respectively.
In connection with our study of line geometry, it is quite
useful to know that a projective map induces a bijective
transformation in the set of lines. This transformation is
seen in the Klein image as a mapping of the Klein quadric
M
4
2
onto itself; it can be shown that this mapping is the
restriction of a collineation in P
5
onto the Klein quadric.
In view of the importance of linear mappings and the
duality between points and planes, it is natural to study
the linear maps between the sets of points and planes. For
this we use Eq. (25) and interpret y
/
as coordinate vector of a
plane Ry
/
. We get a linear map from points to planes, which
is called a projective correlation. Linearity implies that
points on a line are mapped to planes through a line. By
the way, this induces a bijective map in the set of lines
which is also seen in the Klein image as a collineation.
Moreover, a correlation map points in a plane to planes
through a point; hence, in the explained sense, it maps
planes to points. Summarizing, one can say that a correla-
tion maps a projective gure to a dual counterpart of it. In
this sense, it realizes the principle of duality we have come
across earlier.
Example 10. A point xR shall run on a conic c. Without
loss of generality, let x(t) = (0; cost; sint; 1) be a parametri-
zation of
c : x
0
= 0; x
2
1
x
2
2
x
2
3
= 0:
The correlation d : u
/
= Ix, with I as identity matrix
maps points xR to planes Ru
/
= R(0; cost; sint; 1), which
envelop the cone d(c) : x
2
1
x
2
2
x
2
3
= 0. The origin
which is the vertex of d(c) corresponds to the plane x
0
=
0 containing c. Moreover, the tangent lines of c are mapped
to the generator lines of the cone d(c).
Remark: Reading the foregoing example carefully, one
will say that x
2
1
x
2
2
x
2
3
= 0 is not an equation in plane
coordinates. The correct equation for d(c) in plane coordi-
nates is of course
d(c) : u
0
= 0; u
2
1
u
2
2
u
2
3
= 0;
which represents a one-parameter family of tangent planes.
Nevertheless, this plane representation is converted to a
point representation of d(c) by computing the envelope of
the plane set, which is x
2
1
x
2
2
x
2
3
= 0.
By the way, any developable surface, different from a
plane, is representable as a one-parameter family of tangent
planes and clearly as a two-parameter family of points.
6.1. Linear complexes and null polarities
Regular (singular) linear complexes occurred as path
normal complexes of helical (rotational, translational)
motions in Euclidean three-space. This interpretation serves
also to derive a denition of linear complexes in projective
space.
Let a helical motion be dened by its velocity vectors
(Eq. (13)). For a xed point zR = (1; z=z
0
)R not at innity,
the path normals form a pencil of lines in the path normal
plane v(z). Using Eq. (13), this plane is given by the
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 12
Fig. 8. Approximating surface of the data points.
Fig. 9. Parallel manipulator.
equation
v(z) : c
z
z
0

c c
z
z
0

x
x
0
= 0
= (z c)x
0
(z
0
c z c)x = 0:
We can use this equation to dene a mapping x from
points zR to planes v(z). Obviously, it depends linearly on
z and serves also to map points (0, z)R at innity. Thus, this
mapping is a correlation. If u
/
are homogeneous plane coor-
dinates of the image plane v(z), the correlation x, which is
called null polarity, is given by
z = (z
0
; z) - u
/
= (z c; z
0
c z c): (26)
The image plane Ru
/
is called null plane of zR. The point
zR = (0; c)R is mapped onto Ru
/
= R(1; o), which is the
plane at innity x
0
= 0. All other points at innity are
mapped to planes parallel to the axis A of the helical motion.
Using the notation c = (c
1
; c
2
; c
3
) and c = (c
4
; c
5
; c
6
), one
can form the skew symmetric matrix
C =
0 c
4
c
5
c
6
c
4
0 c
3
c
2
c
5
c
3
0 c
1
c
6
c
2
c
1
0
0
B
B
B
B
B
B
@
1
C
C
C
C
C
C
A
: (27)
It satises C
T
= C, and the null polarity x dened
earlier is given by the equation u
/
= Cz, which again shows
the linearity of x. Note that for any skew symmetric matrix
one obtains
u
/T
z = z
T
Cz = z
T
u
/
= 0:
This expresses the incidence of a point zR with its null
plane Ru
/
; point zR is called the null point of that plane.
Any correlation with a regular skew-symmetric transfor-
mation matrix is called a null polarity. Our derivations show
that any null polarity can be interpreted as mapping from
points to path normal planes of a helical motion as long as
we map only points which are not at innity.
Example 11. A null polarity shall be dened by
(x
0
; ; x
3
) - (u
/
0
; ; u
/
3
) = (x
3
; x
2
; x
1
; x
0
):
Interpreting this in E
3
, we have the helical motion dened
by c = (0; 0; 1); c = (0; 0; 1) with pitch p = 1 and axis
(a; a) = (0; 0; 1; 0; 0; 0)R;
which is the z-axis of a Cartesian coordinate system. The
angular velocity is normalized to 1. The velocity vector eld
reads as v(x) = (y; x; 1), where (x
0
; x)R = (1; x; y; z)R.
The inverse mapping to x can be derived in the following
way. Each plane Ru = R(u
0
; u)in E
3
not parallel to the axis
of a helical motion can be considered as path normal plane
of a point zR = (1; z)R not at innity. The linear depen-
dency of u and the velocity vector of zR can be expressed
by ( c c z) u = 0. As the incidence condition u
0
=
uz holds, one obtains
z =
1
uc
(u
0
c u c):
The homogeneous representation of the inverse mapping
to x is then given by
Ru - z
/
R = (uc; u
0
c u c)R: (28)
The planes Ru parallel to the axis, i.e. uc = 0, cannot
occur as path normal planes and the formula gives image
points at innity. If C is a regular matrix, which denes a
helical motion in E
3
, the corresponding null polarity is
called regular.
Let C be singular, i.e., det(C) = (c c)
2
= 0. We exclude
rank (C) = 0 and the only interesting case is rank (C) = 2,
where C denes a singular null polarity with A = (c; c) as
singular line or axis.
Comparing Eqs. (8) and (26), we see that in the singular
case the null plane of a point zRis the connecting plane with
the axis A and is not dened for points on A. Further,
comparing Eqs. (7) and (28) implies that the null point of
a plane is the intersection point with the axis A and not
dened for planes through A.
Example 12. The rst example for a singular null polarity
is
(x
0
; ; x
3
) - (u
/
0
; ; u
/
3
) = (0; x
2
; x
1
; 0):
In E
3
this corresponds to the rotation around the z-axis.
The second example, which is derived from a translation
parallel to the z-axis, is
(x
0
; ; x
3
) - (u
/
0
; ; u
/
3
) = (x
3
; 0; 0; x
0
):
However, in projective geometry these two examples are
equivalent, which means that there exists a linear (projec-
tive) mapping, which maps the singular line of the rst
example (z-axis) to the singular line of the second one
(line at innity of planes orthogonal to the z-axis).
Remark. All regular linear complexes in P
3
are visualiz-
able as path normal complexes of corresponding helical
motions in E
3
. All singular linear complexes in P
3
are visua-
lizable in E
3
in two ways. Choosing the singular line at
innity leads to a path normal complex of a translation
whereas a singular complex with axis A not at innity can
be considered as path normal complex of a rotation around
this line A in E
3
.
As a correlation, a null polarity maps lines (as point sets)
to lines (as carriers of a pencil of planes). Which of these
lines L remain xed in this line mapping? Consider a point
on such a xed line L; its image plane must pass through the
line L. It turns out that this is sufcient: to get a xed line
(also called null line), take a point and construct its image
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 13
plane under the null polarity. Any line which passes through
the point and lies in its image plane is a null line. If C is
regular, then the path normals of the corresponding helical
motion in E
3
are null lines. One can show that the connect-
ing line of two points xR, yR is a null line exactly if the
point yR lies in the null plane of the point xR. Also, xR lies
in the null plane of yR, see Fig. 10.
From the preceding discussion, it follows that the null
lines of a null polarity lie in a linear complex and satisfy
a linear homogeneous equation in Plucker coordinates. We
used the following notation
V(C; L) U l c

lc = c
4
l
1
c
5
l
2
c
6
l
3
c
1
l
4
c
2
l
5
c
3
l
6
= 0: (29)
It is now easy to answer the question of the meaning of
points in P
5
, which do not lie in M
4
2
. It will be of importance
for the study of rational curves on M
4
2
, which are just the
Klein images of rational ruled surfaces in P
3
, see [17].
6.2. The Klein image of a linear complex
It is clear from Eq. (29) that the Klein image of the lines of
a linear complex C is a hyperplanar intersection of the Klein
quadric M
4
2
. The bilinear form to Eq. (11) of the Klein
quadric shows that the pole of the hyperplane V(C; X) =
0 with respect to M
4
2
is the point CR = (c; c)R P
5
. It is
called the extended Klein image of the linear complex C. For
the concept of polarity (special correlation), we refer to any
textbook on projective geometry or to the book by Boehm
and Prautzsch [1].
A singular linear complex C is characterized by V(C) =
0, which implies that the pole CR lies in M
4
2
. Thus, the
hyperplane V(C; X) = 0 touches M
4
2
at that point.
6.3. Sets of linear complexes
Sets of linear complexes, whose extended Klein images
form a k-dimensional subspace of P
5
are called k-dimen-
sional spaces of linear complexes. The intersection of all
complexes in such a set is called its carrier.
For k = 1, we obtain a pencil of linear complexes. Let
C
1
R and C
2
R be the extended Klein images of two inde-
pendent linear complexes (possibly singular). The Klein
images of the lines in these complexes are solutions of
V(C
i
; X) = 0; V(X; X) = 0; i = 1; 2;
such that the common lines of both complexes also lie in any
other complex of the pencil, i.e. they satisfy
V(l
1
C
1
l
2
C
2
; X) = 0: (30)
We see that the carrier of the pencil is the intersection of
M
4
2
with a three-space (intersection of the hyperplanes
V(C
1
; X) = 0 and V(C
2
; X) = 0), which is the polar space
to the line (l
1
C
1
l
2
C
2
)R with respect to M
4
2
. The carrier
is in general a linear congruence or net of lines. This is a
two-parameter set of lines which is of one of the following
types.
A hyperbolic net consists of all lines intersecting two real
skew lines which are called focal lines. The Klein images of
the focal lines are the real intersection points of (l
1
C
1

l
2
C
2
)R with the Klein quadric M
4
2
.
An elliptic net is formed by two-parameter set of real
lines intersecting two conjugate complex lines. Their
Klein images are conjugate complex intersection points of
(l
1
C
1
l
2
C
2
)R with M
4
2
. To get a better understanding of
elliptic nets, we considered a special example in E
3
. Take a
helical motion with axis A and pitch p 0 and let p be a
plane orthogonal to A. Then, the tangent lines to trajectories
(helices) at all points of the plane p form a special elliptic
net, called an elliptic net of revolution. These path tangents
are generator lines of a one parameter family of one-sheeted
hyperboloids of revolution, which possess same axis A,
same center and same minor vertices, see Fig. 11. Applying
afne maps to an elliptic net of revolution, one obtains all
elliptic nets in E
3
.
A parabolic net is a limiting case between these two,
where the line (l
1
C
1
l
2
C
2
)R is tangent to M
4
2
. It may
be visualized as a set of surface tangents at all points of a
ruling of a ruled quadric.
Remark: As the Klein image of a net is the intersection of
M
4
2
with a three-space, it is a ruled quadric in case of a
hyperbolic net. A hyperbolic net consists of two 1-para-
meter families of pencils of lines, which is reected in the
geometry of the ruled quadric.
The Klein image of an elliptic net is an oval quadric and a
parabolic net is mapped under g onto a quadratic cone.
Visualizing a parabolic net as set of surface tangents as
before, the pencils of tangent lines are mapped onto the
generators of the nets Klein image cone and the g-image
of the generator of the ruled surface is the vertex of the cone.
The case k = 2 leads to bundles of linear complexes,
whose carrier is in general a (not necessarily real) regulus
(one family of rulings on a ruled quadric).
Let C
1
R, C
2
R and C
3
R be the extended Klein images of
three independent linear complexes (possibly singular). The
Klein images of the lines in these complexes are solutions of
V(C
i
; X) = 0; V(X; X) = 0; i = 1; 2; 3
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 14
Fig. 10. Null lines of a null polarity.
such that the common lines also lie in any of the complexes
V(l
1
C
1
l
2
C
2
l
3
C
3
; X) = 0: (31)
Thus, the carrier of the bundle is the intersection of M
4
2
with a 2-plane 1 (intersection of the three hyperplanes
V(C
i
; X) = 0; i = 1; 2; 3), which is the polar space to the
2-plane
f : (l
1
C
1
l
2
C
2
l
3
C
3
)R
with respect to M
4
2
.
In the case where 1 intersect M
4
2
in a conic, the carrier of
the bundle of complexes is a (not necessarily real) regulus,
that is one family of generating lines of a ruled quadric Q.
Then, also f
T
M
4
2
is a conic and its points are the Klein
images of the other family of generating lines on Q.
The other types of bundles of complexes can be found by
discussing the intersection 1
T
M
4
2
, which can be a pair of
lines, a double counted line or the whole plane 1. Here, we
refer to the literature [5,23].
7. Conclusion and outlook
We presented an introduction to line geometry along with
applications in constraint solving, reverse engineering and
robot kinematics. For this, we enriched the classical mate-
rial by computational aspects such as approximation by
linear complexes. There is a variety of open problems in
this area, which would deserve a careful investigation. Let
us briey indicate some directions.
We touched approximation in line space, for which
general concepts as well as rened techniques for specic
applications need to be developed. Related to that are the
numerical aspects of line geometric computations. Other
line families than the ones treated in the present text deserve
interest. As a contribution in this direction one may view the
computational geometric investigation of ruled surfaces in a
article of the same issue [17], but also there a lot of open
problems still remain.
Within algorithmic geometry (often called, computa-
tional geometry) there is also a lack of results on basic
algorithmic tasks in line space. Algorithmic questions about
lines in three-space arise in various applications including
ray tracing in computer graphics, motion planning, place-
ment and assembly problems in robotics and object recogni-
tion in computer vision. A paper by Chazelle et al. [3] gives
initial results, but remarks at the end: In general, it appears
that most questions about lines in space are still open.
Summarizing, the eld of computational line geome-
try, as a combination of classical line geometry with
new questions arising in context of a computational treat-
ment, is an interesting area for future research, both from an
academic and practical point of view.
Acknowledgements
This work was supported by grant No. P11357-MAT of
the Austrian Science Foundation and through a grant from
the California Department of Transportation. We would like
to thank T. Randrup for his help with the implementation of
the rotational and helical surface reconstruction.
References
[1] Boehm W, Prautzsch H. Geometric concepts for geometric design. In:
Peters AK, editor, Wellesley, MA, 1994.
[2] Bottema O, Roth B. Theoretical Kinematics. New York: Dover Publ.,
1990.
[3] Chazelle B, Edelsbrunner H, Guibas LJ, Sharir M, Stol J. Lines in
space: combinatorics and algorithms. Algorithmica 1996;15:42847.
[4] Edge WL. The theory of ruled surfaces. Cambridge: Cambridge
University Press, 1931.
[5] Hlavaty V. Differential line geometry. Groningen: P. Nordhoff Ltd.,
1953.
[6] Hoffmann Ch.M, Vermeer PJ. Geometric constraint solving in R
2
and
R
3
. In: Du DZ, Hwang F, editors, Computing in euclidean geometry.
World Scientic Publishing, 1994.
[7] Hoschek J. Liniengeometrie, Bibliograph, Institut, Zurich, 1971.
[8] Hoschek J, Lasser D. Fundamentals of computer aided geometric
design. In: Peters AK, editor. Wellesley, MA, 1993.
[9] Hunt KH. Kinematic geometry of mechanisms. Oxford: Clarendon
Press, 1978.
[10] Hunt KH. Special congurations of robot-arms via screw theory.
Robotica 1986;4:171179.
[11] Husty M, Karger A, Sachs H, Steinhilper W. Kinematik und robotik,
Springer, 1997.
[12] Klein F. Die allgemeine lineare Transformation der Linienkoordina-
ten, in: Gesammelte math. Abhandlungen I, Berlin: Springer, 1921.
[13] Lee I-K. Curve reconstruction from unorganized points. Preprint,
1998.
[14] Martin RR, Stroud IA, Marshall AD. Data reduction for reverse engi-
neering. In: Goodman TNT, editor. The mathematics of surfaces VII.
Information Geometers, 1997.
[15] Merlet J-P. Singular congurations of parallel manipulators and
grassmann geometry. Int. Journal of Robotics Research
1992;8(5):4556.
[16] Muller E, Krames J. Vorlesungen uber Darstellende Geometric III:
Konstruktive Behandlung der Regelachen. Deuticke, Leipzig/Wien,
1931.
[17] Peternell M, Pottmann H, Ravani B. On the computational geometry
of ruled surfaces. Computer Aided Design, to appear.
[18] Pottmann H, Peternell M, Ravani B. Approximation in line space. In:
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 15
Fig. 11. Elliptic net of revolution.
Lenarcic J, Husty ML, editors. Advances in robot kinematics: analysis
and control. Kluwer, 1998, pp. 403412.
[19] Pottmann H, Randrup T. Rotational and helical surface reconstruction
for reverse engineering. Computing 1998;60:307322.
[20] Randrup T. Approximation by cylinder surfaces. Computer Aided
Design, to appear.
[21] Varady T, Martin RR, Cox J. Reverse engineering of geometric
models-an introduction. Computer Aided Design 1997;29:255268.
[22] Weiss EA. Einfuhrung in die Liniengeometrie und Kinematik. Leip-
zig/Berlin: Teubner, 1935.
[23] Zindler K. Liniengeometrie mit Anwendungen, 2 volumes, DeGruy-
ter, Berlin, 1902, 1906.
H. Pottmann et al. / Computer-Aided Design 31 (1999) 316 16
Helmut Pottmann is a Professor of Mathe-
matics at Vienna University of Technology.
He received a PhD from TU Vienna and has
had faculty positions at Purdue University,
University of Hamburg and University of
Kaiserslautern (Germany). His research
interests are in applied geometry, in particu-
lar in geometric modeling, CAD/CAM, robot
kinematics and scientic visualization. He is
associate editor of Computer Aided
Geometric Design and Computing and
program director of the SIAM activity
group on geometric design.
Martin Peternell is a University Assistant of
Mathematics at Vienna University of Tech-
nology. He received his PhD from TU
Vienna. His research interests are in applied
geometry and geometric computing.
Bahram Ravani received the BS degree
Magna Cum Laude from Louisiana State
University, Baton Rouge, LA in 1976; the
MS degree from Columbia University in
New York in 1978 and the PhD degree
from Stanford University, Stanford, CA, in
1982, all in Mechanical Engineering.
From 1982 to 1987, he was on the faculty
of Mechanical Engineering at the University
of Wisconsin-Madison, rst as an Assistant
Professor and later as a tenured Associate
Professor. He then joined the University of
California-Davis where he is presently a Professor of Mechanical
Engineering and the chairman of the department. He is a fellow of
American Society of Mechanical Engineers.
His current areas of interest are Mechanical Design and Manufactur-
ing; CAD/CAM, Kinematics and Dynamics, and Biomechanics of
Impact Trauma.

Você também pode gostar