What survives

What a flat map leaves alone

A projectivity of the plane is eight numbers in a matrix, and reading them tells a reader nothing. What it does is decided by its fixed points, and there are exactly three cases: three isolated fixed points, or a whole line of them with one point off it, or a whole line of them with the point fallen onto it. The middle case has five numbers instead of eight and every point slides along a line, and it is what most of the maps this site builds turn out to be.

Worth reading first: What a projection destroys · A projection of a projection.

This site has been building maps of planes for seven phases. A shadow, a mirror, a rectification, a photograph of a photograph, an anamorph on a floor: each is a projectivity of a plane, each is fitted or constructed as a 3×3 matrix, and each is used by applying it to points.

A matrix is not a description of what a map does. Eight numbers up to scale, and reading them off the page tells a reader nothing about whether anything stays still, whether points move along lines, or whether the map is close to doing nothing at all.

There is a description, it is short, and it has exactly three cases.

A homology: an axis, a centre, and one ratioEvery point moves along the line joining it to the centre, by the same ratio 2.4000; every point of the axis stays where it is. Three numbers, and the arrows are all that is left to draw.centrefaint dots: before · solid: afterhomologyratio 2.4000
Fig. 1 The middle case, drawn as what it does. The line across the drawing is fixed pointwise; every other point slides along its own line to a single centre, and the distances all scale by one number. Three objects and one number, in place of eight coefficients.

Fixed points are eigenvectors

A point of the projective plane is a homogeneous 3-vector up to scale, and a projectivity is a matrix up to scale. So a point is fixed when

Hp=λp\mathbf{H}\mathbf{p} = \lambda\,\mathbf{p}

for some λ\lambda — the point comes back to itself up to the scale that homogeneous coordinates do not distinguish. Fixed points are eigenvectors, and the eigenvalues are the scale factors.

A 3×3 matrix has three eigenvalues, counted with multiplicity, and its real ones give real fixed points. What the map does is decided by how many distinct eigenvalues there are and how large the eigenspaces are, and there are three possibilities.

The three cases

General. Three distinct eigenvalues, three eigenvectors, three isolated fixed points forming a triangle. The three lines joining them in pairs are fixed as lines — points on them move along them — but no line is fixed pointwise. Nothing slides toward anything, and the map has to be given as a matrix and read as one. A rectification is this.

Homology. A repeated eigenvalue whose eigenspace is two-dimensional. A two-dimensional eigenspace is a whole line of fixed points, called the axis, and every point of it stays exactly where it is. The third eigenvector is a single fixed point off the axis, the centre. Every other point moves along the line joining it to the centre, never off that line, and the ratio in which it moves — the characteristic ratio — is one number, the same everywhere in the plane.

Elation. The same, with the centre fallen onto the axis. The axis is still fixed pointwise, no point off it is fixed, and there is no ratio to state.

Counting: a general projectivity is eight numbers. A homology is a line (two), a point (two), and a ratio (one) — five. An elation is a line, a point on it (one, since it is constrained to the line), and one scale — four.

A general projectivity: three fixed points and no line of themThree fixed points, no two of them joined by a line of fixed points. Nothing slides along anything.faint dots: before · solid: aftergeneralno ratio
Fig. 2 The first case. Three fixed points and no line joining two of them fixed pointwise; nothing slides along anything, and the map’s only honest description is its matrix.
An elation: the centre has fallen onto the axisThe axis is still fixed pointwise and the centre now lies on it, so no point off the axis is fixed and there is no ratio to state.faint dots: before · solid: afterelationno ratio
Fig. 3 The third. The axis is fixed pointwise and the centre has fallen onto it, so nothing off the axis is fixed and there is no characteristic ratio — the map is a shear in the projective sense.

What the three cases exclude

Two possibilities a reader might expect are missing from the list, and it is worth saying why.

A map with no real fixed point at all is not one of the cases, because it cannot happen. A real cubic has at least one real root, so a real projectivity of the real projective plane has at least one real eigenvalue and therefore at least one real fixed point. A rotation of the Euclidean plane, which visibly has one fixed point and no fixed line, has two complex eigenvalues and one real one — and the real one is the centre of rotation.

A map with two lines of fixed points is not one either, because two distinct lines of fixed points would force every point of the plane to be fixed. Take any point off both lines, join it to two fixed points on each line, and the two joins are fixed as lines, so their intersection — the point itself — is fixed. So the map is the identity, and the case collapses.

That leaves three, and the count is not an empirical observation about the maps this site happens to build. It is the complete list, and a construction returning something else is a construction with an error in it.

The one that comes back to half precision

Reading the classification out of a matrix has one trap in it, and this site walked into it for a commit.

