21.01.2015 Views

Conics, Quadrics, and Projective Space - STEM2

Conics, Quadrics, and Projective Space - STEM2

Conics, Quadrics, and Projective Space - STEM2

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Conics</strong>, <strong>Quadrics</strong>, <strong>and</strong> <strong>Projective</strong> <strong>Space</strong><br />

James D Emery<br />

Last Edit 10/22/2012<br />

Contents<br />

1 Introduction 4<br />

2 Overview 7<br />

3 <strong>Projective</strong> <strong>Space</strong> <strong>and</strong> the Conic Sections 15<br />

4 The Cross Ratio 21<br />

5 The Tangent Line 29<br />

6 Computing A Canonical Representation 33<br />

7 Conic Through a Set of Points 44<br />

8 Parametric Conic Arcs, Matrices of <strong>Projective</strong> Transformations.<br />

44<br />

9 A <strong>Projective</strong> Transformation That Takes Four Points To Four<br />

Points 48<br />

10 An Affine Transformation That Approximately Takes Four<br />

Points To Four Points 51<br />

11 The Rational Parametric Arc And The Conic Arc 53<br />

12 Straight Lines In <strong>Projective</strong> <strong>Space</strong> 57<br />

1


13 Quadric Surfaces 59<br />

14 Quadric Surfaces And Their Matrices 60<br />

15 Transformations 63<br />

16 The Construction Of Solids 67<br />

17 Plane Image 68<br />

18 Monte Carlo Integration 68<br />

19 Stratified sampling 72<br />

20 Point Transformations <strong>and</strong> Coordinate Transformations 74<br />

21 Cross Product, Axial Vectors 75<br />

22 Angular Velocity 77<br />

23 Angular Momentum And The Inertia Tensor 79<br />

24 Surface Integrals 81<br />

25 Volume Integral 83<br />

26 Polygon Areas 84<br />

27 Perspective Projection 85<br />

28 The Tektronix Hardware Modeler: A Quadric Solid Modeler<br />

92<br />

29 References <strong>and</strong> bibliography 94<br />

2


List of Figures<br />

1 Points of projective 2-space are lines in 3-space. A 3-d linear<br />

transformation is a 2-d projective transformation. A rotation<br />

of the cone can project the circle to an ellipse, a parabola, or<br />

ahyperbola. Inthesamewaythe lines through any figure in<br />

the plane are a projective space representation of the figure.<br />

Any sequence of perspective projections of a figure onto a set<br />

of planes can be represented as a sequence of linear transformations<br />

in 3-space. The plane shown in the figure is known<br />

as the affine plane. . . . . . . . . . . . . . . . . . . . . . . . . 9<br />

2 Let lines PQ<strong>and</strong> PRbe tangent to the ellipse. Tangent points<br />

Q <strong>and</strong> R are on the polar of P . Thus the line defined by Q<br />

<strong>and</strong> R is the polar of P . Intersection point S is on both the<br />

polar of P <strong>and</strong> the polar of P ′ .ThusthepolarofS is the line<br />

through P <strong>and</strong> P ′ . . . . . . . . . . . . . . . . . . . . . . . . . 25<br />

3 The parabola x − 2yz = 0 <strong>and</strong> a point at infinity Q. The line<br />

through P <strong>and</strong> Q meets the parabola at P <strong>and</strong> Q. Thepolar<br />

of a point at infinity is a diameter. The polar of Q is the line<br />

at infinity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28<br />

4 The parabola x − 2yz = 0 <strong>and</strong> a point at infinity Q =(1, 1, 0).<br />

The line through P <strong>and</strong> Q meets the parabola at two finite<br />

points. The polar of Q is the line x = 1, which is a diameter<br />

of the parabola. The point at in finity in the diagram is<br />

represented as an arrow in the direction of the infinity point Q. 30<br />

5 Results of plotting conics with the program pltconic.ftn.<br />

(a)Ellipse with equation 10x 2 +10xy+20y 2 +3x+−4y−10 = 0,<br />

(b)Hyperbola with equation 5x 2 +10xy −7y 2 −3x+2y −1 =0,<br />

(c)Parabola with equation x 2 +6xy +9y 2 +3x − 5y − 1=0,<br />

(d)<strong>and</strong> a circle with equation 2x 2 +2y 2 + 1x − 1 y − 1=0. . 45<br />

2 5<br />

6 A conic passing through four points defined by the products of<br />

lines passing through the points (1, 1), (2, 2), (2, 1), (3, 3). The<br />

general equation of such a conic is λ(y − x)(y − x +1)+(1−<br />

λ)(y − 2)(y − 1) = 0 where λ is a parameter. Here λ =1/2.<br />

By letting points come together we can also define conics by<br />

tangent lines. . . . . . . . . . . . . . . . . . . . . . . . . . . . 46<br />

3


7 (a)Any conic arc can be obtained by mapping this parabola,<br />

which is defined by tangent lines AC <strong>and</strong> BC, <strong>and</strong> point<br />

D,where A =(0, 0),B =(1, 1),C =(0, 1/2),D =(1/4, 1/2).<br />

(b)An example of mapping the parabola to a conic representation<br />

of a circle. The intersection of the tangents is at C,<br />

which is a point at infinity. . . . . . . . . . . . . . . . . . . . 47<br />

8 A Perspective drawing showing, a building, a railroad track,<br />

<strong>and</strong> the horizon. The vanishing point at the end of the railroad<br />

tracks is at infinity in three space, yet its projection is a finite<br />

point on the two dimensional page. The figure was generated<br />

with program tracks.ftn. . . . . . . . . . . . . . . . . . . . . 86<br />

9 The intersection of the parabolic cylinder z 2 = y <strong>and</strong> the cone<br />

y 2 = xz is the union of the twisted cubic curve <strong>and</strong> the line<br />

along the x axis. This figure was generated with the solid<br />

modeling program Quadric. . . . . . . . . . . . . . . . . . . . 93<br />

1 Introduction<br />

Quadric solids are solids bounded by quadric surfaces. Quadric solids provide<br />

a rich collection of sets for constructing models of 3-dimensional objects.<br />

A large set of quadric solids may be built by combining primitive quadric<br />

solids, such as spheres, ellipsoids, blocks, cones, wedges, <strong>and</strong> cylinders. Many<br />

manufactured objects are combinations of quadric shapes. There are 17 types<br />

of quadric surfaces, including such less common surfaces as the parabolic<br />

hyperboloid.<br />

The world is full of objects built from rectangular blocks, circular cylinders,<br />

<strong>and</strong> spheres. These objects are quadric solids. Polyhedra are quite<br />

common in nature. Minerals <strong>and</strong> crystals often take a polyhedral form. Some<br />

viruses have the shape of a polyhedron. Polyhedra are quadric solids becuase<br />

they can be built from planar half spaces, <strong>and</strong> planes are quadric surfaces<br />

(pairs of planes). Essentially all objects can be approximated, to an arbitrary<br />

accuracy with polyhedra. More specifically, their surfaces may be<br />

approximated with triangles.<br />

But a polyhedron is locally flat <strong>and</strong> has no local curvature. So the planar<br />

faces of a polyhedron can not model a local curved shape exactly. An advantage<br />

of using quadric surfaces is that they can locally approximate curvature<br />

4


<strong>and</strong> shape [O’Neil p.202]. An object can be represented by a relatively small<br />

number of primitive quadric solids. If we regard atoms as tiny balls, then in a<br />

sense, all objects are built from spheres. But Avogadro’s number 6.03 × 10 23<br />

is very large, so modeling with spheres is somewhat impractical. However, in<br />

the field of scientific visualization we do model with rectangular cells defined<br />

by very large numbers of lattice points. When modeling simple manufactured<br />

parts, we are interested in finding exact models. Quadric solids can<br />

serve well in such modeling.<br />

Quadric solids by themselves do not give a full practical set of primitives<br />

for modeling. For example, surfaces of revolution are ubiquitous. But most<br />

surfaces of revolution are not quadric surfaces. Further a large number of<br />

quadrics are frequently required to get an acceptable approximation to a<br />

surface of revolution. The torus is a surface of revolution that is not a<br />

quadric surface. A torus could be approximated by a set of cylinders. But<br />

the differential geometric properties would not be approximated. Parametric<br />

free form surfaces, such as spline surfaces, are widely used in manufacturing,<br />

but are not quadric surfaces.<br />

Computations with quadric solids are simple. The calculation of a normal<br />

direction, at a point on a quadric surface, is accomplished by a matrix multiplication.<br />

The intersection points of a straight line with a primitive quadric<br />

solid require only the solution of a quadratic equation. The transformed<br />

equation of a translated or rotated quadric surface is easily found.<br />

With the advent of the computer age, there has been a renaissance of<br />

calculation. Many well known algorithms <strong>and</strong> calculating methods, while<br />

theoretically powerful, were formerly of little interest. They were two burdensome<br />

for the human computer. In the past techniques were emphasized<br />

that could be carried out easily by h<strong>and</strong>. But now those calculations, which<br />

were too lengthy for h<strong>and</strong> calculation, are proper for computer modeling <strong>and</strong><br />

computer graphics. Frequently the novice in geometric modeling <strong>and</strong> graphics<br />

does not use the proper tools. Naturally he uses the calculations taught<br />

him in the schools <strong>and</strong> colleges, which are often only the small amount of analytic<br />

geometry found in the calculus course, <strong>and</strong> deals, for example, with the<br />

simultaneous solution of a system of equations in a fixed coordinate system.<br />

A vector approach is superior for many calculations. The vector methods<br />

tend to be independent of the coordinate system. Those with scientific education<br />

are usually familiar with vectors. But they are frequently unaware of<br />

some very useful mathematics. This is the mathematics of projective geom-<br />

5


etry, projective space, <strong>and</strong> specifically the idea of homogeneous coordinates.<br />

<strong>Projective</strong> space is very important in certain advanced areas of mathematics.<br />

It is an important aspect of the field of algebraic geometry. But even<br />

among mathematicians, knowledge of projective <strong>and</strong> algebraic geometry is<br />

not universal.<br />

Often the course in projective geometry, which is offered in American<br />

universities <strong>and</strong> colleges, is designed for future teachers of high school mathematics.<br />

This course, or a course called modern geometry, is taught to show<br />

the future teacher of Euclidean geometry, that there are many geometries,<br />

<strong>and</strong> that not all of the geometries are Euclidean. Niether the course on<br />

projective geometry, nor the books designed for it, emphasize the beautiful<br />

simplifications <strong>and</strong> generalizations of calculation that come from treating<br />

points as belonging to projective space. The few pages discussing projective<br />

space in Birkhoff <strong>and</strong> MacLane (Survey of Modern Algebra), are more<br />

illuminating than the numerous pages of the elementary books on projective<br />

geometry. This is because the connection to linear algebra <strong>and</strong> vector spaces<br />

is not exploited in these books.<br />

The purpose of this report is, first to describe a modeling system which<br />

uses quadric solids as primitive objects, <strong>and</strong> second to present some elementary<br />

ideas of projective geometry which are useful for computing. These<br />

latter ideas, although elementary, are not readily available. The quadric solid<br />

modeling system is implemented in a computer program. An original version<br />

was called Quadric. A later version is called QS90.FTN. It produces<br />

views of 3-dimensional objects, calculates volumes, calculates moments, <strong>and</strong><br />

calculates inertia tensors.<br />

The idea of representing objects as primitive solids was quite fashionable<br />

in the 1980’s. Now most solid modeling systems are surface modeling systems.<br />

But primitive solid modeling still has some interest. Quadric solids<br />

are obvious c<strong>and</strong>idates for the primitives. There are several papers dealing<br />

with quadric surfaces [Leven].<br />

The modeling system described here represents objects as Boolean combinations<br />

of quadric half space primitives. An image of the model is made<br />

by scanning its surface <strong>and</strong> calculating an illumination intensity at each surface<br />

point. The 2-dimensional picture plane is scanned to construct intensity<br />

values. A surface normal is calculated at the point on the surface, where<br />

the line through the picture point pierces the object. The intensity value is<br />

determined from the inner product of the normal at the first pierce point<br />

6


with an illumination vector. Since the primitives are quadric solids, this can<br />

be done easily.<br />

A quadric surface is the set of real zeros of a quadratic form in four<br />

dimensions. Such a set of zeros is called a variety in algebraic geometry. A<br />

quadratic form is a polynomial in which each term is of the second degree.<br />

The set of points were the form takes nonpositive values is call a lower half<br />

space. An upper half space is the set where the form takes nonnegative<br />

values. A quadric form defines two quadric half spaces. Examples of half<br />

spaces are the points inside an ellipsoid, <strong>and</strong> the points outside two parallel<br />

planes.<br />

It is easy to find the intersection points of a quadric surface with a straight<br />

line. The parameters of the intersection points on the line will be the roots<br />

of a quadratic equation. Surface normals are also easily calculated.<br />

The objects are built using the st<strong>and</strong>ard set operators, union, intersection<br />

<strong>and</strong> complementation. Some modeling schemes, for example the PADL<br />

system, which was developed at the university of Rochester, uses regularized<br />

set operators. These operators guarantee that the resulting objects are<br />

topologically closed, <strong>and</strong> homogeneously three dimensional. Using st<strong>and</strong>ard<br />

operators one may get a set that is not closed. Because we have only an approximate<br />

model of the surface <strong>and</strong> do not explicitely calculate the boundary,<br />

the use of regularized operations does not seem appropriate. For intersection<br />

points which are c<strong>and</strong>idates to be on the boundary, We construct a small<br />

line segment in the direction of the normal that contains the point. If one<br />

end of the segment is inside, <strong>and</strong> the other outside, the point is a boundary<br />

point of the object.<br />

2 Overview<br />

We shall start with two-dimensional projective space. This space is easy to<br />

visualize. <strong>Projective</strong> 2-space is the set of lines in 3-dimensional space which<br />

pass through the origin. <strong>Projective</strong> 2-space is the set of one dimensional subspaces<br />

of a 3-dimensional vector space. A plane that does not pass through<br />

the origin is given a special role. It is called the affine plane. A coordinate<br />

system is usually selected so that the affine plane is the plane z =1. The<br />

idea of projective space can be illustrated by considering the intersection of<br />

a cone <strong>and</strong> a plane. The intersection curve is called a conic section. See Fig.<br />

7


1.<br />

When the cone is rotated, the conic section is transformed to a new conic<br />

section. A circle may go into a hyperbola, a parabola, or an ellipse. The<br />

lines on the cone are points of projective 2-space. The intersection of these<br />

lines with the affine plane are the representation of the points in affine space.<br />

However the projective points (i.e. lines) <strong>and</strong> the affine points are to be<br />

considered the same objects, namely 2-dimensional points. The components<br />

of any vector which lies in the subspace representing a projective point, are<br />

called the homogeneous coordinates of the point. Homogeneous coordinates<br />

are determined only up to a scalar multiple. A line in 3-space which is parallel<br />

to the affine plane meets it at infinity. The projective point in the direction<br />

of this line is called a point at infinity. Tts z coordinate will be zero. The<br />

property of being a point at infinity depends on the particular affine plane<br />

selected.<br />

In Fig. 1, if after the cone is rotated to produce an ellipse in the plane,<br />

we fix the plane to the rotated cone <strong>and</strong> then rotate the cone back to its<br />

original position, then we see that we have a perspective projection from the<br />

circle on one plane to an ellipse on a second plane. And we see that such a<br />

perspective projection is essentially the same as the 3d linear transformation,<br />

namely the original rotation of the cone. Again suppose a figure in the<br />

plane is translated in the plane with the lines joining the points of the figure<br />

following the translation. This is clearly a linear transformation of the lines<br />

or more precisely of the vectors in the direction of the lines. The plane figure<br />

would be translated the same if we were to translate the origin or cone vertex<br />

with the translation of the plane figure. So we see that the shifting of the<br />

point of perspective projection is equivalent to a linear transformation of<br />

the 3-d space. So suppose we project a figure from one plane to a second,<br />

<strong>and</strong> then from the second figure to a third figure on a third plane from a<br />

second perspective point. Then we see from what we have said before that<br />

this is equivalent to a set of linear transformations of the fixed 3-d space,<br />

namely rotations, translations <strong>and</strong> possibly a uniform scaling. So the study<br />

of these sequences of perspective projections, which were the original subject<br />

of projective geometry may be studied by considering linear transformations<br />

of one dimensional subspaces of a 3 dimensional vector space, or of a n<br />

dimension vector space in general. One can illustrate this equivalence easily<br />

in the one dimensional case by drawing sequences of perspective projections<br />

of points on lines, <strong>and</strong> then showing how the planes can be lined up parallel<br />

8


Figure 1: Points of projective 2-space are lines in 3-space. A 3-d linear<br />

transformation is a 2-d projective transformation. A rotation of the cone can<br />

project the circle to an ellipse, a parabola, or a hyperbola. In the same way<br />

the lines through any figure in the plane are a projective space representation<br />

of the figure. Any sequence of perspective projections of a figure onto a set of<br />

planes can be represented as a sequence of linear transformations in 3-space.<br />

The plane shown in the figure is known as the affine plane.<br />

9


y rotations <strong>and</strong> translations so that there is a single perspective projection<br />

point, projecting points onto a stack of parallel planes, which by scaling can<br />

be made to coincide.<br />

Now consider a 2-dimensional line. We may view it as a line lying in the<br />

affine plane. The points of this line in projective space, will be the locus of<br />

lines which pass through it <strong>and</strong> the origin. It is a plane in 3-space. Because<br />

any two planes with a point in common must coincide or meet in a line, it<br />

follows that any 2-dimensional lines in projctive space meet in a point. Two<br />

parallel lines meet at a point at infinity. Notice that 2-dimensional projective<br />

space contains more points than affine space, that is it contains the points<br />

at infinity. In two dimensional space an affine transformation is the sum<br />

of a linear transformation <strong>and</strong> a translation. If the linear transformation is<br />

orthogonal (i.e. a rotation) then the affine transformation is a rigid motion<br />

or a congruence. Now any nonsingular linear transformation maps the set of<br />

one dimensional subspaces onto itself. So we may consider such a mapping as<br />

taking 2-dimensional projective points to projective points. Such a mapping<br />

is thus called a projective transformation. These transformations distinguish<br />

euclidean, affine, <strong>and</strong> projective geometry . This is the thesis of Felix Klein.<br />

This is the essence of his famous Erlangen program. He defined a geometry<br />

to be the study of the invariants of a group of transformations. Thus the<br />

concept of angle is a property of euclidean space because angle is invariant<br />

under a rigid motion. Parallelism belongs to affine geometry because it is<br />

preserved under an affine transformation. Being a conic section is a property<br />

of projective geometry, because it is preserved under a projective transformation.<br />

Being an ellipse, however, is not a projective property. There is a<br />

projective transformation that takes an ellipse to a different type of conic<br />

section.<br />

We shall now discuss one of the major reasons for using homogeneous<br />

coordinates for calculations. An affine transformation is a special case of a<br />

projective transformation. Since a projective transformation is in essence a<br />

linear transformation in a higher dimensional space, it can be represented<br />

by a matrix, <strong>and</strong> the transformation of a point may be accomplished with<br />

matrix multiplication. An affine transformation is represented as a matrix<br />

multiplication. There many advantages to using homogeneous coordinates.<br />

<strong>Quadrics</strong> are represented homogeneously as quadratic forms, <strong>and</strong> can be<br />

represented as symmetric matrices. Perspective views are projections from<br />

projective 3-space to projective 2-space. A three dimensional vanishing point,<br />

10


that is a point at infinity, may be projected to a finite two dimensional<br />

point, i.e. the vanishing point of converging railroad tracks. The intersection<br />

point of two lines can be calculated without considering slopes, or without<br />

considering parallelism. That is, the intersection algorithm does not need<br />

to consider exceptional cases, such as the case of an infinite slope. The<br />

intersection of two parallel lines, which gives a point at infinity, does not<br />

require a special case.<br />

The idea of the polar of a point with respect to a quadric plays a large role<br />

in the theory of quadrics. A quadratic form is represented by a symmetric<br />

matrix. There is an associated bilinear form, which is a bilinear functional.<br />

This is A function from a vector product space to a scalar field. A real<br />

bilinear functional is a mapping from the cartesian product of vector spaces<br />

to the real numbers, which is linear in each variable. For a fixed point or pole<br />

p, the polar is the set of points such that the bilinear form corresponding to<br />

the quadric vanishes on any pair of points consisting of p <strong>and</strong> a point from<br />

the set. In two dimensions the polar is a line, in three dimensions it is a<br />

plane. If p is on the surface of the quadric, the polar is the tangent plane.<br />

This gives the normal vector. If p is at infinity, the polar is a diameter of the<br />

quadric.<br />

The cross ratio is an important invariant in projective geometry. It is<br />

ratio of distances between four collinear points. The cross ratio is used to<br />

prove several properties of projective space.<br />

We shall require the intersection of a line <strong>and</strong> a quadric. A line is defined<br />

by any two distinct points, including the case of points at infinity. The intersection<br />

points are determined by the roots of a quadratic equation. There<br />

are several cases: (1) There may be two intersection points, (2) There may<br />

be no real intersection points, (3) There may be a tangent point, <strong>and</strong> (4)<br />

The line may be a ruling. A ruling is a straight line that lies entirely in the<br />

surface of the, quadric. For example, bilinear interpolation on a rectangle<br />

produces a ruled quadric surface.<br />

Conic arcs have been used in various applications of geometry. For example,<br />

they are used in the APT program, which generates machine tool paths.<br />

A conic arc is simply a portion of a conic section. A projective transformation<br />

exists that takes four points to four points. Thus if we desire a given<br />

conic arc defined by four points, we construct the transformation that takes<br />

a given parabola, which is situated so that its points are a function of one<br />

parameter, to the desired arc. Then We have a parametric representation of<br />

11


the arc. One advantage is that sines <strong>and</strong> cosines do not have to be calculated<br />

for the points of a circular arc.<br />

Surface normals can be considered points at infinity. A vector field is<br />

a mapping that assigns a vector to a given point. The surface normal is a<br />

vector field defined on the surface. But this field is really only a direction<br />

field <strong>and</strong> a direction is essentially a point at infinity. Thus we may consider<br />

a surface normal as a point at infinity.<br />

Three dimensional projective space is defined in the same way as 2-<br />

dimensional space. It consists of all 1-dimensional subspaces of a 4-dimensional<br />

vector space. The affine plane becomes a 3-dimensional hyperplane. Since<br />

we can not climb into 4-dimensional space,we can not visualize projective<br />

space from outside as we did in the 2-dimensional case.<br />

Objects are constructed from quadric half-space primitives. There are<br />

only two bounded primitives, namely the sphere <strong>and</strong> the ellipsoid. We create<br />

bounded objects by suitably combining the primitives. To each set corresponds<br />

a characteristic function which takes a value of true or false (or 1 <strong>and</strong><br />

0) on each point of space. Its value at a point x is true if <strong>and</strong> only if x is in<br />

the set. The mapping which takes a set to its characteristic function, union<br />

to ”<strong>and</strong>”, intersection to ”or”, <strong>and</strong> complementation to ”not”, is a Boolean<br />

algebra isomorphism from sets to the algebra of propositional functions. The<br />

latter algebra is represented in computer programming languages. Thus in<br />

our program objects are represented as logical expressions. Actually algebraic<br />

expressions are binary trees [Knuth], so we may consider our object a<br />

binary tree with primitives at the terminal nodes <strong>and</strong> operators at the other<br />

nodes.<br />

We determine the characteristic function of a primitive from the corresponding<br />

quadratic form. Then the characteristic function of the object<br />

comes directly from the definition of the object as a logical expression. Using<br />

topology, we may show that a point is on the surface of the object only if<br />

it is on the surface of some primitive, <strong>and</strong> the normal to the surface at a point<br />

on the surface is equal to the the normal of some primitive. If the surface<br />

point lies on more than one primitive, then either the primitives are tangent,<br />

or they are not. In the former case they have the same normal, in the later<br />

case the point lies on the intersection curve <strong>and</strong> hence is on the boundary<br />

between regions where the normal belongs to one, or to the other primitive.<br />

Eeither can be assigned. Usually when a point lies on several primitives, it is<br />

not important how the normal is assigned since the intersection of the prim-<br />

12


itives will be of measure zero <strong>and</strong> so is negligible in any view or integration.<br />

a slight problem is the specification of the primitives.<br />

Although all primitives are specified by symmetric 4 by 4 matrices, it<br />

may be difficult in practice to determine the coefficients from their ordinary<br />

characterization. The primitives are most easily specified by entities such as<br />

radius, center, major axis, <strong>and</strong> orientation. We know the matrices of certain<br />

well situated primitives. For example, we know the matrix of the sphere<br />

of radius one that has its center at the origin. We may transform a simple<br />

primitive to obtain the matrix of a more complex primitive. Transformations<br />

employed are rotation, scaling, <strong>and</strong> translation. For example, by scaling, the<br />

unit sphere can be made an ellipse. It then can be rotated <strong>and</strong> translated.<br />

the new matrix of the transformed quadric can be obtained by multiplying<br />

the original matrix on the left <strong>and</strong> the right by matrices related to the<br />

transformations.<br />

The motivation for constructing the modeling system was the desire for<br />

a system that would compute the volume, center of gravity <strong>and</strong> the inertia<br />

tensor. Since the characteristic function is available, a Monte Carlo integration<br />

method is suggested. This technique consists in assigning a probability<br />

measure to a bounded space containing the object, <strong>and</strong> then obtaining the<br />

value of the integral as the expectation of some r<strong>and</strong>om variable. For example,<br />

the volume integral is defined as the expectation of the characteristic<br />

function. The expectation is estimated from a r<strong>and</strong>om sample of the r<strong>and</strong>om<br />

variable. In the case of the volume, the variance of the characteristic<br />

function is quite high. Thus a large number of samples is required so that<br />

the sample variance, which is a measure of the error of the estimated integral,<br />

is small. Stratified sampling will often decrease the sampling variance.<br />

In stratified sampling one breaks up the domain into smaller sub domains<br />

so that the variance is smaller in each subdomain. For example, if a small<br />

block is chosen completely inside the object then the variance of the characteristic<br />

function is zero. Likewise the variance of the characteristic function<br />

completely outside the function is zero. Only those blocks which contain<br />

boundary points contribute to the variance. Stratified sampling should decrease<br />

the overall variance <strong>and</strong> so fewer sample points should be required for<br />

the error to be within a given tolerance. When only one point is sampled<br />

from each subdomain we have essentially a Riemann sum for the integral.<br />

in general, the amount of work required to evaluate an integral numerically<br />

is proportional to the number of function evaluations required in one<br />

13


dimension raised to a power equal to the dimension of the space. This is<br />

true at least when the multiple integral is computed by iterated integration.<br />

Hence if 100 function evaluations are required in one dimension, 1,000,000<br />

evaluations are required in three dimensions, so it pays to reduce the dimension.<br />

By applying the divergence theorem the integral over a volume can usually<br />

be reduced to the integral over a surface; so we need a technique for<br />

calculating surface integrals. To integrate on a surface we must have some<br />

model of the surface. In this modeling system we do not have such an explicit<br />

model. We have a multiple surface patch defined by projection. When the<br />

object is projected to two dimensions, to every point in the two dimensional<br />

region corresponds a set of points where the projection line pierces the object.<br />

This defines a multiple valued function.<br />

A manifold is the mathematical generalization of a surface. It is a space<br />

together with a set of coordinate systems or surface patches. For a two<br />

dimensional manifold, a surface patch is a 1-1 mapping from the manifold to<br />

an open set in 2-dimensional euclidian space. A complete set of patches that<br />

covers the manifold is called an atlas. The projections from several projection<br />

points of an object will be a set of patches that completely cover the surface<br />

of the object. However, when we include all pierce points, these mappings are<br />

not 1-1, so are not legitimate coordinate systems. Still we can do integration<br />

on these multilayer patches, because integration is loosely an adding up of<br />

all infinitesimal surface elements, <strong>and</strong> we may add the elements in any order.<br />

We can add the elements corresponding to pierce points of a given projection<br />

line all at once. There is a difficulty, the set of patches that define a manifold<br />

are not disjoint, so that when we add the results of integrating each patch,<br />

we may well be adding a given surface element many times. We need a<br />

partition of unity. A partition of unity is a set of weighting functions applied<br />

to each patch so that the sum of the weighted patch integrals is the whole<br />

surface integral [Spivak]. When our surface patches derive from projections<br />

in the x, y, <strong>and</strong>z directions a natural partition of unity is the set of squares<br />

of the components of the surface normal vectors. The individual layers of<br />

each view must be considered as separate patches. So we have reduced our<br />

task to the calculation of a two dimensional integration over a rectangular<br />

domain. the integr<strong>and</strong> will in general be discontinuous <strong>and</strong> we must choose a<br />

suitable integration algorithm. Gaussian quadrature is not suitable because<br />

the integr<strong>and</strong> will be discontinuous. The generalized trapezoid method will<br />

14


work, but may require more calculation <strong>and</strong> give less accuracy than necessary.<br />

Because the moment of inertia about any axis can be obtained from the<br />

inertia tensor, it is economical to compute the full inertia tensor rather than<br />

just the moments of inertia. There are two different tensors that are called<br />

the inertia tensor. One definition is given in mathematics books, <strong>and</strong> another<br />

in some physics books. In order to clarify what is being calculated, I have<br />

included material concerning angular momentum, angular velocity, moment<br />

of inertia, <strong>and</strong> their relation to the inertia tensor. In the next section I will<br />

begin a more detailed treatment of the material.<br />

3 <strong>Projective</strong> <strong>Space</strong> <strong>and</strong> the Conic Sections<br />

<strong>Projective</strong> geometry is related to the theory of perspective. Perspective was<br />

developed by the Italian painters during the renaissance. To explain perspective,<br />

consider the eye as the origin in a 3-dimensional coordinate system.<br />

Let a ray go out from the eye. Suppose this ray impinges on some object at<br />

a point. In some sense, the ray represents the point. Let a picture plane be<br />

interposed between the eye <strong>and</strong> the object. Then the point where the ray<br />

intersects the picture plane is the projection of the object point to its picture<br />

image. Through this process, three dimensional space is projected to two<br />

dimensional space. The concern of the artist is to accurately represent the<br />

object as it appears to the eye. The artist is concerned with the appearance<br />

of parallel lines <strong>and</strong> vanishing points. Vanishing points are the images of<br />

points <strong>and</strong> lines that are infinitely far away. Such points are called points<br />

at infinity. Spatial points at infinity will be discussed in the section on perspective.<br />

Here we confine ourselves to the two dimensional case. the artist<br />

Albrect Durer, who dabbled a bit in geometry (see Panofsky) ,constructed a<br />

device for recording the perspective image of an object in the picture plane<br />

by recording the position on the plane of a chord stretched from a fixed point<br />

to a point on the object. This device appears in one of Durer’s works <strong>and</strong><br />

may be familiar to the reader. The idea of projective geometry is to consider,<br />

the chord, or more accurately the mathematical ray, as representing a two<br />

dimensional point.<br />

projective space is formally defined as the set of 1-dimensional subspaces<br />

of a vector space. it can be illustrated by considering those plane curves<br />

which are called conic sections. Figure 1 shows a cone with its axis in the z<br />

15


direction, <strong>and</strong> with a 90 degree vertex angle.<br />

This cone meets the plane z = 1 in a circle. A point on the surface of the<br />

cone satisfies the equation<br />

x 2 + y 2 − z 2 =0<br />

Thecircleintheplanehastheequation<br />

x 2 + y 2 − 1=0<br />

The first equation can be written as<br />

⎡<br />

[ ]<br />

x y z<br />

⎢<br />

⎣<br />

1 0 0<br />

0 1 0<br />

0 0 −1<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

x<br />

y<br />

z<br />

⎤<br />

⎥<br />

⎦ =0<br />

P T AP =0<br />

<strong>and</strong><br />

where<br />

A =<br />

P =<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

x<br />

y<br />

x<br />

⎤<br />

⎥<br />

⎦<br />

1 0 0<br />

0 1 0<br />

0 0 −1<br />

⎤<br />

⎥<br />

⎦<br />

The function Q(P )=P t AP is a quadratic form. The cone is the set<br />

S(Q) ={P : Q(P )=0}.<br />

Let L be a nonsingular linear transformation with matrix B.<br />

Then L maps the set S(Q) to<br />

L(S(Q)) = {P : Q(L −1 P )=0}<br />

= {P :(B −1 P ) T A(B −1 P )=0}<br />

16


= {P : P T (B −1 ) T A(B −1 P )=0}<br />

= {P :(B −1 P ) T A(B −1 P )=0}<br />

= {P : L(Q)P =0}.<br />

where L(Q)(P ) = Q(L −1 (p)). L(Q) is a quadratic form with symmetric<br />

matrix<br />

(B −1 ) T AB −1 .<br />

Let L be the transformation of a rotation about the x-axes by an angle a.<br />

Let cos(a) =c <strong>and</strong> sin(a) =s. Then the matrix of L is<br />

B =<br />

⎡<br />

⎢<br />

⎣<br />

1 0 0<br />

0 c s<br />

0 −s c<br />

⎤<br />

⎥<br />

⎦<br />

<strong>and</strong> B −1 = B T =<br />

⎡<br />

⎢<br />

⎣<br />

1 0 0<br />

0 c −s<br />

0 s c<br />

⎤<br />

⎥<br />

⎦<br />

Then L(Q) has matrix<br />

⎡<br />

⎢<br />

⎣<br />

1 0 0<br />

0 c<br />

0 −s c<br />

=<br />

⎡<br />

⎢<br />

⎣<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

1 0 0<br />

0 c<br />

0 −s c<br />

=<br />

1 0 0<br />

0 1 0<br />

0 0 −1<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

1 0 0<br />

0 c −s<br />

0 s c<br />

⎤ ⎡<br />

1 0 0<br />

⎥ ⎢<br />

⎦ ⎣ 0 c −s<br />

0 −s −c<br />

⎤<br />

1 0 0<br />

0 c 2 − s 2 ⎥<br />

−2cs ⎦<br />

0 −2cs s 2 − c 2<br />

When the angle a is 45 degrees, the matrix of L(Q) is<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

1 0 0<br />

0 0 −1<br />

0 −1 0<br />

17<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />


The equation of the rotated cone is<br />

⎡<br />

[ ]<br />

x y z<br />

⎢<br />

⎣<br />

1 0 0<br />

0 0 −1<br />

0 −1 0<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

x<br />

y<br />

z<br />

⎤<br />

⎡<br />

⎥<br />

⎦ = [ x y z ] ⎢<br />

⎣<br />

= x 2 − 2yz =0.<br />

The equation of its intersection with the plane z =1is<br />

or<br />

x 2 − 2y =0.<br />

x<br />

−z<br />

−y<br />

y = x2<br />

2 .<br />

This is the equation of a parabola.<br />

When the angle a is 90 degrees, the equation of the cone becomes<br />

⎡<br />

[ ]<br />

x y z<br />

⎢<br />

⎣<br />

1 0 0<br />

0 −1 0<br />

0 0 1<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

= x 2 − y 2 + z 2 =0.<br />

The equation of its intersection with the plane z =1is<br />

y 2 − x 2 =1.<br />

This is the equation of a hyperbola. the plane that cuts the cone is called<br />

the affine plane. for each point in the plane there is a corresponding line<br />

which passes through the point <strong>and</strong> through the origin. The set of lines<br />

that pass through the origin is called projective space. Each line is considered<br />

a point of the space. Those points in projective space ( i.e. lines in<br />

3-dimensional Euclidean space) that are parallel to the affine plane are called<br />

points at infinity, because they meet the plane only at infinity. There are<br />

more projective points than affine points. The coordinates of any vector in<br />

the direction of a line which passes through the origin are the homogeneous<br />

coordinates of the projective point represented by the line. Because the coordinates<br />

of any scalar multiple of the vector are also homogeneous coordinates<br />

18<br />

x<br />

y<br />

z<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />

⎦ .


of the projective point, homogeneous coordinates are determined only up to<br />

a scalar multiple. So (1, 2, 3) <strong>and</strong> (2, 4, 6) are homogeneous coordinates of<br />

the same point. A point at infinity has coordinates of the form (x, y, 0). If a<br />

point with coordinates (x, y, z) is not an ideal point ( e.g. a point at infinity),<br />

then its affine coordinates are (x/z, y/z).<br />

One of the properties of projective space is that every pair of distinct<br />

lines meet in exactly one point. By a line we mean the locus of points that<br />

satisfy an homogeneous equation of the form<br />

ax + by + cz =0.<br />

The corresponding affine equation is<br />

ax + by + c =0.<br />

Then lines which are parallel in the affine plane meet at a point at infinity.<br />

For example, the parallel lines with affine equations<br />

<strong>and</strong><br />

ax + by + c =0.<br />

ax + by + d =0.<br />

meet at the point, which has coordinates (−b, a, 0). Affine rotations <strong>and</strong><br />

translations are represented as linear transformations in projective space. A<br />

rotation has matrix<br />

R =<br />

⎡<br />

⎢<br />

⎣<br />

cos(a) sin(a) 0<br />

− sin(a) cos(a) 0<br />

0 0 1<br />

⎤<br />

⎥<br />

⎦<br />

Thus<br />

⎡<br />

⎢<br />

⎣<br />

cos(a) sin(a) 0 x<br />

− sin(a) cos(a) 0 y<br />

0 0 1 1<br />

⎤<br />

⎥<br />

⎦ .<br />

= [ cos(a)x +sin(a)y = − sin(a)x +cos(a)y1 ] .<br />

19


The following calculation represents an affine translation<br />

⎡<br />

⎤ ⎡ ⎤<br />

1 0 a x x + a<br />

⎢<br />

⎥ ⎢ ⎥<br />

Tp = ⎣ 0 1 b y ⎦ = ⎣ y + b ⎦ .<br />

0 0 1 1 1<br />

The product of the two matrices above then both rotates <strong>and</strong> translates.<br />

This shows how affine transformations can be calculated using homogeneous<br />

coordinates.<br />

A projective point is a set of all scalar multiples of a vector. It is a one<br />

dimensional subspace of a vector space. In general, projective n-space is<br />

the set of 1-dimensional subspaces contained in a vector space of dimension<br />