The eigenvalues come from a cubic, and a repeated root of a cubic comes back to half precision. Where the arithmetic is exact to 101610^{-16}, the two copies of a double eigenvalue differ by about 10710^{-7} — so a classifier testing them apart at 10710^{-7} calls every homology a general projectivity, correctly by its own test and uselessly.

The first version did exactly that. A homology built from a stated axis, centre and ratio was read back as “general”, with three distinct eigenvalues differing in the seventh digit and no line of fixed points found, because the eigenvector routine was asked for the null space of HλI\mathbf{H} - \lambda\mathbf{I} at a λ\lambda that was not quite the eigenvalue.

The repair is to cluster the roots before asking anything of them, at a tolerance of about 10510^{-5}, and to take the eigenvector at the cluster’s mean. The cluster gap is returned beside the verdict, so a map genuinely sitting between two classes reports the ambiguity rather than being sorted by a threshold.

This is the third instance on this site of the same species. The obliquity in the parallel field has to be stated on the square because the square root of a quantity vanishing at the answer returns half the digits; the manyviews field’s reconstruction residual has the same shape; and this is the one where getting it wrong changes a verdict rather than a digit.

Reading both objects out of one matrix

There is a small economy in the implementation worth stating, because it is what makes the classification robust rather than fiddly.

For a homology with axis m\mathbf{m}, centre v\mathbf{v} and ratio μ\mu,

H=I+(μ1)vmTmTv\mathbf{H} = \mathbf{I} + (\mu - 1)\,\frac{\mathbf{v}\,\mathbf{m}^{\mathsf T}}{\mathbf{m}^{\mathsf T}\mathbf{v}}

which is I\mathbf{I} plus a rank-one term. So HλI\mathbf{H} - \lambda\mathbf{I} at the repeated eigenvalue is rank one, and a rank-one matrix has a one-dimensional column space and a one-dimensional row space. The column space is the centre; the row space is the axis.

Both objects fall out of one matrix without a second eigen-solve, and the same expression covers the elation — where the rank-one form is I+kvmT\mathbf{I} + k\,\mathbf{v}\mathbf{m}^{\mathsf T} with mTv=0\mathbf{m}^{\mathsf T}\mathbf{v} = 0. The two classes are then told apart by a single number: whether the centre lies on the axis.

That number is the whole distinction and it is invisible in the drawn picture, which is why a classifier that swallowed it would report a characteristic ratio for a map that has none.

The classification refuses what it should

An assertion that has never rejected anything proves nothing, so the classifier is fed three maps whose class is known by construction and required to return each of them.

A homology built from a stated axis, centre and ratio comes back as a homology with its ratio recovered to 10610^{-6}. An elation built with its centre placed on its own axis comes back as an elation, not as a homology with a very large ratio. And a projectivity fitted to four correspondences chosen to be in general position comes back as general.

The elation is the one that matters. It differs from a homology only in whether one dot product vanishes, the difference is invisible in any drawing of the two, and a classifier calling every degenerate case a homology would satisfy the first and third tests and fail nothing.

The constructors refuse too, in both directions. A homology whose centre is asked to lie on its axis is refused rather than returning a matrix with a division by zero absorbed into it; an elation whose centre is off its axis is refused likewise.

A homology: an axis, a centre, and one ratioEvery point moves along the line joining it to the centre, by the same ratio 1.3000; every point of the axis stays where it is. Three numbers, and the arrows are all that is left to draw.centrefaint dots: before · solid: afterhomologyratio 1.3000
Fig. 4 A homology at a ratio near one, which is a map close to doing nothing. The classification is unchanged and the ratio is what says how far the map has gone — a number no reading of the matrix supplies.

The ratio is a cross-ratio

The characteristic ratio has a projective reading, which is what makes it a genuine invariant of the map rather than a coordinate accident.

Take a point p\mathbf{p} off the axis and its image p\mathbf{p}'. Both lie on the line joining p\mathbf{p} to the centre v\mathbf{v}, and so do two other distinguished points on that line: the centre itself, and the point where the line meets the axis. Four collinear points, and their cross-ratio is the characteristic ratio.

So μ\mu is a cross-ratio of four points determined by the map’s own structure, and it is therefore the same number whatever coordinates the plane is written in, and the same number for every choice of p\mathbf{p}. That second half is checkable and is what makes the classification’s ratio worth quoting: a number that varied with the point chosen would be a description of the point.

Two special values are worth naming. At μ=1\mu = -1 the four points are a harmonic set, and the map is a harmonic homology — an involution, equal to its own inverse. A reflection in a line is one; so is the mirror map this site’s census finds at a ratio of exactly 1.0000-1.0000. At μ=1\mu = 1 the map is the identity, and the ratio approaching one is the map approaching doing nothing.

What each class can be used for

The distinction is not taxonomy. It decides what a construction is available.

A homology can be built from three objects and applied without a matrix. Given an axis, a centre and a ratio, every point’s image is found by drawing one line and marking one ratio along it — a straightedge operation. That is why the classical perspective constructions work: they are homologies, and a draughtsman with a ruler can execute one.

A homology is determined by one correspondence once its axis and centre are known. One point and its image give the ratio, and the map is complete. A general projectivity needs four.

An elation has no ratio to measure, so a construction that expects one has to be told which case it is in. Asking an elation for its characteristic ratio is asking for a quantity that does not exist, and returning 1 — which is what a naive reading gives — is returning “the identity”, which the map is not.

A general projectivity has to be applied numerically. Nothing slides along anything, so there is no straightedge construction, and the eight coefficients are the shortest true description.

Halving a receding rectangle two waysThe diagonals cross at the image of the rectangle's centre, 8e-14 px from it — the construction is exact at every camera because it uses only which lines meet where, and that is what a projection keeps. Halving the drawn side with a ruler instead lands 22.7 px from the image of the side's midpoint.the diagonals against a ruler, at 3.2 mthe diagonals — exactthe ruler — 22.7 px outcorrect from 23 cm, at 160 mm wideharmonic set -1.000000 · 8e-14 px
Fig. 5 A straightedge construction that survives a projection, from this field’s second rung. It works because it names only incidences — and incidences are what every class of projectivity preserves, which is why the construction does not care which class it is being applied under.
A print, photographed again — flat and rolledFour marks fix a homography; the other 16 are predicted by it. On a flat print they land where it says to 1e-13 px. Rolled to 1/R = 0.90 per metre the same four predict the same 16 to 30.5 px, because a composition of projections is a projection only if the middle surface is a plane.an anchorcorrect from 19 cm, at 160 mm wideflat 1e-13 px · rolled 30.5 px
Fig. 6 And the composition rule underneath all of it: a picture of a picture is a picture. The classes are closed under composition in one direction only — two central collineations with the same axis compose to a third, and two with different axes do not.

The group with a fixed axis

That last remark is the structural fact the classification is worth having for, and it has a consequence used elsewhere on this site.

The maps of a plane fixing one line pointwise form a group. Homologies and elations with a common axis compose to homologies and elations with that same axis, and inverses stay in the family.

So a construction that composes two such maps — reading marks cast by one eye from the position of another, for instance — produces a third of the same kind without any further argument. The anamorph essays use exactly that: two anamorph homologies share the ground line as their axis, so a wrong viewpoint composes the intended picture with a central collineation on that same line, and the error is exactly zero along it whatever the wrong eye is.

That result needs no computation. It is the group property, and the group property is a consequence of the classification.

Moved 250 mm sideways, the picture becomes an elationThe intended design and the one a displaced eye actually sees, drawn over each other. The map between them fixes the ground line pointwise, so the departure is exactly zero there and reaches 212.5 mm at 1.38 m up.ground line — right from anywherefaint: intended · solid: seendeparture (mm) against height (m)01.38the error map is an elation, with the ground line as its axisno characteristic ratio — nothing off the axis is fixed250 mm sidewayszero on the axis, 212.5 mm at the top
Fig. 7 The consequence in use. Two maps with a common axis compose to a third, so the picture a displaced eye gets is exactly right along the ground line and wrong above it — for every displacement, without a case analysis.
Four constructions, three of them the same mapA shadow, a floor anamorph, a mirror and a rectification, each decomposed into its fixed points and lines. Three are central collineations with a line of fixed points; the fourth is not, and that is the difference between changing a picture and changing where it is seen from.constructionfixed structurea shadow, ground to floorhomology · ratio 0.6719a floor anamorphhomology · ratio -1.4815a mirror in a vertical planehomology · ratio -1.0000a rectificationgeneral · three fixed points3 of 4 are centrala line of fixed points is what they share
Fig. 8 And the census this classification makes possible: a shadow, a floor anamorph, a mirror and a rectification, sorted by what they leave alone. Three of the four have a line of fixed points.

Where the classes sit in the site’s other hierarchy

The previous phase organised its gate by group level: incidence, affine, projective. This classification is a different cut and the two are worth keeping apart.

The group level asks which quantities a map preserves — cross-ratio for a projectivity, parallelism for an affinity, length for an isometry. It is a statement about a whole group of maps.

The fixed structure asks what one map leaves alone, and it is a statement about a single member. Every homology is a projectivity, so both descriptions apply, and they answer different questions: the first says a homology preserves cross-ratio, the second says which points it does not move.

The two meet in one place worth noting. An affine map of the plane is exactly a projectivity fixing the line at infinity as a line, and a similarity is one fixing the two circular points on it. So the affine and metric rungs of the stratification are statements about fixed structure too — about what a map fixes on the line at infinity rather than about what it does in the finite plane.