n + 1. The nonsingular linear transformations on the vector space map<br />

the set of 1-dimensional subspaces onto themselves. These linear mappings<br />

are called projective transformations when they are applied to projective<br />

space. Considering the previous example, it is easy to see that an affine<br />

transformation is a special case of a projective transformation.<br />

We now introduce quadratic forms. Let A be a symmetric matrix <strong>and</strong> let<br />

p be a coordinate vector.<br />

p =<br />

⎡<br />

⎢<br />

⎣<br />

x<br />

y<br />

z<br />

⎤<br />

⎥<br />

⎦ .<br />

Then P T AP is a quadratic form. For example, if<br />

⎡ ⎤<br />

1 2 3<br />

⎢ ⎥<br />

A = ⎣ 2 4 5 ⎦ .<br />

3 5 6<br />

Then<br />

P T AP = x 2 +4y 2 +6z 2 +4xy +6xz +10yz.<br />

All quadratic forms can be obtained in this way. Corresponding to each<br />

quadratic form is an associated bilinear form or tensor of rank two. It is a<br />

function of two vector variables <strong>and</strong> is linear in each. It is given as<br />

B(P, Q) =P T AQ.<br />

20


A conic section S is the set of zeroes of a quadratic form in 2-dimensional<br />

space. Thus<br />

S = {vP : P T AP =0}.<br />

Given a point Q, thepolarofQ with respect to a quadric represented by a<br />

matrix A is the following set.<br />

{P : B(P, Q) =0}.<br />

Since the equation is linear, the polar of a point is a line in the two dimensional<br />

case, <strong>and</strong> a plane in the three dimensional case. Directly from the<br />

definition it is seen that P is on the polar of Q if <strong>and</strong> only if Q is on the<br />

polar of P . Properties of the polar can be obtained by using the concept of<br />

the cross ratio of four collinear points.<br />

4 The Cross Ratio<br />

Given four collinear points in affine space, the cross ratio is defined in terms<br />

of the directed distances between the points. Affine space is embedded in<br />

projective space <strong>and</strong> the cross ratio can be extended to apply to the points<br />

of this space. It can be defined without the non-projective concept of distance.<br />

The importance of cross ratio is that it is invariant under projective<br />

transformations. Before we define the cross ratio a few remarks on notation<br />

are in order. a point may refer to several distinct concepts. a point may<br />

be an n + 1 dimensional vector, or it may be the span of such a vector,<br />

that is the 1-dimensional subspace generated by the vector, or it may be the<br />

corresponding affine point which is the intersection of the subspace with the<br />

affine hyperplane. To complicate things further, we must distinguish between<br />

a vector <strong>and</strong> its corresponding coordinate vector. Its coordinates depend on<br />

the chosen basis of the vector space. To distinguish all of these things would<br />

result in too many symbols. So we will use the same symbols for all of the<br />

above ideas <strong>and</strong> hope that context will give the desired meaning. For example,<br />

if we add two points, they are vectors, because addition is not defined for<br />

projective points. Division of vectors has no meaning in general, but if one<br />

vector is a multiple of another, then their quotient has an obvious meaning.<br />

We shall use this meaning below.<br />

21


Let A, B, C, <strong>and</strong> D be four collinear points. In affine space we define the<br />

cross ratio as<br />

d(C, A)/d(C, B)<br />

(AB, CD) =<br />

(d(D, A)/d(D, B) ,<br />

where d(X, Y ) is a directed distance from X to Y. Now let A, B, C, <strong>and</strong> D be<br />

vectors representing the points. Then numbers a <strong>and</strong> b can be found so that<br />

aC <strong>and</strong> bD lie on the straight line connecting A <strong>and</strong> B. Then there exists a<br />

t such that<br />

aC =(1− t)A + tB.<br />

<strong>and</strong><br />

Then<br />

It follows that if<br />

then<br />

then<br />

Similarly if<br />

So the cross ratio is<br />

aC − B =(1− t)A − (1 − t)B.<br />

d(C, A)/d(C, B) =(A − aC)/(B − aC) =−t/(1 − t).<br />

(AB, CD) =<br />

C = c 1 A + c 2 B,<br />

d(C, A)/d(C, B) =−c 2 /c 1<br />

D = d 1 A + d 1 B,<br />

d(D, A)/d(D, B) =−d 2 /d 1 .<br />

d(C, A)/d(C, B)<br />

(d(D, A)/d(D, B) =(c 2/c 1 )/(d 2 /d 1 )=(c 2 d 1 )/(c 1 d 2 ).<br />

This ratio is independent of which representative vectors are chosen for the<br />

points. For example, if A is replaced by a new vector that is a multiple of<br />

A, thenc 1 <strong>and</strong> d 1 are multiplied by the same scalar. So the cross ratio is not<br />

changed. Thus the cross ratio is defined independently of a distance function.<br />

That is it is defined independently of a metric.<br />

Therefore the distance independent projective definition of the cross ratio<br />

of points (AB, CD), of the projective points A, B, C, D, is defined in the<br />

22


following way. If A, B, C, D are any vector representations of the projective<br />

points, where<br />

C = c 1 A + c 2 B,<br />

<strong>and</strong><br />

D = d 1 A + d 1 B,<br />

then the cross ratio (AB, CD) is defined as<br />

(AB, CD) =(c 2 /c 1 )/(d 2 /d 1 )=(c 2 d 1 )/(c 1 d 2 ).<br />

The preservation of the cross ratio by a projective transformation follows<br />

because a projective transformation is a linear transformation of the vector<br />

space of dimension n +1.<br />

Proposition. A projective transformation preserves the cross ratio.<br />

Proof. Let A, B, C, <strong>and</strong> D be representative vectors of four distinct collinear<br />

points. Suppose<br />

C = c 1 A + c 2 B<br />

<strong>and</strong><br />

D = d 1 A + d 2 B.<br />

Then if L is the linear transformation corresponding to the given projective<br />

transformation we have<br />

L(C) =c 1 L(A)+c 2 L(B)<br />

<strong>and</strong><br />

L(D) =d 1 L(A)+d 2 L(B).<br />

So the points L(A),L(B),L(C), <strong>and</strong> L(D) have the same cross ratio. A set<br />

of collinear points is called a range of points. A range of four points is called<br />

a harmonic range when its cross ratio equals -1. The name harmonic range<br />

can be explained in the following way. Suppose the distance from A to C is<br />

1/3, the distance from B to C is -1/6, <strong>and</strong> the distance from B to D is 1/2.<br />

Then the cross ratio is -1, so the points constitute a harmonic range. the<br />

distance from A to D is 1,the distance from A to B is 1/2, <strong>and</strong> the distance<br />

from A to C is 1/3. Vibrating strings of these lengths produce the first,<br />

second, <strong>and</strong> third harmonic tones.<br />

ApointQ is called the harmonic conjugate of P with respect to A <strong>and</strong><br />

B when (AB, P Q) =−1.<br />

23


Proposition If a line through P meets a quadric at A <strong>and</strong> B, then the<br />

harmonic conjugate Q lies on the polar of P .<br />

Proof Suppose P = pA + pB <strong>and</strong> Q = qA + qB, thenpq = −pq, so<br />

<strong>and</strong><br />

Subtracting, we find<br />

Similarly<br />

qP = qpA + qpB<br />

pQ = pqA + pqB<br />

A =(1/2)(P/p + Q/q).<br />

B =(1/2)(P/p + Q/q).<br />

Let f be the bilinear form defied by the quadric. Since A is on the quadric,<br />

we have<br />

Similarly<br />

0=f(A, A) =(q/p)f(P, P)+2(q/p)f(P, Q)+f(Q, Q).<br />

0=(q/p)f(P, P)+2(q/p)f(P, Q)+f(Q, Q).<br />

Subtracting <strong>and</strong> noting that q/p = −q/p, we find that f(P, Q) must be zero.<br />

This means that Q is on the polar of P<br />

Corollary. If a line through P is tangent to a quadric at Q, thenQ is on<br />

the polar of P .<br />

Informal Proof. Rotate the line through P slightly, if necessary, so that<br />

it intersects the quadric in two points that are nearly equal. The harmonic<br />

conjugate of P is between these two points, <strong>and</strong> from our discussion above,<br />

it is on the polar of P. As the line approaches the tangent line, this point<br />

approaches Q.<br />

Construction. To construct a tangent to a conic from a point P , find the<br />

intersection of the conic with the polar of P.<br />

Corollary. The locus of the harmonic conjugates of p with respect to the<br />

intersection points of lines through p with the conic is the polar of P .<br />

Example.<br />

In Fig. 2 lines PQ <strong>and</strong> PR are tangent to the ellipse. We conclude that<br />

Q <strong>and</strong> R are on the polar of P Thus the line defined by Q <strong>and</strong> R is the polar<br />

24


P<br />

Q<br />

S<br />

P’<br />

R<br />

Figure 2: Let lines PQ <strong>and</strong> PR be tangent to the ellipse. Tangent points Q<br />

<strong>and</strong> R are on the polar of P . Thus the line defined by Q <strong>and</strong> R is the polar<br />

of P . Intersection point S is on both the polar of P <strong>and</strong> the polar of P ′ .<br />

Thus the polar of S is the line through P <strong>and</strong> P ′ .<br />

25


of P . It also follows that S is on both the polar of P <strong>and</strong> the polar of P ′ .<br />

Thus the polar of S is the line through P <strong>and</strong> P ′ .<br />

A diameter of a quadric is the polar of a point at infinity. thus ”diameter”<br />

is an affine idea because ”point at infinity” only makes sense when some affine<br />

hyperplane has been identified. We may represent a line through P <strong>and</strong> Q by<br />

P + tQ where the parameter t varies from minus to plus infinity. t equal to<br />

infinity corresponds to the point Q. Wemaythinkofthisasthelinethrough<br />

P in the direction Q. When a line meets a quadric in two finite intersection<br />

points R <strong>and</strong> S, the line segment from R to S is called the chord determined<br />

by the line. A diameter in the direction Q is the polar of Q where Q is a<br />

point at infinity.<br />

Consider the intersection of the line P + tQ with a quadric. There are<br />

several cases. Let the bilinear form be f. Then<br />

There are four cases:<br />

Case 1.<br />

0=f(P + tQ, P + tQ)<br />

= f(P, P)+2tf(P, Q)+t 2 f(Q, Q)<br />

P (Q, Q) =0,f(P, Q) ≠0.<br />

Q is one intersection point. The parameter of the other is<br />

Case 2.<br />

t = −f(P, P)/(2f(P, Q)).<br />

f(Q, Q) =0,f(P, Q) =0,f(P, P) ≠0.<br />

The two intersection points coincide. They equal Q.<br />

Case 3.<br />

f(Q, Q) =0,f(P, Q) =0,f(P, P) =0<br />

The line is a ruling. All points lie on the conic.<br />

Case 4.<br />

p(Q, Q) ≠0.<br />

There are two roots, which may be real or complex, <strong>and</strong> may coincide.<br />

Proposition. A diameter in the direction Q bisects all chords in the direction<br />

Q.<br />

26


Proof. Since Q is a point at infinity, <strong>and</strong> the line determines a chord with<br />

two finite intersection points R <strong>and</strong> S, from above we must have f(Q, Q)o0.<br />

For otherwise, Q would be an intersection point. Using the quadratic formula<br />

for the two roots, substituting in P + tQ, adding <strong>and</strong> dividing by two, we<br />

find<br />

(R + S)/2 =P − (f(P, Q)/f(Q, Q))Q.<br />

Then<br />

f((R + S)/2),Q)=f(P, Q) − f(P, Q)f(Q, Q)/f(Q, Q) =0<br />

So the midpoint of the chord lies on the polar of Q, which is the diameter<br />

determined by Q.<br />

Example. Consider the parabola x − 2yz =0. Let<br />

p =<br />

⎡<br />

⎢<br />

⎣<br />

x<br />

y<br />

z<br />

⎤<br />

⎥<br />

⎦ .<br />

Then P T AP is a quadratic form. For example, if<br />

⎡ ⎤<br />

1 2 3<br />

⎢ ⎥<br />

A = ⎣ 2 4 5 ⎦ .<br />

3 5 6<br />

<strong>and</strong><br />

Thematrixofthisconicis<br />

A =<br />

P =<br />

Q =<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

0<br />

0<br />

1<br />

0<br />

1<br />

0<br />

⎤<br />

⎥<br />

⎦ .<br />

⎤<br />

⎥<br />

⎦ .<br />

1 0 0<br />

0 0 −1<br />

0 −1 0<br />

⎤<br />

⎥<br />

⎦ .<br />

27


Q<br />

P<br />

Figure 3: The parabola x − 2yz = 0 <strong>and</strong> a point at infinity Q. The line<br />

through P <strong>and</strong> Q meets the parabola at P <strong>and</strong> Q. The polar of a point at<br />

infinity is a diameter. The polar of Q is the line at infinity.<br />

28


Q does not determine a chord because the line does not meet the conic in<br />

two finite intersection points. In fact Q, which is a point at infinity, lies on<br />

the conic. The polar of Q has line coordinates given by<br />

QA =(0, 0, −1).<br />

The equation of the polar of Q, which is a diameter of the parabola is<br />

−z =0<br />

This is the line at infinity.<br />

Example. Consider the same parabola as above, but let<br />

Q =<br />

⎡<br />

⎢<br />

⎣<br />

See Fig. 4. Then the polar of Q has equation x − z =0. Thus the affine<br />

equation of the diameter corresponding to Q is x =1.<br />

1<br />

1<br />

0<br />

⎤<br />

⎥<br />

⎦ .<br />

5 The Tangent Line<br />

Let P <strong>and</strong> Q be distinct points. Let P be on the conic.<br />

Proposition. P + tQ is tangent to the conic at P if <strong>and</strong> only if f(P, Q) =0.<br />

Proof. First suppose P + tQ is tangent at P. Then the intersection points<br />

coincide <strong>and</strong> they equal P, because P is on the quadric f(P, P) =0. But the<br />

intersection equation is then<br />

<strong>and</strong> its roots must be zero. So<br />

2tf(P, Q)+tf(Q, Q) =0,<br />

f(P, Q) =0.<br />

Now suppose f(P, Q) =0. It is given that f(P, P) =0. The intersection<br />

equation is<br />

tf(Q, Q) =0.<br />

29


Q<br />

P<br />

Figure 4: The parabola x−2yz = 0 <strong>and</strong> a point at infinity Q =(1, 1, 0). The<br />

line through P <strong>and</strong> Q meets the parabola at two finite points. The polar of<br />

Q is the line x = 1, which is a diameter of the parabola. The point at in<br />

finity in the diagram is represented as an arrow in the direction of the infinity<br />

point Q.<br />

30


If f(Q, Q) ≠ 0, then the roots of the equation are zero. So P is a double<br />

intersection point. If f(Q, Q) = 0, then the line is a ruling. Hence in both<br />

cases the line is the tangent line.<br />

Corollary. The tangent line P + tQ at P is the polar of P .<br />

Proof. Since the line passes through P ,wehavef(P, P) =0soP is on the<br />

polar of P .Fromabovef(P, Q) =0soQ is on the polar of P. Therefore the<br />

line through P <strong>and</strong> Q is the polar of P.<br />

We have taken the tangent line as the line that intersects the conic at<br />

two coinciding points. With this definition the tangent line does not have<br />

points on both sides of the conic curve. For consider the set of points where<br />

f(P, P) < 0, <strong>and</strong> the set where f(P, P) > 0. These sets are bounded by<br />

the conic curve. We may consider one of them the inside, <strong>and</strong> the other, the<br />

outside of the curve. Suppose P <strong>and</strong> Q are on opposite sides of the conic.<br />

then f(P, P)f(Q, Q) < 0. Then the intersection equation of the line through<br />

P <strong>and</strong> Q has positive discriminant. So the line meets the conic in two real<br />

points that do not coincide. Hence the line through P <strong>and</strong> Q is not a tangent<br />

line.<br />

If the point Q is on the polar of P ,then<br />

Suppose<br />

f(P, Q) =P T AQ =0.<br />

P T A =(a, b, c),<br />

Q =<br />

⎡<br />

⎢<br />

⎣<br />

Then the first vector is called the line coordinate vector. The equation of<br />

the polar is<br />

x<br />

y<br />

z<br />

⎤<br />

⎥<br />

⎦ .<br />

ax + by + cz =0.<br />

The 2-dimensional vector<br />

[<br />

a<br />

b<br />

]<br />

,<br />

31


<strong>and</strong><br />

is normal to the line. For if<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

x 1<br />

y 1<br />

1<br />

x 2<br />

y 2<br />

1<br />

⎤<br />

⎥<br />

⎦ ,<br />

⎤<br />

⎥<br />

⎦ ,<br />

1 are on the line, then we have by subtraction<br />

(x − x)a +(y − y)b =0.<br />

Example. Consider the hyperbola<br />

x 2 − y 2 =1.<br />

Let<br />

<strong>and</strong><br />

Q =<br />

P =<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

1<br />

1<br />

0<br />

0<br />

0<br />

1<br />

⎤<br />

⎥<br />

⎦ ,<br />

⎤<br />

⎥<br />

⎦ .<br />

Then<br />

f(q, q) =f(p, q) =0.<br />

The equation of the tangent line at the ideal point Q is x−y =0, because<br />

AQ =(1, −1, 0).<br />

The tangent line is an asymptote of the hyperbola.<br />

The set of centers is the intersection of all diameters. So P is a center<br />

if f(P, Q) = 0 for all ideal points Q. Thus the set of centers is the set of all<br />

points P such that<br />

32


AP =<br />

⎡<br />

⎢<br />

⎣<br />

0<br />

0<br />

1<br />

⎤<br />

⎥<br />

⎦ .<br />

If A is nonsingular, than the conic has only one center.<br />

Example. Consider the conic<br />

(x − 1) 2 + y 2 =1.<br />

Itsmatrixis<br />

A =<br />

⎡<br />

⎢<br />

⎣<br />

1 0 −1<br />

0 1 0<br />

−1 0 0<br />

⎤<br />

⎥<br />

⎦ .<br />

Hence the center is x =1,y =0,z =1.<br />

6 Computing A Canonical Representation<br />

Suppose the conic is given in matrix form as<br />

where A is a symmetric matrix<br />

E = {p : p ∗ Ap =0},<br />

⎡<br />

⎤<br />

a 11 a 12 a 13<br />

⎢<br />

⎥<br />

A = ⎣ a 21 a 22 a 23 ⎦ .<br />

a 31 a 32 a 33<br />

The computations that will be described here, are realized in program<br />

pltconic.ftn.<br />

We shall put E into canonical form by mapping the locus with a rotation<br />

through an angle θ, followed by a translation by (t 1 ,t 2 ). The combined<br />

transformation has matrix<br />

T =<br />

⎡<br />

⎢<br />

⎣<br />

c −s t 1<br />

s c t 2<br />

0 0 1<br />

33<br />

⎤<br />

⎥<br />


The inverse of T is<br />

R =<br />

⎡<br />

⎢<br />

⎣<br />

c s e<br />

−s c f<br />

0 0 1<br />

⎤<br />

⎥<br />

⎦<br />

where<br />

e = −(t 1 c + t 2 s)<br />

f = t 1 s − t 2 c<br />

The mapping of the conic locus is<br />

T (E) ={Tp : p ∗ Ap =0}<br />

= {q :(Rq) ∗ ARq =0}<br />

= {q : q ∗ R ∗ ARq =0}<br />

where B is the symmetric matrix<br />

= {q : q ∗ Bq =0},<br />

R ∗ AR.<br />

Let the determinant of A be d 3 . Let the determinant of the upper 2 by 2<br />

submatrix be d 2 . The determinants of R <strong>and</strong> R ∗ are each equal to 1, so the<br />

determinant of B is also d 3 . Also for the same reason the transformation<br />

preserves d 2 . We will show that if d 3 = 0, then the conic is degenerate, <strong>and</strong><br />

the conic locus is a line, a pair of parallel lines, a pair of intersecting lines,<br />

apoint,orisempty. Ifd 3 is not zero, then if d 2 < 0 it is a hyperbola, if<br />

d 2 = 0 it is a parabola, <strong>and</strong> if d 2 > 0<strong>and</strong>d 3 < 0, it is an ellipse. if d 2 > 0<br />

<strong>and</strong> d 3 > 0 it is the empty set.<br />

The coefficients of B are<br />

b 11 =(ca 11 − sa 12 )c − (ca 12 − sa 22 )s<br />

34


12 =(ca 11 − sa 12 )s +(ca 12 − sa 22 )c<br />

b 13 =(ca 11 − sa 12 )e +(ca 12 − sa 22 )f + ca 13 − sa 23<br />

b 22 =(sa 11 + ca 12 )s +(sa 12 + ca 22 )c<br />

b 23 =(sa 11 + ca 12 )e +(sa 12 + ca 22 )f + sa 13 + ca 23<br />

b 33 =(ea 11 + fa 12 + a 13 )e +(ea 12 + fa 22 + a 23 )f + ea 13 + fa 23 + a 33<br />

Notice that<br />

= a 11 e 2 +2a 12 ef + a 22 f 2 +2a 13 e +2a 23 f + a 33 .<br />

b 33 =(e, f, 1)A(e, f, 1) ∗ .<br />

We shall choose θ so that b 12 is zero. We have<br />

b 12 =(c 2 − s 2 )a 12 + sc(a 11 − a 22 )=0.<br />

That is<br />

0=a 12 cos(2θ)+(1/2)(a 11 − a 22 )sin(2θ).<br />

So the rotation angle is determined by<br />

tan(2θ) = 2a 12<br />

a 22 − a 11<br />

.<br />

Thus<br />

Let us write<br />

2θ = atan2(2a 12 ,a 22 − a 11 ).<br />

b 13 = c 11 e + c 12 f − g 1<br />

where<br />

b 23 = c 21 e + c 22 f − g 2 ,<br />

35


c 11 =(ca 11 − sa 12 )<br />

c 12 =(ca 12 − sa 22 )<br />

c 21 =(sa 11 + ca 12 )<br />

c 22 =(sa 12 + ca 22 )<br />

g 1 = −(ca 13 − sa 23 )<br />

g 2 = −(sa 13 + ca 23 )<br />

For purposes of classification, the transformation can be done in two steps,<br />

a pure rotation where,<br />

e =0,f =0,<br />

followed by a pure translation, where the rotation angle is zero.<br />

If the rotation angle is zero, then<br />

c 11 = a 11<br />

c 12 = a 12<br />

c 21 = a 12<br />

c 22 = a 22 )<br />