Four points on a line, before and after a projectionLength and the ratio of lengths do not survive the projection; the cross-ratio does, agreeing to 0e+0 relative.horizonABCDon the groundin the picturelength AB1.00011.3930ratio AB:CD0.56670.6837cross-ratio1.31681.3168correct from 26 cm, at 160 mm wide34° across
Fig. 9 The quantity every class preserves. The classification is orthogonal to it: knowing a map is a homology says nothing extra about cross-ratio, and knowing it preserves cross-ratio says nothing about whether anything is fixed.
Projective, affine, metric — what each stage buysThe photograph fixes the plane only up to a projectivity: the midpoint of a receding side lands 0.3970 of the way along. Supplying the plane's vanishing line buys the midpoint back exactly and nothing else. Supplying the image of one circle buys the last three numbers, at which point the right angle is 90.000° and two equal sides measure 1.000000. The cross-ratio is 1.333333 in all three, because it was never lost.projectiveaffinemetricmidpointtwo equal sidesa right anglecross-ratioprojective1.333333333affine0.5000001.333333333metric0.5000001.00000090.000°1.333333333— means the stage does not determine it at allcross-ratio 1.333333 throughout
Fig. 10 And the ladder, whose rungs are fixed-structure statements about the line at infinity once they are read that way.

What a reader can do with the class

Three practical uses, and each is a question that would otherwise be answered by inspecting eight numbers.

Is this map close to the identity? For a homology, the characteristic ratio says so directly: μ\mu near one is a map that barely moves anything, whatever the size of the matrix entries. The matrix itself does not say — a homography can have large entries and do very little, or entries near the identity’s and do a great deal near its own fixed line.

Does this map have somewhere it is exactly right? Only if it has an axis, and then the axis is exactly where. That is the question every construction involving a wrong viewpoint asks, and the answer is a line rather than an error bar.

Can this map be drawn rather than computed? Only if it has an axis and a centre. A homology is executable with a straightedge and a general projectivity is not, and the distinction between the two is the distinction between a construction a draughtsman can perform and one that needs arithmetic.

Those three are the reason the classification is a rung rather than an appendix. The matrix is the complete description and it answers none of them without work; the class answers all three by inspection.

Three numbers, and the whole mapThe rabatted design maps to the floor marks by a homology: the ground line is fixed pointwise, one point off it is fixed, and one ratio does the rest. Rebuilding every mark from those three misses by 2.2e-15 m.axis — the ground line, fixed pointwisecentreaxisthe ground linefixed pointwisecentre(0.150, 4.020)height + distanceratio-1.481481−distance / heightevery mark rebuilt to 2.2e-15 meye 1.62 m up, 2.40 m backthree numbers back to the eye: 2.2e-16 m
Fig. 11 The class in use in another field. A floor anamorph’s three numbers are an axis, a centre and a ratio — and they turn out to be the eye’s three coordinates, which is a statement no reading of its matrix would have produced.
Two triangles in perspective from a pointCorresponding vertices lie on three lines through one centre. Pair off the corresponding SIDES instead and the three points where they meet are collinear — 3e-13 px from the line through them, at every configuration the slider reaches. Nothing was measured to make that happen, and nothing can be adjusted to improve it.three side intersections, collinear to 6e-13 pxcentrethree sides paired, three pointscollinear to 6e-13 px
Fig. 12 And the theorem underneath the whole family. Two triangles in perspective from a point have their sides meeting on a line — which is the axis and the centre of a homology, stated as a closure condition.

The short version

A projectivity of the plane is classified by its fixed points, and there are three cases: three isolated ones (general, eight numbers), a line of them plus one point off it (a homology, five numbers, with every point sliding along a line at a common ratio), and a line of them with the point on it (an elation, four numbers, with no ratio).

Reading the class out of a matrix needs the cubic’s repeated root clustered before anything is asked of it, because a double root comes back to half precision and an unclustered test calls every homology general.

The middle case is the useful one. It can be constructed with a straightedge, it is determined by one correspondence once its axis and centre are known, and maps sharing an axis form a group — which is why several constructions in different fields of this site turn out to compose without any argument at all.

What links here

Computed from the collection, not written here: the essays that point at this one.

Reads more easily once this is understood

Essays that name this one as worth reading first.

Shares its objects with

Essays that name at least two of the same things, and that neither author linked.

Named objects

A flat tag is an object no other essay names yet.

Affine mapCentral collineationCharacteristic ratioCollineationConditioningDegeneracydegrees of freedomDemonstrationElationFixed pointHomogeneous coordinatesHomographyPlanar homologyProjective limitProjective map