g 1 = −a 13<br />

g 2 = −a 23 .<br />

After such a pure rotation, it is easy to see the conic type from the<br />

properties of the coefficients, where the xy cross term is absent.<br />

But here let us return to the single step transformation. We can make<br />

b 13 =0<strong>and</strong>b 23 = 0, if we can find e <strong>and</strong> f so that<br />

c 11 e + c 12 f = g 1<br />

c 21 e + c 22 f = g 2 .<br />

We have a linear equation to solve for e <strong>and</strong> f.<br />

The determinant of this system is<br />

36


d 2 = a 11 a 22 − a 2 12 .<br />

Because the upper 2 by 2 subdeterminant of R <strong>and</strong> R T is 1, d 2 also equals<br />

b 11 b 22 − b 2 12 = b 11b 22 .<br />

If d 2 = 0, then the quadric is neither an ellipse nor a hyperbola.<br />

If d 2 is not zero, then using the values of e <strong>and</strong> f that make b 13 <strong>and</strong> b 23<br />

zero, we<br />

find that the matrix of the transformed canonical form is<br />

⎡<br />

⎤<br />

b 11 0 0<br />

⎢<br />

⎥<br />

B = ⎣ 0 b 22 0 ⎦ .<br />

0 0 b 33<br />

If d 2 = 0, then we can not necessarily choose the translation (e, f) sothat<br />

b 13 =0<strong>and</strong>b 23 = 0. In these cases, either b 11 or b 22 is zero.<br />

Suppose one of b 11 <strong>and</strong> b 22 is zero.<br />

In this case we have three equations<br />

b 13 = c 11 e + c 12 f − g 1<br />

b 23 = c 21 e + c 22 f − g 2<br />

b 33 =(e, f, 1)A(e, f, 1) ∗ .<br />

A related set of equations obtained by setting the b coefficients to zero is<br />

0=c 11 e + c 12 f − g 1<br />

0=c 21 e + c 22 f − g 2<br />

0=(e, f, 1)A(e, f, 1) ∗ .<br />

We claim that if b 11 is not zero, then the 1st <strong>and</strong> 3rd equation of the<br />

set have a solution. If b 22 is not zero, then the 2nd <strong>and</strong> 3rd equations of<br />

the set have a solution. This follows by examining the component transformations,<br />

by first applying the rotation, then the translation. Finding the<br />

37


translation is equivalent to completing squares. For example, it is equivalent<br />

to transforming the terms like<br />

into terms like<br />

k 1 x 2 + k 2 x<br />

k 1 (x + m 1 ) 2 + m 2 .<br />

Solving the first or second equation, simultaneously with the third equation<br />

is equivalent to finding a finite intersection point<br />

(e, f, 1)<br />

of a line <strong>and</strong> the conic.<br />

This is the intersection of the line with coordinates (c 11 ,c 12 , −g 1 ), with<br />

the conic A.<br />

Suppose b 11 is not zero, <strong>and</strong> b 22 =0.<br />

Solving the first <strong>and</strong> third equation for e <strong>and</strong> f gives us the canonical<br />

matrix<br />

⎡<br />

⎢<br />

B = ⎣<br />

b 11 0 0<br />

0 0 b 23<br />

0 b 23 0<br />

Suppose b 22 is not zero, <strong>and</strong> b 11 = 0. Solving the second <strong>and</strong> third<br />

equation for e <strong>and</strong> f gives us the canonical matrix<br />

B =<br />

⎡<br />

⎢<br />

⎣<br />

0 0 b 13<br />

0 b 22 0<br />

b 13 0 0<br />

⎤<br />

⎥<br />

⎦ .<br />

⎤<br />

⎥<br />

⎦ .<br />

So we have shown that after our transformation, the conics have four<br />

st<strong>and</strong>ard forms. They are:<br />

Form 1:<br />

⎡<br />

Form 2:<br />

B =<br />

⎢<br />

⎣<br />

⎤<br />

b 11 0 0<br />

⎥<br />

0 b 22 0 ⎦ .<br />

0 0 b 33<br />

38


⎡<br />

⎢<br />

B = ⎣<br />

b 11 0 0<br />

0 0 b 23<br />

0 b 23 0<br />

⎤<br />

⎥<br />

⎦ .<br />

Form 3:<br />

Form 4:<br />

B =<br />

⎡<br />

⎢<br />

⎣<br />

0 0 b 13<br />

0 b 22 0<br />

b 13 0 0<br />

⎤<br />

⎥<br />

⎦ .<br />

⎡<br />

⎤<br />

0 0 b 13<br />

⎢<br />

⎥<br />

B = ⎣ 0 0 b 23 ⎦ .<br />

b 13 b 23 b 33<br />

Form 4 is a degenerate case that is just a linear equation.<br />

Let us now consider the form 1 case.<br />

Ellipse.<br />

All coefficients b 11 ,b 22 <strong>and</strong> b 33 , are not zero. The coefficients b 11 <strong>and</strong> b 22<br />

have the same sign, which differs from the sign of b 22 . Then the canonical<br />

equation is<br />

<strong>and</strong><br />

x 2<br />

a + y2<br />

2 b =1, 2<br />

where the radii of the ellipse are<br />

a =<br />

b =<br />

√<br />

−b 33 /b 11<br />

√<br />

−b 33 /b 22 .<br />

In this case d 2 > 0<strong>and</strong>d 3 < 0.<br />

Hyperbola.<br />

All coefficients b 11 ,b 22 <strong>and</strong> b 33 , are not zero. The coefficients b 11 <strong>and</strong> b 22<br />

have different signs. There are two subcases: b 11 b 33 < 0<strong>and</strong>b 11 b 33 > 0. If<br />

b 11 b 33 < 0, then the canonical equation is<br />

39


<strong>and</strong><br />

where<br />

x 2<br />

a 2 − y2<br />

b 2 =1,<br />

a =<br />

b =<br />

√<br />

−b 33 /b 11<br />

√<br />

b 33 /b 22 .<br />

If we define the axis of the hyperbola to be the line of symmetry that meets<br />

the hyperbola at two points, then the axis of the original conic is at angle<br />

−θ, whereθ is the rotational angle of the canonical transformation.<br />

If b 11 b 33 > 0, then the canonical equation is<br />

<strong>and</strong><br />

where<br />

y 2<br />

a 2 − x2<br />

b 2 =1,<br />

a =<br />

b =<br />

√<br />

b 33 /b 11<br />

√<br />

−b 33 /b 22 .<br />

Then the axis of the original conic is at angle −(θ + π/2), where θ is the<br />

rotational angle of the canonical transformation.<br />

In this case d 2 < 0<strong>and</strong>d 3 < 0.<br />

Intersecting lines.<br />

If b 11 <strong>and</strong> b 22 have different signs, <strong>and</strong> b 33 = 0, then the conic has equation<br />

|b 11 |x 2 = |b 22 |y 2 ,<br />

which is equivalent to two equations of a line through the origin<br />

y = α β x,<br />

<strong>and</strong><br />

y = − α β x,<br />

where<br />

40


In this case d 2 < 0, <strong>and</strong> d 3 =0.<br />

Parallel lines or no real solution.<br />

If b 11 b 22 = 0 then the equation is<br />

√ √<br />

α = |b 11 |,β = |b 22 |<br />

or<br />

b 11 x 2 = −b 33<br />

b 22 y 2 = −b 33 .<br />

This is a pair of parallel lines, a single line , or there is no solution,<br />

depending upon signs. In this case d 2 =0<strong>and</strong>d 3 =0.<br />

Point.<br />

If b 11 <strong>and</strong> b 22 have the same signs, <strong>and</strong> b 33 = 0, then the conic has equation<br />

whose only solution is<br />

|b 11 |x 2 = −|b 22 |y 2 ,<br />

x =0,y =0.<br />

In this case d 2 > 0, <strong>and</strong> d 3 =0.<br />

No real points.<br />

If b 11 , b 22 ,<strong>and</strong>b 33 all have the same signs, then the conic has equation<br />

|b 11 |x 2 + |b 22 |y 2 = −|b 33 |,<br />

which has no real solution.<br />

In this case d 2 > 0<strong>and</strong>d 3 > 0ord 3 < 0.<br />

Let us now consider the form 2 case.<br />

Parabola.<br />

⎡<br />

⎢<br />

B = ⎣<br />

b 11 0 0<br />

0 0 b 23<br />

0 b 23 0<br />

⎤<br />

⎥<br />

⎦ .<br />

41


If b 23 is not zero, then form 2 represents a parabola. The equation is<br />

b 23 y = −b 11 x 2 ,<br />

4Fy = x 2 .<br />

The focal distance is<br />

F = − b 23<br />

.<br />

4b 11<br />

In this case d 2 =0,<strong>and</strong>d 3 < 0.<br />

Line.<br />

If b 23 is zero, form 2 represents the line<br />

In this case d 2 =0,<strong>and</strong>d 3 =0.<br />

Let us now consider the form 3 case.<br />

x =0.<br />

⎡<br />

⎤<br />

0 0 b 13<br />

⎢<br />

⎥<br />

B = ⎣ 0 b 22 0 ⎦ .<br />

b 13 0 b 33<br />

If b 13 is not zero, form 3 represents a parabola.<br />

The equation is<br />

b 13 x = −b 22 y 2 − b 33<br />

which if b 13 is not zero is a parabola.<br />

4Fx = y 2 + c<br />

F = − b 13<br />

4b 22<br />

.<br />

In this case d 2 =0,<strong>and</strong>d 3 < 0.<br />

Line.<br />

If b 13 is zero, form 3 represents the line<br />

In this case d 2 =0,<strong>and</strong>d 3 =0.<br />

Let us now consider the form 4 case.<br />

y =0.<br />

42


Line.<br />

We have the straight line<br />

2b 13 x +2b23y + b 33 =0.<br />

If an ellipse has a center C =(c x ,c y ), then the original transformation T<br />

maps it to the origin, which is given in homogeneous coordinates as<br />

(0, 0, 1) ∗<br />

Hence R, whichistheinverseofT , maps the origin to the original ellipse<br />

center.<br />

Therefore ⎡ ⎤ ⎡<br />

⎤ ⎡ ⎤ ⎡ ⎤<br />

⎢<br />

⎣<br />

c x<br />

c y<br />

1<br />

⎥<br />

⎦ =<br />

⎢<br />

⎣<br />

c s e<br />

−s c f<br />

0 0 1<br />

⎥ ⎢<br />

⎦ ⎣<br />

0<br />

0<br />

1<br />

⎥<br />

⎦ =<br />

So (e, f) is the center of the original conic, if it is an ellipse, or a hyperbola.<br />

If it is a parabola, then (e, f) is the vertex. The center of a parabola is at<br />

infinity.<br />

Alternately, for the case of the ellipse or hyperbola, the first two rows of<br />

matrix A are homogeneous coordinates of diameter lines (being the polars of<br />

points at infinity), so their intersection is the center.<br />

If the matrix A is nonsingular, then the unique center (c x ,c y )isthe<br />

solution of<br />

⎡ ⎤ ⎡ ⎤<br />

⎢<br />

A ⎣<br />

c x<br />

c y<br />

1<br />

⎥<br />

⎦ =<br />

This follows because the polar of every point at infinity<br />

⎡ ⎤<br />

x<br />

⎢ ⎥<br />

⎣ y ⎦<br />

0<br />

is a diameter given by<br />

⎢<br />

⎣<br />

[x, y, 0]A.<br />

So every diameter meets the center if <strong>and</strong> only if<br />

0<br />

0<br />

1<br />

⎥<br />

⎦<br />

⎢<br />

⎣<br />

e<br />

f<br />

1<br />

⎥<br />

⎦<br />

43


⎡<br />

⎢<br />

[x, y, 0]A ⎣<br />

c x<br />

c y<br />

1<br />

⎤<br />

⎥<br />

⎦ =0<br />

if <strong>and</strong> only if<br />

⎡<br />

⎢<br />

A ⎣<br />

c x<br />

c y<br />

1<br />

⎤<br />

⎥<br />

⎦ =<br />

⎡<br />

⎢<br />

⎣<br />

0<br />

0<br />

1<br />

⎤<br />

⎥<br />

⎦<br />

7 Conic Through a Set of Points<br />

Five points determine a conic. We can find the equation of a conic through<br />

four points as a product of lines through the points. Thus if we have points<br />

p 1 ,p 2 ,p 3 ,p 4 let the line through p i <strong>and</strong> p j be l ij ,then<br />

λl 12 l 34 +(1− λ)l 13 l 24 =0<br />

is the equation of a conic through the four points. The parameter λ can<br />

be chosen so that the conic passes through a fifth point. The discriminant<br />

can be examined to determine the type of conic. By letting the points come<br />

together we can specify tangent constraints.<br />

8 Parametric Conic Arcs, Matrices of <strong>Projective</strong><br />

Transformations.<br />

A conic arc is a portion of a conic curve. A conic arc can be expressed in<br />

parametric form. This can be done so that each coordinate is a rational<br />

function of a single variable. To construct such a function, we map a special<br />

parabola to the required arc using a projective transformation.<br />

We shall describe the mapping in a later section. First we need to prove<br />

the following proposition.<br />

Proposition. If L <strong>and</strong> M represent the same projective transformation,<br />

then L is a scalar multiple of M.<br />

44


(a)<br />

(b)<br />

(c)<br />

(d)<br />

Figure 5: Results of plotting conics with the program pltconic.ftn.<br />

(a)Ellipse with equation 10x 2 +10xy+20y 2 +3x+−4y−10 = 0, (b)Hyperbola<br />

with equation 5x 2 +10xy − 7y 2 − 3x +2y − 1 = 0, (c)Parabola with equation<br />

x 2 +6xy +9y 2 +3x − 5y − 1 = 0, (d)<strong>and</strong> a circle with equation<br />

2x 2 +2y 2 + 1x − 1y − 1=0. 2 5<br />

45


Figure 6: A conic passing through four points defined by the products of lines<br />

passing through the points (1, 1), (2, 2), (2, 1), (3, 3). The general equation of<br />

such a conic is λ(y − x)(y − x +1)+(1− λ)(y − 2)(y − 1) = 0 where λ is<br />

a parameter. Here λ =1/2. By letting points come together we can also<br />

define conics by tangent lines.<br />

46


B<br />

C<br />

D<br />

A<br />

(a)<br />

D’<br />

C’<br />

A’ B’<br />

(b)<br />

Figure 7: (a)Any conic arc can be obtained by mapping this parabola, which<br />

is defined by tangent lines AC <strong>and</strong> BC, <strong>and</strong>pointD,where A =(0, 0),B =<br />

(1, 1),C =(0, 1/2),D=(1/4, 1/2). (b)An example of mapping the parabola<br />

to a conic representation of a circle. The intersection of the tangents is at<br />

C, which is a point at infinity.<br />

47


Proof. We shall write [v] for the subspace spanned by the vector V .LetV<br />

<strong>and</strong> U be linearly independent. Let P be the given projective transformation.<br />

Then<br />

P ([U]) = [L(U)] + [M(U)].<br />

So there is a number a so that L(U) = aM(U). Similarly, there is a<br />

number b, sothatL(V )=bM(V ). Then<br />

P ([U + V ]) = [L(U)+L(V )]<br />

=[M(aU)+M(bV )]<br />

= P ([aU + bV ]).<br />

But a projective transformation is one to one. Therefore there is a c, sothat<br />

U + V = c(aU + bV ).<br />

Then by the linear independence of U <strong>and</strong> V ,wehave<br />

It follows that a = b <strong>and</strong> L = aM.<br />

ca =1=cb.<br />

9 A <strong>Projective</strong> Transformation That Takes<br />

Four Points To Four Points<br />

Now we shall show that there is a projective transformation mapping four<br />

points in the plane to four points in the plane.<br />

Proposition. Let A, B, C, <strong>and</strong> D be distinct points in the plane, no three<br />

of which are collinear. Let A ′ ,B ′ ,C ′ , <strong>and</strong> D ′ , also be distinct points in the<br />

plane, no three of which are collinear. Then there is a unique projective<br />

transformation taking the first four points to the second four points.<br />

Proof. Consider the points as coordinate vectors. Then there are numbers<br />

a, b, c so that<br />

D = aA + bB + cC.<br />

This is true because A, B, <strong>and</strong>C are a basis of the vector space. Similarly<br />

there are numbers a’, b’, c’ sothat<br />

48


D ′ = a ′ A + b ′ B + c ′ C.<br />

Define a”, b”, c” by<br />

<strong>and</strong><br />

a” =a ′ /a, b” =b ′ /b,<br />

c” =c ′ /c.<br />

None of a, b, orc are zero, because no three of the given points are collinear.<br />

Define a matrix M as a product of three by three matrices, formed from the<br />

point column vectors. Let<br />

M = [ a ′′ A ′ b ′′ B ′ c ′′ C ′ ][<br />

A B C<br />

] −1<br />

.<br />

Then the projective transformation defined by M maps the first three<br />

unprimed points to the first three primed points. Also D is mapped to D’,<br />

as we show here.<br />

MD = aMA + bMB + cMC<br />

= aa”A ′ + bb”B ′ + cc”C ′<br />

= a ′ A ′ + b ′ B ′ + c ′ C ′ = D ′ .<br />

It remains to show that the projective transformation defined by M is<br />

unique. We have<br />

<strong>and</strong><br />

MA = a”A ′ ,MB = b”B ′ ,MC = c”C ′ ,<br />

MD = D ′ .<br />

Suppose there is a matrix N <strong>and</strong> numbers a N b N ,c N , <strong>and</strong> d N ,sothat<br />

NA = a N A ′ ,NB = b N B ′ ,NC = c N C ′ ,<br />

<strong>and</strong><br />

ND = d N D ′ .<br />

49


Then ND is given by<br />

And ND is also given by<br />

ND = N(aA + bB + cC)<br />

= aa N A ′ + bb N B ′ + cc N C ′ .<br />

ND = d N D ′ .<br />

Equating these two expressions for ND, <strong>and</strong> dividing by d N ,weget<br />

But<br />

D ′ =(aa N /d N )A ′ +(bb N /d N )B ′ +(cc N /d N )C ′ .<br />

D ′ = a ′ A ′ + b ′ B ′ + c ′ C ′ ,<br />

<strong>and</strong> because A ′ ,B ′ ,C ′ are linearly independent, we must have<br />

<strong>and</strong><br />

<strong>and</strong><br />

Then<br />

aa N /d N = a ′ ,<br />

bb N /d N = b ′ ,<br />

cc N /d N = c ′ .<br />

a = d N (a ′ /a N )=d N a”,<br />

b = d N b”,<br />

c = d N c”.<br />

So matrix N is a scalar multiple of matrix M,<br />

N = d N M.<br />

Therefore N <strong>and</strong> M represent the same projective transformation.<br />

Here is a MatLab script to create this projective transformation:<br />

50


% prjtrans.m, A projective transformation taking quadrilateral a,b,c,d<br />

%to quadrilateral ap,bp,cp,dp<br />

%Reference: quadric.pdf "<strong>Conics</strong>, <strong>Quadrics</strong>, <strong>and</strong> <strong>Projective</strong> <strong>Space</strong>"<br />

%<br />

a=[20;20;1]<br />

b=[60;30;1]<br />

c=[70;60;1]<br />

d=[25;50;1]<br />

m1=[a’;b’;c’]<br />

m1=m1’<br />

m1i=inv(m1)<br />

e=m1i*d<br />

ap=[1;1;1]<br />

bp=[100;1;1]<br />

cp=[100;100;1]<br />

dp=[1;100;1]<br />

m2=[ap’;bp’;cp’]<br />

m2=m2’<br />

m2i=inv(m2)<br />

f=m2i*dp<br />

g1=f(1)/e(1)<br />

g2=f(2)/e(2)<br />

g3=f(3)/e(3)<br />

ap2=g1*ap<br />

bp2=g2*bp<br />

cp2=g3*cp<br />

m3=[ap2’;bp2’;cp2’]<br />

m3=m3’<br />

p=m3*m1i<br />

pa=p*a<br />

pb=p*b<br />

pc=p*c<br />

pd=p*d<br />

pa=(1/pa(3))*pa<br />

pb=(1/pb(3))*pb<br />

pc=(1/pc(3))*pc<br />

pd=(1/pd(3))*pd<br />

10 An Affine Transformation That Approximately<br />

Takes Four Points To Four Points<br />

Let the affine transformation acting on a point with coordinates x <strong>and</strong> y be<br />

given by<br />

x ′ = m 11 x + m 12 y + m 13 ,<br />

y ′ = m 21 x + m 22 y + m 23 .<br />

51


Four unprimed points are to be mapped to four primed points. Thus we get<br />

the following eight equations in the six matrix coefficients m ij ,<br />

m 11 x k + m 12 y k + m 13 = x ′ k<br />

m 21 x k + m 22 y k + m 23 = y ′ k<br />

for k =1, .., 4. Let C be a the six dimensional coefficient vector,<br />

The linear system becomes<br />

where<br />

<strong>and</strong><br />

⎡<br />

A =<br />

⎢<br />

⎣<br />

⎡<br />

C =<br />

⎢<br />

⎣<br />

⎤<br />

m 11<br />

m 12<br />

m 13<br />

m 21<br />

⎥<br />

m 22 ⎦<br />

m 23<br />

AC = B,<br />

x 1 y 1 1 0 0 0<br />

0 0 0 x 1 y 1 1<br />

x 2 y 2 1 0 0 0<br />

0 0 0 x 2 y 2 1<br />

.. .. .. .. .. ..<br />

x 4 y 4 1 0 0 0<br />

0 0 0 x 4 y 4 1<br />

⎡<br />

B<br />

⎢<br />

⎣<br />

x ′ 1<br />

y ′ 1<br />

x ′ 2<br />

y ′ 2<br />

...<br />

x ′ 4<br />

y ′ 4<br />

The six by six normal equation for C is<br />

⎤<br />

.<br />

⎥<br />

⎦<br />

A T AC = A T B.<br />

⎤<br />

,<br />

⎥<br />

⎦<br />

52


11 The Rational Parametric Arc And The<br />

Conic Arc<br />

We can now construct the rational parametric arc. First we shall construct<br />

the special case of the conic arc. The parabola with equation x − y 2 =0<strong>and</strong><br />

with matrix<br />

⎡<br />

⎤<br />

⎢<br />

⎣<br />

0 0 1/2<br />

0 −1 0<br />

1/2 0 0<br />

is to be mapped to the required conic arc, (see Fig. 5). If we take t = y,<br />

then<br />

⎡ ⎤<br />

t<br />

⎢<br />

⎣ t 2 ⎥<br />

⎦<br />

1<br />

⎥<br />

⎦ ,<br />

is a point on the parabola. Points A, B, <strong>and</strong>D lie on the parabola <strong>and</strong> are<br />

given as<br />

A =<br />

B =<br />

D =<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

0<br />

0<br />

1<br />

1<br />

1<br />

1<br />

⎤<br />

⎥<br />

⎦<br />

1/4<br />

1/2<br />

1<br />

C is the intersection point of the tangent lines at A <strong>and</strong> B. The tangent line<br />

at B has equation<br />

⎡<br />

[ ]<br />

x y 1<br />

⎢<br />

⎣<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />

⎦<br />

0 0 1/2 1<br />

0 −1 0 1<br />

1/2 0 0 1<br />

⎤<br />

⎥<br />

⎦<br />

53


So<br />

=(1/2)x − y +1/2 =0.<br />

c =<br />

For future reference note that<br />

⎡<br />

⎢<br />

⎣<br />

0<br />

1/3<br />

1<br />

⎤<br />

⎥<br />

⎦ .<br />

D = aA + bB + cC,<br />

where a =1/4,b=1/4, <strong>and</strong> c =1/2.<br />

It takes five points to determine a conic. Here we do have five pieces of information,<br />

namely three points which lie on the conic, <strong>and</strong> two tangents. This<br />

parabola is the set {P : f(P, P) =0}. A projective transformation M maps<br />

it to the conic {P ′ : f ′ (P ′ ,P ′ )=0}, wheref ′ (P ′ ,P ′ )=f(M (P ′ ),M (P ′ )).<br />

By the construction above, let M be the projective transformation that takes<br />

the four points defining the parabola to the four primed points that defining<br />

some conic arc. From the definition of f ′ ,weseethat<br />

f ′ (C ′ ,A ′ )=f(C, A) =0.<br />

<strong>and</strong><br />

f ′ (C ′ ,B ′ )=f(C, B) =0.<br />

So C ′ is the intersection of the tangents to the conic arc at A ′ <strong>and</strong> B ′ . A<br />

parametric equation of the arc from A ′ to B ′ is given by<br />

⎡<br />

x ′ ⎤ ⎡<br />

t 2 ⎤<br />

⎢<br />

⎣ y ′ ⎥ ⎢ ⎥<br />

⎦ = M ⎣ t ⎦ ,<br />

z ′ 1<br />

for 0 ≤ t ≤ 1.<br />

Example. Letthearcbeahalfcircle.<br />

⎡<br />

A ′ =<br />

B ′ =<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

54<br />

−1<br />

0<br />

1<br />

1<br />

0<br />

1<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />


D ′ =<br />

⎡<br />

⎢<br />

⎣<br />

0<br />

1<br />

1<br />

⎤<br />

⎥<br />

⎦ .<br />

For this example we see by inspection that<br />

⎡ ⎤<br />

0<br />

C ′ ⎢ ⎥<br />

= ⎣ 0 ⎦<br />

1<br />

That is, the intersection of the tangents at A ′ <strong>and</strong> B ′ ,isthepointat<br />

infinity in the direction of the y-axis. In general we may find the polars of A ′<br />

<strong>and</strong> B ′ <strong>and</strong> then calculate the cross product of their line coordinates to get<br />

C ′ . We need the coordinates a ′ ,b ′ ,c ′ of D ′ with respect to the basis A ′ ,B ′ ,C ′ .<br />

We have<br />

⎡<br />

⎢<br />

= ⎣<br />

⎡<br />

⎢<br />

⎣<br />

a ′<br />

b ′<br />

c ′<br />

⎤<br />

⎥<br />

⎦ = [ A ′ B ′ C ′ ] −1<br />

D<br />

′<br />

−1/2 0 1/2<br />

1/2 0 1/2<br />

0 1 0<br />

We know a, b, c from above, so<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

0<br />

1<br />

1<br />

⎤<br />

⎥<br />

⎦ =<br />

⎡<br />

⎢<br />

⎣<br />

1/2<br />

1/2<br />

1<br />

⎤<br />

⎥<br />

⎦ .<br />

a” =a ′ /a =(1/2)/(1/4) = 2,b”=b ′ /b =2,c”=c ′ /c =2.<br />

Now<br />

M = [ a”A ′ b”B ′ c”C ][ A B C ] −1<br />

⎡<br />

⎢<br />

=2⎣<br />

⎡<br />

⎢<br />

=2⎣<br />

−1 1 0<br />

0 0 1<br />

1 1 1<br />

−1 1 0<br />

0 0 1<br />

1 1 1<br />

=<br />

⎡<br />

⎢<br />

⎣<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

0 4 −2<br />

−4 4 0<br />

4 −4 2<br />

0 1 0<br />

0 1 1/2<br />

1 1 1<br />

⎤−1<br />

⎥<br />

⎦<br />

0 −2 1<br />

1 0 0<br />

−2 2 0<br />

⎤<br />

⎥<br />

⎦ .<br />

⎤<br />

⎥<br />

⎦<br />

55


Finally, we get<br />

⎡<br />

⎢<br />

⎣<br />

So in the affine plane we have<br />

x ′ ⎤<br />

y ′ ⎥<br />

x ′<br />

x ′ =<br />

⎡<br />

⎢<br />

⎦ = M ⎣<br />

t 2 t<br />

1<br />

⎤<br />

⎥<br />

⎦ .<br />

2t − 1<br />

2t 2 − 2t +1 ,<br />

<strong>and</strong><br />

y ′ 2t − 2t<br />

=<br />

2t − 2t +1 .<br />

There appears to be much calculation here. It is not as bad as it appears.<br />

There is a Fortran conic arc subroutine that is called conarc in<br />

library emerylib.ftn. The subroutine shows that the calculation can be<br />

quite simple.<br />

Here is a listing:<br />

c+ conarc parametric conic arc<br />

subroutine conarc(r0,r1,r2,p,u,x,y)<br />

implicit real*8 (a-h,o-z)<br />

c parameters<br />

c r0-start point<br />

c r1-arc is tangent to the line through r0 <strong>and</strong> r1, <strong>and</strong><br />

c tangent to the line through r1 <strong>and</strong> r2<br />

c r2-end point<br />

c p-value controls fullness of arc: if near 1 arc<br />

c is a sharp hyperbola, if 1/2 it is a parabola,<br />

c if near zero it is a flat ellipse. p must be<br />

c greater than zero <strong>and</strong> less than 1.<br />

c u-parameter, the arc is parameterized on the unit interval<br />

c x,y-point on the arc at parameter u.<br />

c Notice that if p = 1/2, this is the second degree Bezier curve.<br />

dimension r0(*),r1(*),r2(*)<br />

w0=1-p<br />

w2=1-p<br />

w1=p<br />

b0=w0*(1-u)**2<br />

56


1=2*w1*u*(1-u)<br />

b2=w2*u*u<br />

d=b0+b1+b2<br />

x=(r0(1)*b0+r1(1)*b1+r2(1)*b2)/d<br />

y=(r0(2)*b0+r1(2)*b1+r2(2)*b2)/d<br />

return<br />

end<br />

A reference for the equations that are used in the subroutine is Faux <strong>and</strong><br />

Pratt.<br />

It is advantageous to calculate the rational parametric form when points<br />

of the arc must be displayed or plotted. When we have a rational parametric<br />

form we can easily compute the x <strong>and</strong> y coordinates of any point.<br />

Some early books on aircraft construction have material on conic arcs.<br />

One such book is: Aircraft Analytic Geometry, byJ.J.Apalategui<strong>and</strong><br />

L. J. Adams, McGraw-Hill, 1944. Many of the early aircraft shapes were<br />

constructed using composite conic arcs.<br />

A classic method for finding a parameterization of an algebraic curve is<br />

given in books on Algebraic Geometry. This method uses a set of lines that<br />

are defined by a single parameter. Each line is intersected with the algebraic<br />

curve, giving each point on the curve as a function of the line parameter.<br />

Frequently one uses the set of lines through the origin: y = tx where t is the<br />

parameter. As an example one can get a simple rational parameterization of<br />

the circle<br />

(x − 1) 2 + y 2 =1,<br />

using this method.<br />

12 Straight Lines In <strong>Projective</strong> <strong>Space</strong><br />

The equation of a line is of the form<br />

ax + by + cz =0<br />

The coordinates of the line ⎡ ⎤<br />

a<br />

⎢ ⎥<br />

⎣ b ⎦<br />

c<br />

57


are perpendicular to the coordinates of the point<br />

⎡ ⎤<br />

x<br />

⎢ ⎥<br />

⎣ y ⎦<br />

z<br />

If A <strong>and</strong> B are coordinate vectors of two lines then the cross product is<br />

the coordinate vector of the intersection point because it is perpendicular to<br />

both. In the same way if X <strong>and</strong> Y are coordinate vectors of two points then<br />

their cross product is the coordinate vector of the line containing both. This<br />

is an example of duality in projective space.<br />

Example. Find the intersection point of the two lines with equations<br />

x + y =0,<br />

<strong>and</strong><br />

The cross product is<br />

2x + y =1.<br />

⎡<br />

⎢<br />

⎣<br />

2<br />

−5<br />

−1<br />

⎤<br />

⎥<br />

⎦<br />

So the affine coordinates of the intersection point are (−2, 5).<br />

Example. Find the line through the points<br />

⎡<br />

⎢<br />

⎣<br />

1<br />

1<br />

1<br />

⎤<br />

⎥<br />

⎦<br />

<strong>and</strong><br />

The cross product is<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

⎢<br />

⎣<br />

3<br />

2<br />

1<br />

−1<br />

2<br />

−1<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />

⎦<br />

58


So the equation is<br />

−x +2y =1.<br />

Example. Find the line passing through (1, 1) <strong>and</strong> making an angle of 30<br />

degrees with the x-axis. The line passes through the point at infinity given<br />

by<br />

<strong>and</strong> the point<br />

⎡<br />

⎢<br />

⎣<br />

cos(30)<br />

sin(30)<br />

0<br />

⎡<br />

⎢<br />

⎣<br />

⎤<br />

⎥<br />

⎦ =<br />

1<br />

1<br />

1<br />

⎤<br />

⎡<br />

⎢<br />

⎣<br />

⎥<br />

⎦ .<br />

3/2<br />

1/2<br />

0<br />

Taking the cross product we find the line to be<br />

x − 3y =1− 3.<br />

⎤<br />

⎥<br />

⎦ ,<br />

13 Quadric Surfaces<br />

Quadric surfaces are the analogue of conic sections in three dimensional<br />

space. This space is constructed in a four dimensional vector space so there<br />

are four coordinates for each point. Again corresponding to each quadric is<br />

a bilinear form f. The quadric surface is the set of points P where<br />

f(P, P) =0.<br />

The properties <strong>and</strong> propositions that have been treated for 2-space are essentially<br />

the same in 3-space.<br />

The equation for the intersection of a line P + tQ is still<br />

0=f(P + tQ, P + tQ) =f(P, P)+2tf(P, Q)+tf(Q, Q),<br />

<strong>and</strong> the various cases are the same as for the conics. If P is a point then<br />

(P, Q) =0.<br />

59


Is the equation of a plane, where (P, Q) is the inner product of P <strong>and</strong> Q. Q<br />

is the coordinate vector of the plane. There is a duality between points <strong>and</strong><br />

planes. For example, three points determine a plane. Dually three planes<br />

determine a point. In two dimensions, the duality was between points <strong>and</strong><br />

lines. The first three coordinates of the plane give a vector normal to the<br />

plane in affine space, where the affine hyperplane has equation w =1. The<br />

homogeneous coordinates of a point are written as x, y, z, w. IfP is a point,<br />

then the set of points Q, where<br />

f(P, Q) =0,<br />

is the polar of P . In 3-space, the polar is a plane. If A is the symmetric<br />

matrix of the quadric<br />

f(P, Q) =PAQ = QAP = f(Q, P )=(Q, AP ).<br />

If P is on the quadric surface then the polar of P is the tangent plane. This<br />

can be seen by examining the equations of intersection of lines in the tangent<br />

plane passing through P . The equation of the tangent plane is then<br />

(Q, AP )=0,<br />

<strong>and</strong> AP is the coordinate vector of this plane. The first three coordinates<br />

of AP are the coordinates of a normal vector. A diametrical plane in the<br />

direction Q, whereQ is a point at infinity, is the polar of Q. The diametrical<br />

plane is the analogue in 3-space of the diameter in 2-space. A center is a<br />

point in the intersection of all diametrical planes. points on a quadric surface<br />

are called singular points if they are centers <strong>and</strong> regular points otherwise. An<br />

example of a singular point is the apex of a cone. The statement above that<br />

the polar of a point on the surface is the tangent plane must be qualified.<br />

It holds only for regular points. obviously the apex of a cone has no well<br />

defined tangent plane.<br />

As in the two dimensional case, a diametrical plane in the direction Q<br />

bisects all chords in the direction Q. The two dimensional proof holds.<br />

14 Quadric Surfaces And Their Matrices<br />

There are 17 quadric surfaces (see Olmstead). some are complex <strong>and</strong> some<br />

are degenerate. The names, equations <strong>and</strong> matrices of some of the real<br />

nondegenerate quadric surfaces are:<br />

60


(1) Sphere:<br />

(2) Hyperbolic paraboloid:<br />

x 2 + y 2 + z 2 − w 2 =0.<br />

⎡<br />

⎤<br />

1 0 0 0<br />

0 1 0 0<br />

⎢<br />

⎥<br />

⎣ 0 0 1 0 ⎦<br />

0 0 0 −1<br />

(3) Elliptic paraboloid:<br />

(4) Parabolic cylinder:<br />

(5) Hyperbolic cylinder:<br />

(6) Intersecting planes:<br />

⎡<br />

⎢<br />

⎣<br />

x 2 − y 2 − 2wz =0.<br />

1 0 0 0<br />

0 −1 0 0<br />

0 0 0 −1<br />

0 0 −1 0<br />

⎤<br />

⎥<br />

⎦<br />

x 2 + y 2 − 2zw =0.<br />

⎡<br />

⎤<br />

1 0 0 0<br />

0 1 0 0<br />

⎢<br />

⎥<br />

⎣ 0 0 0 −1 ⎦<br />

0 0 −1 0<br />

⎡<br />

⎢<br />

⎣<br />

x 2 − 2yz =0.<br />

1 0 0 0<br />

0 0 −1 0<br />

0 −1 0 0<br />

0 0 0 0<br />

⎤<br />

⎥<br />

⎦<br />

x 2 − y 2 − w 2 =0.<br />

⎡<br />

⎤<br />

1 0 0 0<br />

0 −1 0 0<br />

⎢<br />

⎥<br />

⎣ 0 0 0 0 ⎦<br />

0 0 0 −1<br />

x 2 − y 2 =0.<br />

61


(7) Parallel planes:<br />

(8) Circular cylinder:<br />

⎡<br />

1 0 0 0<br />

0 −1 0 0<br />

⎢<br />

⎣ 0 0 0 0<br />

0 0 0 0<br />

⎤<br />

⎥<br />

⎦<br />

x 2 − w 2 =0.<br />

⎡<br />

⎤<br />

1 0 0 0<br />

0 0 0 0<br />

⎢<br />

⎥<br />

⎣ 0 0 0 0 ⎦<br />

0 0 0 −1<br />

x 2 + y 2 − w 2 =0.<br />

⎡<br />

⎤<br />

1 0 0 0<br />

0 1 0 0<br />

⎢<br />

⎥<br />

⎣ 0 0 0 0 ⎦<br />

0 0 0 −1<br />

(9) Hyperboloid of two sheets:<br />

x 2 + y 2 − z 2 + w 2 =0.<br />

⎡<br />

⎤<br />

1 0 0 0<br />

0 1 0 0<br />

⎢<br />

⎥<br />

⎣ 0 0 −1 0 ⎦<br />

0 0 0 1<br />

(10) Cone:<br />

x 2 + y 2 − z 2 =0.<br />

⎡<br />

⎤<br />

1 0 0 0<br />

0 1 0 0<br />

⎢<br />

⎥<br />

⎣ 0 0 −1 0 ⎦<br />

0 0 0 1<br />

(11) hyperboloid of one sheet:<br />

x 2 + y 2 − z 2 − w 2 =0.<br />

⎡<br />

⎤<br />

1 0 0 0<br />

0 1 0 0<br />

⎢<br />

⎥<br />

⎣ 0 0 −1 0 ⎦<br />

0 0 0 −1<br />

62


15 Transformations<br />

A one to one linear transformation maps a quadric surface to a new quadric<br />

surface. Suppose<br />

S = {P : f(P, P) ≤ 0}<br />

then<br />

LS = {LP : f(P, P) ≤ 0}<br />

= {Q : f(L −1 Q, L −1 Q) ≤ 0}<br />

= {Q :(L −1 Q, AL −1 Q) ≤ 0}<br />

= {Q :(Q, L −1T AL −1 Q)


Rotation about the x-axis:<br />

⎡<br />

⎢<br />

⎣<br />

1 0 0 0<br />

0 c −s 0<br />

0 s c 0<br />

0 0 0 1<br />

⎤<br />

⎥<br />

⎦<br />

Rotation about the y-axis:<br />

⎡<br />

⎢<br />

⎣<br />

c 0 s 0<br />

0 1 0 0<br />

−s 0 c 0<br />

0 0 0 1<br />

⎤<br />

⎥<br />

⎦<br />

Rotation about the z-axis:<br />

⎡<br />

⎢<br />

⎣<br />

c −s 0 0<br />

s c 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

Now if R is a rotation matrix, then<br />

⎤<br />

⎥<br />

⎦<br />

R −1 (θ) =R(−θ).<br />

An orthogonal matrix R has the property R T<br />

transformed quadric surface is<br />

= R −1 , so the matrix of the<br />

A ′ = R(θ)AR(−θ).<br />

(3)Affine translation: The matrix<br />

⎡<br />

⎤<br />

1 0 0 a<br />

0 1 0 b<br />

⎢<br />

⎥<br />

⎣ 0 0 0 c ⎦<br />

0 0 0 1<br />

translates by<br />

⎡<br />

⎢<br />

⎣<br />

a<br />

b<br />

c<br />

⎤<br />

⎥<br />

⎦ .<br />

64


The inverse of T is<br />

⎡<br />

T −1 = ⎢<br />

⎣<br />

1 0 0 −a<br />

0 1 0 −b<br />

0 0 0 −c<br />

0 0 0 1<br />

⎤<br />

⎥<br />

⎦ .<br />

The transformed matrix is<br />

⎡<br />

A ′ = ⎢<br />

⎣<br />

1 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

−a −b −c 1<br />

Example. Given a sphere with matrix<br />

⎡<br />

⎢<br />

⎣<br />

⎤ ⎡<br />

⎥<br />

⎦ A ⎢<br />

⎣<br />

1 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 −1<br />

Then the scaling transformation matrix<br />

⎡<br />

⎢<br />

⎣<br />

2 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

Maps the sphere to an ellipse with matrix<br />

⎡<br />

⎢<br />

⎣<br />

1/2 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

⎡<br />

= ⎢<br />

⎣<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

1/2 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

1 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 −1<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

1 0 0 −a<br />

0 1 0 −b<br />

0 0 1 −c<br />

0 0 0 −1<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />

⎦<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

⎤<br />

⎥<br />

⎦ .<br />

1/2 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

1/2 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 −1<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />

⎦<br />

65


⎡<br />

= ⎢<br />

⎣<br />

The translation matrix T shifts it by 2<br />

⎡<br />

⎢<br />

⎣<br />

1/4 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 −1<br />

1 0 0 −2<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

The matrix of the shifted conic becomes<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />

⎦ .<br />

(T −1 ) T (S −1 ) T AS −1 T −1<br />

⎡<br />

⎤ ⎡<br />

⎤ ⎡<br />

⎤<br />

1 0 0 0 1/4 0 0 0 1 0 0 2<br />

0 1 0 0<br />

0 1 0 0<br />

0 1 0 0<br />

= ⎢<br />

⎥ ⎢<br />

⎥ ⎢<br />

⎥<br />

⎣ 0 0 1 0 ⎦ ⎣ 0 0 1 0 ⎦ ⎣ 0 0 1 0 ⎦<br />

2 0 0 1 0 0 0 −1 0 0 0 1<br />

⎡<br />

⎤ ⎡<br />

⎤<br />

1 0 0 0 1/4 0 0 1/2<br />

0 1 0 0<br />

0 1 0 0<br />

= ⎢<br />

⎥ ⎢<br />

⎥<br />

⎣ 0 0 1 0 ⎦ ⎣ 0 0 1 0 ⎦<br />

2 0 0 1 0 0 0 −1<br />

⎡<br />

⎤<br />

1/4 0 0 1/2<br />

0 1 0 0<br />

= ⎢<br />

⎥<br />

⎣ 0 0 1 0 ⎦ .<br />

1/2 0 0 0<br />

The equation of the shifted ellipsoid is<br />

x 2 /4+y 2 + z 2 +1/2xw +1/2wx =0.<br />

Suppose we rotate about the z-axis by angle 45 degrees. The rotation matrix<br />

is<br />

⎡ √ √ ⎤<br />

√ 2/2 −<br />

√ 2/2 0 0<br />

R z (45) =<br />

2/2 2/2 0 0<br />

⎢<br />

⎣ 0 0 1 0<br />

⎥ . ⎦<br />

0 0 0 1<br />

66


The matrix of the quadric becomes<br />

This is<br />

⎡ √ √ ⎤ ⎡<br />

√ 2/2 −<br />

√ 2/2 0 0<br />

2/2 2/2 0 0<br />

⎢<br />

⎣ 0 0 1 0<br />

⎥ ⎢<br />

⎦ ⎣<br />

0 0 0 1<br />

⎡<br />

=<br />

⎢<br />

⎣<br />

R z (45)(T −1 ) T (S −1 ) T AS −1 T −1 R z (−45).<br />

√ √<br />

√ 2/2 −<br />

√ 2/2 0 0<br />

2/2 2/2 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

1/4 0 0 1/2<br />

0 1 0 0<br />

0 0 1 0<br />

1/2 0 0 0<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

The equation of the shifted rotated quadric is<br />

⎤ ⎡<br />

⎥<br />

⎦ ⎢<br />

⎣<br />

√ √<br />

√ 2/2<br />

√ 2/2 0 0<br />

2/2 2/2 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

√ √ ⎤<br />

2/8 2/8 0 1/2<br />

− √ 2/2 √ 2/2 0 0<br />

√<br />

0<br />

√<br />

0 1 0 ⎥<br />

2/4 2/4 0 0<br />

(5/8)x 2 +(5/8)y 2 − (3/4)xy + z 2 + xw √ 2/2+yw √ 2/2 =0.<br />

16 The Construction Of Solids<br />

A primitive solid is the set of points ”inside” a quadric surface. If f is the<br />

bilinear form of the quadric surface the primitive solid is<br />

{P : f(P, P) ≤ 0}.<br />

A solid object is constructed by combining the primitive solids using the<br />

set operators union, intersection <strong>and</strong> complementation. The characteristic<br />

function, C S corresponding to the set S, is a logic valued function mapping<br />

points to a value true or false. The value of C S (P ) is true if P ∈ S, otherwise<br />

it is false. By definition P ∈ A ∪ B, if <strong>and</strong> only if, P ∈ A or P ∈ B. Sothe<br />

characteristic function of A ∪ B is<br />

C(A ∪ B) =C(A) ∨ C(B),<br />

where ∨ is the logical ”or” operator. Similarly<br />

C(A ∩ B) =C(A) ∧ C(B),<br />

67<br />

⎦ .<br />

⎤<br />

⎥<br />


where ∧ is the logical ”<strong>and</strong>” operator, <strong>and</strong><br />

C(A) c = ¬C(A),<br />

¬ is the negation operator. Objects are defined as logic valued functions<br />

whose domain is 3-space. These functions may be represented with logical<br />

variables of programming languages.<br />

17 Plane Image<br />

A shaded image is produced by finding the intersection of the object <strong>and</strong><br />

a line that passes through the projection point. Let L be such a line. Its<br />

intersection with each primitive surface is calculated. For each intersection<br />

point there is a surface normal. A small line segment of fixed length δl, inthe<br />

normal direction with center at the intersection point, determines when the<br />

point is on the surface of the object. It is on the object when one endpoint<br />

is inside <strong>and</strong> the other is outside the object. This is determined by the<br />

characteristic function.<br />

One or more light sources illuminate the object. The inner product of<br />

these light source vectors with the surface normal give an intensity function<br />

defining the shading. The point on the surface is projected to 2-space with<br />

the calculated shading value. The projection point may be at infinity.<br />

18 Monte Carlo Integration<br />

An integral on a three dimensional set can be evaluated by enclosing the set<br />

in a rectangular box, <strong>and</strong> then taking a uniformly distributed r<strong>and</strong>om sample<br />

in the box. Suppose the integral<br />

∫<br />

f(x)dm<br />

S<br />

is to be evaluated. Let x be a point. Let B be a rectangular hexahedron<br />

enclosing S. Let m be the volume measure (Lebesgue measure). Define a<br />

probability measure on the set B by<br />

p(S) =m(S)/m(B).<br />

68


Let χ S be the characteristic function of the set S. Ifx ∈ S then χ S (x) is<br />

1, otherwise it is 0. Let g be the product of f <strong>and</strong> χ S .Theng is a r<strong>and</strong>om<br />

variable defined on the enclosing set B. Its expectation is<br />

∫ ∫<br />

E(g) = gdp = fdp = 1 ∫<br />

fdm.<br />

B<br />

S B S<br />

∫<br />

fdm = m(B)E(g)<br />

S<br />

Let x 1 , ...., x n be a sample of independent uniformly distributed r<strong>and</strong>om variables.<br />

Then g(x 1 ), ..., g(x n ) is also independent. Let ḡ bethesamplemean<br />

ḡ =(g(x 1 )+..... + g(x n ))/n.<br />

The expectation of the sample mean is the mean of the original distribution,<br />

The variance is<br />

E(ḡ) =E(g).<br />

V (ḡ) =E((ḡ − E(g)) 2 )=E(ḡ 2 ) − E(ḡ) 2 = V (g)/n.<br />

By the central limit theorem, the r<strong>and</strong>om variable<br />

(ḡ − E(ḡ)/<br />

√<br />

V (g) =(ḡ − E(g))/<br />

√<br />

V (g)/n,<br />

has approximately, for sufficiently large n, the st<strong>and</strong>ard normal distribution.<br />

Now<br />

∫<br />

1 1.96<br />

√ exp(−x 2 /2)dx ≈ .95.<br />

2π<br />

−1.96<br />

So<br />

√<br />

P (|ḡ − E(g)| ≤1.96 V (g)/n ≈ .95.<br />

This gives a 95 percent confidence interval for the estimated value of the<br />

mean. Multiplying by m(B), we get a confidence interval for the integral.<br />

∫<br />

P (|m(B)ḡ −<br />

We are interested in the specific quantities:<br />

(1) Volume; f =1<br />

S<br />

√<br />

fdm|≤1.96m(B) V (g)/n ≈ .95.<br />

69


(2) Moments;f = x i ,i=1, 2, 3<br />

(3) Inertia tensor: f = x i x j ,i,j =1, 2, 3<br />

Example. let S be a sphere of radius a. Let B bethecubeofside2a,<br />

centered at the origin. Then m(B) =8a 3 ,<strong>and</strong>m(S) =(4/3)πa 3 .Letf =1<br />

<strong>and</strong> g = χ S . Then the expectation of g is<br />

∫<br />

∫<br />

E(g) = g(x)dp = dp = p(S) =<br />

S<br />

S<br />

The variance of g is<br />

∫<br />

v(g) =<br />

(4/3)πa 3<br />

8a 3 = π 6 .<br />

g 2 dp − E(g) 2 = E(g)(1 − E(g)).<br />

Let us choose the sample size n, so that the relative error of the estimated<br />

volume is less than 1/100. The error is<br />

√<br />

1.96m(B) E(g)(1 − E(g))/n.<br />

We can get a relative error by dividing by the volume m(B)E(g). We get<br />

√<br />

1.96 (1 − E(g))/(E(g)n)) 196 2 (6π − 1) = 34953<br />

This is a large number of samples. We must decide how to choose the block<br />

B. In the case of volume, the error is<br />

√<br />

1.96m(B) [m(S)/m(B)][1 − m(S)/m(B))]/n<br />

√<br />

1.96m(B) m(S)[m(B) − m(S)/n.<br />

We must minimize a function of the form<br />

√<br />

h(x) = c(x − c),<br />

70


where x ≥ c. The derivative is<br />

dh<br />

dx =<br />

c<br />

2<br />

√c(x − c) ,<br />

so the function is increasing. The minimum occurs at x = c. We should<br />

choose the box B to be as small as possible.<br />

Usually we do not know the variance V (g), but we can use the sample<br />

variance as an estimate. The sample variance is defined as<br />

S 2 =<br />

∑ nk=1<br />

(g(P k ) − ḡ) 2<br />

n<br />

∑ nk=1<br />

g(P k ) 2<br />

=<br />

− ḡ 2 .<br />

n<br />

An unbiased estimator of the variance of g is (p. 165 Brunk)<br />

n<br />

n − 1 S2 .<br />

So<br />

√<br />

∫<br />

S<br />

2<br />

fdm = m(B)g +1.96m(B)<br />

S<br />

n − 1 .<br />

Example. We shall calculate the x 1 moment of the sphere of the previous<br />

example. We have f = x 1 <strong>and</strong><br />

∫<br />

E(g) = gdp = 1 x<br />

B 8a<br />

∫S<br />

3 1 dm =0.<br />

By symmetry the variance is<br />

1<br />

8a 3 ∫S<br />

x 2 dm =<br />

π ∫ a<br />

x 2<br />

8a 3 1 (a2 − x 2 1 )dx<br />

−a<br />

So the error is<br />

= πa2<br />

30 .<br />

(1.96)a 4 sqrtπ √<br />

30n<br />

.<br />

71


In this case we can’t divide by the moment to get a relative error, because<br />

the moment is zero. But a moment is the product of a volume <strong>and</strong> a length,<br />

so a relative error results from dividing by a 4 .<br />

Example. We shall calculate the inertia tensor components for the sphere.<br />

When i ≠ j, by symmetry,<br />

∫<br />

x i x j dm =0.<br />

When i = j we have<br />

∫<br />

S<br />

x 2 i dm = ∫ a<br />

= π<br />

−a<br />

[ x<br />

3<br />

i a 2<br />

3<br />

x 2 i (a2 − x 2 i )dx<br />

− x5 i<br />

5<br />

] a<br />

−a<br />

=2πa 5 (1/3 − /15)<br />

= 4 15 πa5 .<br />

19 Stratified sampling<br />

It may be possible to decrease the error by doing stratified sampling. We<br />

divide the domain B into m subdomains. We introduce a probability measure<br />

p i on each B i by<br />

p i (S i )=m(S i )/m(B i ).<br />

Then<br />

∫<br />

∫<br />

fdm = m(B i ) g i dp i = E(g i )m(B i ),<br />

S∩B i B i<br />

where g i is the product of f <strong>and</strong> the characteristic function χ(S i )ofS i .Then<br />

∫<br />

S<br />

fdm =<br />

Let h i = m(B i )g i . Then, defining<br />

m∑<br />

∫<br />

i=1<br />

S∩B i<br />

m(B i )g i dp i .<br />

m∑<br />

h = h i ,<br />

i=1<br />

72


we have<br />

∫<br />

m∑<br />

fdm = E(h) = E(h i ).<br />

S<br />

i=1<br />

Also<br />

m∑<br />

v(h) = v(h i ).<br />

i=1<br />

Let h i1 , ....., h im , be an independent sample of r<strong>and</strong>om variables having the<br />

distribution of h i .Wetakek samples from each strata. Let b 2 i = v(h i)<strong>and</strong><br />

B 2 = v(h 11 )+.... + v(h mk<br />

= k(b 2 1 + ... + b2 m ).<br />

Let a i = E(h i )<strong>and</strong>A = k(a 1 + ... + a m ). Consider<br />

((h 11 − a 1 )+(h 12 − a 2 )+... +(h mk − a k ))/B<br />

= h 11 + ... + h mk − k(a 1 + .... + a m )<br />

√<br />

k(b 2 1 + ... + b 2 m<br />

= (h 11 + ... + h mk )/k − ∫ fdm<br />

√<br />

.<br />

(b 2 1 + ... + b 2 m)/k<br />

Let<br />

y k = h 11 + ... + h mk<br />

,<br />

k<br />

<strong>and</strong><br />

v(k) = b2 1 + ... + b 2 m<br />

.<br />

k<br />

The Lindeberg condition is satisfied (p.455 Eisen). As k →∞the following<br />

probability approaches a normal probability. That is,<br />

∫<br />

√ ∫ x<br />

p((y k − fdm)/v(k) ≤ x) → (1/2π) exp(−t 2 /2)dt.<br />

It follows that<br />

−∞<br />

∫<br />

p(|y k − fdm|≤1.96v(k)) ≈ .95.<br />

y k is a better estimate of the integral than m(B)ḡ, provided<br />

√<br />

v(k)


Note that there are mk samples. Suppose that either v(g i )=v(g) orelse<br />

v(g 1 )=0. Then<br />

{<br />

b 2 i = v(h i )=m(B i ) 2 m(Bi )<br />

v(g i )=<br />

2 v(g)<br />

0<br />

Suppose j of the b 2 i are not zero, <strong>and</strong> suppose the strata are equal, so that<br />

m(B i )=m(B)/m. Then<br />

√<br />

v(k) =<br />

b 2 1 + .... + b 2 k<br />

√<br />

k<br />

√<br />

= (j(m(B) 2 /m 2 )v(g)/k<br />

√<br />

√<br />

= (j/m)m(B) v(g)/(mk)<br />

√<br />

≤ m(B) v(g)/(mk).<br />

Many strata will be completely inside or completely outside the object, <strong>and</strong><br />

will have zero variance. If<br />

j


Then<br />

Thus<br />

c(P )=c ′ (TP)=Ac(TP)<br />

c(TP)=Ac(P )<br />

And<br />

c ′ (TP)=c(P )=Ac ′ (P )<br />

Hence the matrix of T is A in both bases. In summation we have shown that<br />

when an unprimed basis is transformed to a primed basis, then the matrix of<br />

the coordinate transformation from the unprimed to the primed coordinate<br />

system is the inverse of the matrix of the point transformation.<br />

21 Cross Product, Axial Vectors<br />

The cross product of two vectors in a Euclidean space is defined by its components<br />

with respect to an orthogonal coordinate system by<br />

⎡<br />

⎤ ⎡<br />

⎤<br />

u 1 u 2 u 3 a 1 a 2 a 3<br />

⎢<br />

⎥ ⎢<br />

⎥<br />

a × b = ⎣ a 1 a 2 a 3 ⎦ = ⎣ b 1 b 2 b 3 ⎦<br />

b 1 b 2 b 3 u 1 u 2 u 3<br />

= ɛ ijk a i b j u k ,<br />

where ɛ ijk is the permutation symbol <strong>and</strong> u 1 ,u 2 ,u 3 , are unit coordinate vectors.<br />

If ijk is an even permutation, the permutation symbol is 1, if ijk is odd,<br />

the permutation symbol is -1, if ijk are not distinct, then the permutation<br />

symbol is 0. The kth component of a × b is<br />

c k = ɛ ijk a i b j .<br />

Let there be a new primed coordinate system. We have<br />

The Jacobian is<br />

ɛ ijk<br />

∂x i<br />

∂x ′p ∂x j<br />

∂x ′q ∂x k<br />

∂x ′r =Det(J)ɛ pqr.<br />

J =<br />

⎡<br />

⎢<br />

⎣<br />

∂x 1<br />

∂x ′1 ∂x 2<br />

∂x ′1 ∂x 3<br />

∂x ′1<br />

∂x 1<br />

∂x ′2 ∂x 2<br />

∂x ′2 ∂x 3<br />

∂x ′3<br />

∂x 1<br />

∂x ′3 ∂x 2<br />

∂x ′3 ∂x 3<br />

∂x ′3<br />

⎤<br />

⎥<br />

⎦<br />

75


[Lass, page 8]. The definition of a × b depends on the coordinate system.<br />

But, if the coordinate systems are related by a proper orthogonal transformation,<br />

rather than by a general transformation, then the determinant of<br />

the Jacobian is 1, that is<br />

Det(J) =1.<br />

Then<br />

∂x i ∂x j ∂x k<br />

ɛ ijk<br />

∂x ′p ∂x ′q ∂x = ɛ pqr.<br />

′r<br />

So the permutation symbol transforms as a tensor. The components of a × b,<br />

are obtained by contracting the product of a tensor <strong>and</strong> two vectors, <strong>and</strong><br />

so the cross product is a Cartesian vector. A second order tensor, whose<br />

components obey<br />

c ij = −c ji ,<br />

is called antisymmetric. An antisymmetric tensor defines a Cartesian vector.<br />

The components of this vector are<br />

c ij = −(1/2)ɛ ijk c ij .<br />

These are the components of a Cartesian vector, because the vector is the<br />

contraction of a Cartesian tensor <strong>and</strong> a general tensor. We find that<br />

⎡ ⎤<br />

c 32<br />

⎢ ⎥<br />

c = ⎣ −c 31 ⎦ .<br />

c 21<br />

A vector such as c is called an axial vector. Let d r be the rth component of<br />

the cross product c × x. Then<br />

d r = ɛ pqr (−(1/2)ɛ ijp c ij )x q .<br />

We claim that<br />

We have<br />

ɛ pqr (−(1/2)ɛ ijp c ij )=c rq .<br />

−(1/2)ɛ pqr ɛ pij c ij<br />

3∑<br />

= (−1/2)ɛ pqr ɛ pij c ij<br />

p=1<br />

76


So<br />

= ∑<br />

p≠q,p≠r<br />

= ∑<br />

p≠q,p≠r<br />

= ∑<br />

p≠q,p≠r<br />

(−1/2)ɛ pqr ɛ pij c ij<br />

[(−1/2)ɛ pqr ɛ pij c ij − (−1/2)ɛ pqr ɛ pqr c rq ]<br />

[(−1/2)c qr +(1/2)c rq = c rq .<br />

d r = c rq x q .<br />

If L is the linear transformation which has components c rq , then the value<br />

to which a vector x is mapped, is given by the cross product<br />

L(x) =c × x.<br />

where c is the axial vector defined by the antisymmetric tensor with components<br />

c k . These ideas are applied to the concept of angular velocity.<br />

22 Angular Velocity<br />

Consider a rigid body, with a point at the origin fixed. Let P be a point in<br />

the body <strong>and</strong> let u 1 ,u 2 ,u 3 <strong>and</strong> u ′ 1 ,u′ 2 ,u′ 3 be two bases of a vector space. The<br />

unprimed basis is fixed in space. The primed basis is fixed in the body. Then<br />

u ′ i = R(u i ),<br />

where R is an orthogonal transformation, which varies with time. Then the<br />

coordinates of P are related by<br />

x ′ i = a ij x j .<br />

where (a ij ) is the inverse of the matrix (ā ij )ofR. By differentiating, <strong>and</strong><br />

noting that the components of P are constant in the primed system, we find<br />

that (Lass page 46)<br />

dx i<br />

dt = w ijx j ,<br />

for<br />

w ij = −ā ik<br />

da kj<br />

dt .<br />

77


By differentiating the norm of P , which is invariant, we find that (w ij )is<br />

skew symmetric, that is<br />

w ij = −w ji .<br />

So (w ij ) can be represented as an axial vector. We have<br />

c(w) =<br />

⎡<br />

⎢<br />

⎣<br />

w 32<br />

−w 31<br />

w 21<br />

⎤<br />

⎥<br />

⎦ =<br />

⎡<br />

⎢<br />

⎣<br />

⎤<br />

w 32<br />

⎥<br />

w 13 ⎦<br />

w 21<br />

<strong>and</strong><br />

v = dc(P ) = c(w) × c(P ).<br />

dt<br />

w is the angular velocity vector. It transforms like a vector under an orthogonal<br />

transformation.<br />

Example. Let rotation transformation R have matrix<br />

⎡<br />

c(t 2 ) −s(t 2 ⎤<br />

) 0<br />

⎢<br />

(ā ij )= ⎣ s(t 2 ) c(t 2 ⎥<br />

) 0 ⎦ .<br />

0 0 1<br />

<strong>and</strong><br />

So<br />

Then<br />

(a ij )=(ā ij ) T =<br />

da ij<br />

dt<br />

⎡<br />

⎢<br />

(w ij )=−2t ⎣<br />

⎡<br />

⎢<br />

=2t ⎣<br />

⎡<br />

⎢<br />

⎣<br />

c(t 2 ) −s(t 2 ) 0<br />

s(t 2 ) c(t 2 ) 0<br />

0 0 1<br />

c(t 2 ) s(t 2 ) 0<br />

−s(t 2 ) c(t 2 ) 0<br />

0 0 1<br />

−s(t 2 ) c(t 2 ) 0<br />

−c(t 2 ) −s(t 2 ) 0<br />

0 0 0<br />

⎡<br />

⎢<br />

= −2t ⎣<br />

⎤ ⎡<br />

⎥ ⎢<br />

⎦ ⎣<br />

0 1 0<br />

−1 0 0<br />

0 0 0<br />

⎤<br />

⎥<br />

⎦ .<br />

⎤<br />

⎥<br />

⎦ ,<br />

−s(t 2 ) c(t 2 ) 0<br />

−c(t 2 ) −s(t 2 ) 0<br />

0 0 0<br />

⎤<br />

⎥<br />

⎦ .<br />

⎤<br />

⎥<br />

⎦<br />

78


So<br />

c(w) =<br />

⎡<br />

⎢<br />

⎣<br />

Suppose P = u ′ 1 .Letc(P ) be the coordinate vector of P in the unprimed<br />

system <strong>and</strong> c ′ (P ) the coordinate vector in the primed system. Then<br />

Now<br />

0<br />

0<br />

2t<br />

⎤<br />

⎥<br />

⎦ .<br />

c(P )=(ā ij )c ′ (P )<br />

⎡ ⎤<br />

1<br />

⎢ ⎥<br />

=(ā ij ) ⎣ 0 ⎦<br />

0<br />

⎡<br />

c(t 2 ⎤<br />

)<br />

⎢<br />

= ⎣ s(t 2 ⎥<br />

) ⎦ .<br />

0<br />

dc(P )<br />

dt<br />

⎡<br />

⎢<br />

=2t ⎣<br />

−s(t 2 )<br />

c(t 2 )<br />

0<br />

⎤<br />

⎥<br />

⎦ .<br />

This is the velocity computed with matrices. The velocity computed with<br />

the cross product is<br />

⎡ ⎤ ⎡<br />

0 c(t 2 ⎤<br />

)<br />

⎢ ⎥ ⎢<br />

c(w) × c(P )= ⎣ 0 ⎦ × ⎣ s(t 2 ⎥<br />

) ⎦<br />

2t 0<br />

⎡<br />

⎢<br />

=2t ⎣<br />

−s(t 2 )<br />

c(t 2 )<br />

0<br />

We get the same result with either method.<br />

⎤<br />

⎥<br />

⎦ .<br />

23 Angular Momentum And The Inertia Tensor<br />

The angular momentum vector is defined as (Lass p.115)<br />

∫<br />

L = r × vdm,<br />

79


where r is the position, v the velocity <strong>and</strong> m the mass. The kth component<br />

is<br />

∫<br />

L k = ɛ ijk x i ẋ j dm.<br />

Then<br />

dL k<br />

dt<br />

∫<br />

=<br />

∫<br />

ɛ ijk x i ẍ j dm + ɛ ijk ẋ i ẋ j dm<br />

∫<br />

= ɛ ijk x i ẍ j dm.<br />

The second term vanishes because the cross product of parallel vectors is<br />

zero. The torque vector T is<br />

∫<br />

∫<br />

r × df =<br />

r × d2 r<br />

dt 2 dm.<br />

The kth component of the torque is<br />

∫<br />

T k = ɛ ijk x i ẍ j dm.<br />

Thus dL/dt = T . Because<br />

we have<br />

∫<br />

L k =<br />

ẋ j = w j p xp ,<br />

ɛ ijk x i w j px p dm = ɛ ijk<br />

∫<br />

x i x p dm<br />

= ɛ ijk wp j Iip ,<br />

where I is the inertia tensor. The components of the inertia tensor are<br />

∫<br />

I ip = x i x p dm.<br />

The moment of inertia about an arbitrary axis can be found from the<br />

inertia tensor. Given a straight line through the origin, let p be a function,<br />

whose value at a point is the distance from the point to the line. The moment<br />

of inertia about the line is then defined as (McConnel p.233)<br />

∫<br />

p 2 dm.<br />

Suppose u is a unit vector in the direction of the line. Let t be the trace.<br />

Then<br />

p 2 = x i x i − (r · u) 2<br />

80


= δ ij x i x j − (δ ij x i u j ) 2 .<br />

So the moment of inertia is<br />

= δ ij I ij − δ ij δ kp u j u p I ik<br />

= t(I) − I ik u i u k<br />

= t(I)δ ik u i u k − I ik u i u k<br />

=(t(I)δ ik − I ik )u i u k<br />

= J ik u i u k .<br />

The tensor J has components<br />

J ik = t(I)δ ik − I ik .<br />

In some books (e.g. Goldstein), J, rather than I, is called the inertia tensor.<br />

The explicit components of J are:<br />

∫<br />

J 11 = [(x 2 ) 2 +(x 3 ) 2 ]dm,<br />

∫<br />

J 22 =<br />

∫<br />

J 33 =<br />

[(x 1 ) 2 +(x 3 ) 2 ]dm,<br />

[(x 1 ) 2 +(x 2 ) 2 ]dm.<br />

When i ≠ j,<br />

∫<br />

J ij = − [(x i ) 2 +(x j ) 2 ]dm.<br />

If f is the bilinear form corresponding to the symmetric matrix J, then<br />

the moment of inertia about a unit vector u is f(u, u).<br />

24 Surface Integrals<br />

A surface area element dσ goes to ds = dσ cos(θ), when it is projected to a<br />

plane, where θ is the angle between the surface normal of the plane, <strong>and</strong> the<br />

projection direction. If u is a unit vector in the projection direction, then<br />

dσ = ds/(n · u).<br />

81


A general surface integral is<br />

∫<br />

f(x, n)dσ.<br />

f is a function of position x <strong>and</strong> normal n. Suppose p is the projection<br />

function. Then<br />

∫<br />

∫<br />

f(x, n)dσ = f(p −1 (y),n(p −1 (y))(ds/(n · u).<br />

A<br />

p(A)<br />

Now suppose A 1 , ...., A n covers the surface, <strong>and</strong> p is the plane projection from<br />

A 1 to 2-space. Suppose there are functions g i defined on the surface, where<br />

each g i vanishes outside of A i . And suppose that each g i has values between<br />

0 <strong>and</strong> 1, <strong>and</strong> suppose that the g i sum to 1. That is<br />

n∑<br />

g i (x) =1.<br />

i=1<br />

Such a set of functions is called a partition of unity, subordinate to the cover<br />

A 1 , ..., A n .Thenwehave<br />

The surface integral is<br />

∫<br />

n∑<br />

∫<br />

f(x, n)dσ =<br />

A<br />

i=1<br />

p(A i )<br />

n∑<br />

f = g i (x)f(x) =1.<br />

i=1<br />

g i (p −1 (y),n(p −1 (y))f(p −1 (y),n(p −1 (y))(ds/(n · u).<br />

When p i is the projection in the x i direction, let g i be the function whose<br />

value at a point is the square of the ith component of the unit normal vector<br />

to the surface. In general p i is a many to one function <strong>and</strong> when we define<br />

A ik to be the kth layer of the surface, which is pierced by the projecting ray,<br />

the functions<br />

f i : A ik → R,<br />

are surface patches, <strong>and</strong> the<br />

constitute a partition of unity.<br />

g i : A ik → R,<br />

82


25 Volume Integral<br />

A volume integral can be changed to a surface integral by using the divergence<br />

theorem. Define a vector field<br />

⎡ ⎤<br />

H = r 3 = 1 x<br />

⎢ ⎥<br />

⎣ y ⎦ .<br />

3<br />

z<br />

Let B be a set <strong>and</strong> ∂B its bounding surface. Then the volume of B is<br />

∫ ∫<br />

dV = ∇·HdV<br />

B B<br />

∫<br />

= H · ndS<br />

∂B<br />

= 1 ∫<br />

(xn x + yn y + zn z )dS<br />

3 ∂B<br />

Note that the integr<strong>and</strong> is the distance from the origin to the plane containing<br />

the area element dS. In particular for any plane area, say A, thevolumeof<br />

the pyramid, with vertex at the origin <strong>and</strong> base A, is<br />

V = hA 3 ,<br />

where h = n · R, is the height of the pyramid. The volume of a polyhedron<br />

consisting of k polygons, is therefore<br />

V =<br />

k∑<br />

i=1<br />

P i · n i<br />

A i ,<br />

3<br />

where A i is the area of the ith polygon, P i is some point on the polygon, <strong>and</strong><br />

n i is the outward normal to the polygon. The divergence theorem can also<br />

be used to compute moments. For example, applying the divergence theorem<br />

to the vector field<br />

⎡ ⎤<br />

G = 1 2<br />

⎢<br />

⎣<br />

x 2<br />

1<br />

1<br />

⎥<br />

⎦ ,<br />

gives a surface calculation of the x moment.<br />

m x = 1 ∫<br />

x 2 n x dS.<br />

2 ∂B<br />

83


26 Polygon Areas<br />

We shall calculate polygon areas. Let a closed curve γ have position vector<br />

r(t), 0 ≤ t ≤ 1. The area enclosed by the curve is<br />

A = 1 ∮<br />

r × dr.<br />

2 γ<br />

This of course is a vector. It is the magnetic moment of a circuit with<br />

unit current. When the curve lies in a plane, the magnitude of this integral<br />

is equal to the area enclosed by the curve. This is obvious from the definition<br />

of the cross product when the plane passes through the origin. When the<br />

plane does not pass through the origin, the vector r can be written as a sum<br />

of a constant vector normal to the plane, <strong>and</strong> a vector that lies in the plane.<br />

The constant vector is everywhere normal to the line element, <strong>and</strong> so does<br />

not make a contribution to the integral. This case reduces to the former case.<br />

As an aside, this calculation can be used to find the inner region enclosed<br />

by a plane curve. In the case that the curve lies in the xy plane, the vector<br />

integral will be in the z direction. If the component is positive then the<br />

inner region is to the left. This is obvious if the curve is the unit circle<br />

with the counterclockwise orientation. For a general proof, note that a curve<br />

which bounds an inner region can be continuously deformed to a unit circle<br />

in such a way that the area never vanishes. Thus the sign of the area must<br />

be maintained.<br />

If the sign is negative then the inner region lies to the right. The curve<br />

direction is defined by the increasing parameter value.<br />

Returning to the polygon area problem, the integral over a line segment<br />

is<br />

A = r 1 × r 2<br />

,<br />

2<br />

where r 1 <strong>and</strong> r 2 are the starting <strong>and</strong> ending points. This is true because the<br />

line element has the same direction as both r 2 − r 1 <strong>and</strong> r − r 1 . The cross<br />

product of parallel vectors is zero, so the integral is<br />

∫<br />

1<br />

2 r 1 × dr<br />

= 1 2 r 1 × (r 2 − r 1 )<br />

84


= 1 2 r 1 × r 2 .<br />

Thus the area of a closed polygon A i with m sides <strong>and</strong> m vertices equals the<br />

magnitude of<br />

1<br />

m∑<br />

r j × r j+1 ,<br />

2<br />

j=1<br />

where<br />

r m+1 = r 1 .<br />

This sum is clearly normal to the polygon, since each term is. A unit normal<br />

is obtained by dividing by the area A i .<br />

The number of cross products that need to be calculated can be reduced.<br />

Forexampleforatrianglewithm = 3 the sum of the cross products is<br />

r 1 × r 2 + r 2 × r 3 + r 3 × r 1<br />

= r 2 × r 3 − r 2 × r 2 − r 1 × r 3 + r 1 × r 2<br />

=(r 2 − r 1 ) × (r 3 − r 2 )<br />

For another example we may decompose a hexagon into 4 triangles <strong>and</strong> write<br />

the area as<br />

1<br />

3∑<br />

2 [ (r i+1 − r i ) × (r i+2 − r i+1 )+(r 3 − r 1 ) × (r 5 − r 3 )].<br />

i=1<br />

27 Perspective Projection<br />

Let Q be a point in real projective 3 <strong>Space</strong> (RP3). Q has component vector<br />

Q =(Q 1 ,Q 2 ,Q 3 ,Q 4 )=(x, y, z, w),<br />

where the components are the homogeneous coordinates of the point.<br />

Consider a plane with coordinate vector A. The equation of the plane is<br />

given as an inner product,<br />

(A, Q) =A 1 Q 1 + A 2 Q 2 + A 3 Q 3 + A 4 Q 4 =0.<br />

85


Figure 8: A Perspective drawing showing, a building, a railroad track, <strong>and</strong><br />

the horizon. The vanishing point at the end of the railroad tracks is at infinity<br />

in three space, yet its projection is a finite point on the two dimensional page.<br />

The figure was generated with program tracks.ftn.<br />

86


Let P be a projection point not in the plane.<br />

intersection of the plane with the line<br />

Let L(Q) bethepointof<br />

Then<br />

Q + tP.<br />

(A, Q + tP )=0.<br />

Solving for t, we find<br />

(A, Q)<br />

L(Q) =Q −<br />

(A, P ) P.<br />

L is a linear projection operator, i.e. L ∗ L = L. Using a rigid motion transformation,<br />

we may transform the plane to the xy plane, <strong>and</strong> the projection<br />

point to the positive z axis. Hence we consider the special case where the<br />

projection plane has equation<br />

z =0,<br />

<strong>and</strong> the projection point P is on the positive z axis. Then<br />

<strong>and</strong><br />

A =(0, 0, 1, 0) T ,<br />

P =(0, 0,p 3 ,p 4 ) T .<br />

In this special case of projection into the xy plane,we write<br />

L = L xy .<br />

Then<br />

(x ′ ,y ′ ,w ′ ) T = L xy Q =(x, y, z, w) T − z p 3<br />

(0, 0,p 3 ,p 4 ) T .<br />

L xy =<br />

⎡<br />

⎢<br />

⎣<br />

=(x, y, 0,w− z p 4<br />

p 3<br />

) T .<br />

1 0 0 0<br />

0 1 0 0<br />

0 0 −p 4 /p 3 1<br />

⎤<br />

⎥<br />

⎦ =<br />

⎡<br />

⎢<br />

⎣<br />

1 0 0 0<br />

0 1 0 0<br />

0 0 −1/d 1<br />

where d is the distance from the projection plane to the projection point.<br />

GivenaprojectionpointP <strong>and</strong> a center point C, letT 1 be an affine transformation<br />

translating C to the origin. Let P have elevation angle θ, <strong>and</strong><br />

87<br />

⎤<br />

⎥<br />

⎦ ,


azimuth angle φ. The azimuth angle gives the direction in the xy plane measured<br />

from the positive x axis. The azimuth is the rotation angle, about the<br />

z axis, that the xz plane would have to be rotated, so that it would include<br />

the projection direction. For example, the azimuth of the positive x axis is<br />

zero, <strong>and</strong> the azimuth of the positive y axis is π/2 . The elevation is the<br />

angle from the xy plane to the projection direction. We rotate the image of<br />

the projection point into the yz plane with a rotation T 2 about the z-axis<br />

by angle −φ − π/2. We rotate the image of the projection point up to the<br />

z-axis, with a rotation T 3 about the positive x axis, by an angle −(π/2 − θ).<br />

The complete perspective transformation matrix is<br />

L = L xy T 3 T 2 T 1 ,<br />

where<br />

<strong>and</strong><br />

⎡<br />

T 2 = ⎢<br />

⎣<br />

⎡<br />

T 3 = ⎢<br />

⎣<br />

⎡<br />

T 1 = ⎢<br />

⎣<br />

1 0 0 −C x<br />

0 1 0 −C y<br />

0 0 1 −C z<br />

0 0 0 1<br />

⎤<br />

⎥<br />

⎦ ,<br />

c(φ + π/2) s(φ + π/2) 0 0<br />

−s(φ + π/2) c(φ + π/2) 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

⎡<br />

= ⎢<br />

⎣<br />

−s(φ) c(φ) 0 0<br />

−c(φ) −s(φ) 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

⎤<br />

⎥<br />

⎦ ,<br />

1 0 0 0<br />

0 c(θ − π/2) −s(θ − π/2) 0<br />

0 s(θ − π/2) c(θ − π/2) 0<br />

0 0 0 1<br />

⎡<br />

= ⎢<br />

⎣<br />

1 0 0 0<br />

0 s(θ) c(θ 0<br />

0 −c(θ) s(θ) 0<br />

0 0 0 1<br />

⎤<br />

⎥<br />

⎦ .<br />

⎤<br />

⎥<br />

⎦<br />

⎤<br />

⎥<br />

⎦<br />

88


Example. Isometric projection. The picture plane has coordinate vector<br />

⎡ ⎤<br />

1<br />

1<br />

R = ⎢ ⎥<br />

⎣ 1 ⎦<br />

0<br />

The projection point is at infinity,<br />

Hence d = ∞, <strong>and</strong>so<br />

L xy =<br />

⎡<br />

⎢<br />

⎣<br />

⎡<br />

P = ⎢<br />

⎣<br />

1 0 0 0<br />

0 1 0 0<br />

0 0 −1/d 1<br />

1<br />

1<br />

1<br />

0<br />

⎤<br />

⎤<br />

⎥<br />

⎦<br />

⎥<br />

⎦ =<br />

The azimuth angle is φ = π/4, <strong>and</strong><br />

√<br />

2<br />

sin(φ) =<br />

2 ,<br />

√<br />

2<br />

cos(φ) =<br />

2 .<br />

The tangent of the elevation angle is<br />

tan(θ) = 1 √<br />

2<br />

.<br />

⎡<br />

⎢<br />

⎣<br />

1 0 0 0<br />

0 1 0 0<br />

0 0 0 1<br />

Then<br />

√<br />

3<br />

sin(θ) =<br />

3<br />

√<br />

6<br />

cos(θ) =<br />

3<br />

T 1 is the identity, because the center of projection is already at the origin.<br />

T 1 = I.<br />

89<br />

⎤<br />

⎥<br />


Then<br />

Then<br />

⎡<br />

− √ √ ⎤<br />

2 2<br />

0 0<br />

2 2 T 2 =<br />

− √ 2<br />

− √ 2<br />

0 0<br />

2 2 ⎢<br />

⎥<br />

⎣ 0 0 1 0<br />

, ⎦<br />

0 0 0 1<br />

⎡<br />

⎤<br />

1 0 0 0<br />

√ √ T 3 =<br />

0 3 6<br />

0<br />

3 3<br />

⎢<br />

⎣ 0 − √ √ 6 3 ⎥<br />

0<br />

.<br />

3 3 ⎦<br />

0 0 0 1<br />

⎡<br />

T 3 T 2 T 1 =<br />

⎢<br />

⎣<br />

− √ √<br />

2 2<br />

2<br />

− √ 6<br />

− √ 6<br />

√ 6 √ 6<br />

12 12<br />

6 6<br />

2<br />

0 0<br />

√<br />

6<br />

0<br />

√3 3<br />

0<br />

3<br />

0 0 0 1<br />

⎡<br />

− √ √ ⎤<br />

2 2<br />

0 0<br />

2 2<br />

L = L xy T 3 T 2 T 1 = ⎢<br />

⎣ − √ 6<br />

− √ √ 6 6<br />

0<br />

⎥<br />

6 6 3 ⎦<br />

0 0 0 1<br />

A projective transformation matrix is defined only up to a scalar multiple.<br />

Hence we can factor out √ 6/6, to get<br />

⎡<br />

⎢<br />

L = ⎣<br />

− √ 3 √ 3 0 0<br />

−1 −1 2 0<br />

0 0 0 √ 6<br />

⎤<br />

⎥<br />

⎦ .<br />

⎤<br />

⎥<br />

⎦<br />

The images of the unit points are,<br />

⎡ ⎤ ⎡<br />

1<br />

0<br />

L ⎢ ⎥<br />

⎣ 0 ⎦ = ⎢<br />

⎣<br />

1<br />

− √ 3<br />

−1<br />

0<br />

√<br />

6<br />

⎤<br />

⎥ , ⎦<br />

⎡<br />

L ⎢<br />

⎣<br />

0<br />

1<br />

0<br />

1<br />

⎤ ⎡<br />

⎥<br />

⎦ = ⎢<br />

⎣<br />

90<br />

√ ⎤<br />

3<br />

−1<br />

√<br />

0 ⎥<br />

6<br />

⎦ ,


<strong>and</strong><br />

⎡<br />

L ⎢<br />

⎣<br />

0<br />

0<br />

1<br />

1<br />

⎤ ⎡<br />

⎥<br />

⎦ = ⎢<br />

⎣<br />

⎤<br />

0<br />

2<br />

⎥<br />

√<br />

0 ⎦ .<br />

6<br />

The image of the coordinate axes are as shown in the Figure. The lengths<br />

are foreshortened by the factor 1/ √ 6. Conventional isometric drawing, true<br />

lengths are laid off along the coordinate axes, so that the matrix is<br />

⎡<br />

⎢<br />

⎣<br />

− √ 3/2 √ 3/2 0 0<br />

−1/2 −1/2 1 0<br />

0 0 0 1<br />

In perspective drawing, the horizon is defined as the intersection of the xyplane<br />

with the plane at infinity<br />

w =0.<br />

A horizon point can not be reached in 3-space, but we may ”see” its projection.<br />

A line at infinity can project to a finite line in the picture plane.<br />

Similarly the point at infinity where two parallel lines meet, may project into<br />

a finite point in 2-dimensional space. Such a point is called a vanishing point.<br />

For example, the point<br />

⎡ ⎤<br />

1<br />

1<br />

Q = ⎢ ⎥<br />

⎣ 0 ⎦<br />

0<br />

is the point at infinity, where parallel 45 degree lines in the plane meet at<br />

infinity. The vanishing point is L(Q) in the picture plane. The horizon in<br />

the picture plane is determined by two vanishing points, corresponding to<br />

two sets of parallel lines in the xy-plane. When the projection point P is<br />

at infinity, as in isometric projection, parallel lines in 3-space are mapped to<br />

parallel lines in 2-space so there are no vanishing points.<br />

If the line through P <strong>and</strong> Q is parallel to the picture plane, then the<br />

projection of Q will be a point at infinity in the picture plane.<br />

The following information is needed to construct the perspective transformation:<br />

(1)The center of the projection plane<br />

(C x ,C y ,C z ) T .<br />

91<br />

⎤<br />

⎥<br />

⎦ .


. (2)The direction of the projection point from the center, which is specified<br />

by the azimuth angle φ, <strong>and</strong> the elevation angle θ. (3)The reciprocal of the<br />

distance from the projection point to the picture plane<br />

1<br />

d ,<br />

which is zero for a projection point at infinity.<br />

Note that the usual projection from an infinite point on the z axis is<br />

specified by elevation θ = π/2, azimuth φ = −π/2, <strong>and</strong> reciprocal distance<br />

1/d =0. ThisgivesL xy .<br />

28 The Tektronix Hardware Modeler: A Quadric<br />

Solid Modeler<br />

In conjunction with the Portl<strong>and</strong> CAM-I (Computer Aided Manufacturing<br />

International) meeting, held August 3-7 1987, there was a tour of Tektronix<br />

laboratories, where A CSG (Constructive Solid Geometry) system using<br />

quadric halfspaces, with almost real time response, say three seconds for<br />

an average model, was given its first public viewing. This system consisted<br />

of both software <strong>and</strong> hardware.<br />

The method:<br />

<strong>Space</strong> is divided recursively using an octree technique. Each block is<br />

tested against each half space to determine whether it is inside, outside or<br />

on. If a given block is completely inside or completely outside the model it is<br />

discarded <strong>and</strong> not subdivided. A Taylor series expansion is used to classify<br />

a block with respect to a halfspace. When a block is sufficiently small <strong>and</strong><br />

meets the model surface it is considered a point on the surface <strong>and</strong> a normal<br />

is computed. It is mapped to the viewing plane <strong>and</strong> an intensity is computed.<br />

The voxels are searched from front to back <strong>and</strong> once a voxel is found to be<br />

”on” the object, its image on the screen, which is a rectangle is reserved<br />

<strong>and</strong> no voxels behind it need be searched. This algorithm is implemented<br />

in hardware <strong>and</strong> is very fast. The algorithm is very much faster than ray<br />

tracing. It is claimed to be of order less than n, so that the larger n is (n=<br />

number of half space primitives) the greater its advantage.<br />

Also seen at the labs was a discrete simulation system using Smalltalk,<br />

a sophisticated computer algebra system using the symbolic mathematical<br />

92


Z<br />

-Y<br />

X<br />

Figure 9: The intersection of the parabolic cylinder z 2 = y <strong>and</strong> the cone<br />

y 2 = xz is the union of the twisted cubic curve <strong>and</strong> the line along the x axis.<br />

This figure was generated with the solid modeling program Quadric.<br />

93


system Reduce as basis, a 3d terminal using a quarter wave plate, <strong>and</strong> a fast<br />

switching polarizing liquid crystal display (required 3d glasses).<br />

Arnie Karush, Tektronix GMP (CAM-I Geometric Modeling Program)<br />

representative, was formerly in charge of the Tektronix 4029 (polygon processor)<br />

development project. He says that the 4029 has advantages over the<br />

Silicon-Graphics terminal in certain cases. The 4029 must be driven by an<br />

external computer while the Silicon-Graphics can function alone.<br />

29 References <strong>and</strong> bibliography<br />

[1]Asl<strong>and</strong>er Louis And Mackenzie Robert, Introduction To Differential<br />

Manifolds, Dover N.y 1977.<br />

[2]Barnhill R E, Riesenfeld R F (Editors), Computer Aided Geometric<br />

Design, Academic Press 1974.<br />

[3]Birkhoff Garrett And Maclane Saunders, A Survey Of Modern Algebra<br />

Revised Edition, Macmillan 1953.<br />

[4]Brunk H D, Introduction To Mathematical Statistics, Blaisdell 2nd<br />

Ed. 1965.<br />

[5]Courant R, Robbins H, What Is Mathematics, Oxford University<br />

Press 1947.<br />

[6]Eisen Martin, Introduction To Mathematical Probability Theory,<br />

Prentice-hall Englewood Cliffs N.j. 1969.<br />

[7]Faux Ivor D. And Pratt Michel J., Computational Geometry For Design<br />

And Manufacture, Halsted New York 1979.<br />

[8]Goldstein Herbert, Classical Mechanics, Addison-wesley, 1950.<br />

[9]Halmos Paul R., Introduction To Hilbert <strong>Space</strong>, ChelseaNewYork<br />

2nd Ed. 1957.<br />

94


[10]Hodge W V D, Pedoe D, Methods Of Algebraic Geometry, Cambridge<br />

U. Press 1968.<br />

[11]Knuth Donald, The Art Of Computer Programming, Vol. 1 Addisonwesley<br />

2nd Ed.1973..<br />

[12]Lass Harry, Elements Of Pure And Applied Mathematics, Mcgrawhill<br />

1957..<br />

[13]Leven Joshua, A Parametric Algorithm For Drawing Pictures Of<br />

Solid Objects Composed Of Quadric Surfaces, Comm. Acm V. 19 No.<br />

10 P555 Oct 1976.<br />

[14]Mcconnell Albert J, Applications Of Tensor Calculus, Dover 1931.<br />

[15]Olmsted John M H, Solid Analytic Geometry, Appleton-centurycrofts<br />

New York 1947..<br />

[16]O’neill Barrett, Elementary Differential Geometry, AcademicPress<br />

New York 1966.<br />

[17]Panofsky Erwin, Durer As A Mathematician,InTheWorldOfMathematics,<br />

Vol. 1 James Newman Ed., Simon And Schuster New York 1956.<br />

[18]Requicha A A G, Voelker H B, Constructive Solid Geometry, Technical<br />

Memor<strong>and</strong>um 25,, Production Automation Project The University Of,<br />

Rochester Rochester N. Y.1977.<br />

[19]Sasaki Tateaki, Multidimensional Monte Carlo Integration Based<br />

On Factorized Approximation Functions, Siam Jour. Num. Analysis<br />

Vol. 15 No. 5 Oct. 1978.<br />

[20]Semple J G, Kneebone G T, Algebraic <strong>Projective</strong> Geometry, Oxford<br />

1952.<br />

[21]Smart E H, A First Course In <strong>Projective</strong> Geometry, Macmillan<br />

1913.<br />

95


[22]Spivak Michael, Calculus On Manifolds, W.a Benjamin, New York<br />

1965.<br />

[23]Struik Dirk J, Analytic And <strong>Projective</strong> Geometry, Addison-wesley<br />

Cambridge Mass. 1953.<br />

[24]Willmore T J, An Introduction To Differential Geometry, Oxford<br />

U. Press 1959.<br />

[25]Yakowitz S, Krimmel J E , Szidarouszky F, Weighted Monte Carlo<br />

Integration, Siam Jour. Num. Anal. Vol. 15, No. 6 Dec. 1978.<br />

[26] Emery James D, <strong>Projective</strong> space, Quadric surfaces, <strong>Conics</strong> And<br />

Rational Curves, rational.tex, rational.pdf, 2001.<br />

96

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!