A straight line in a scroll is a hyperbola
Worth reading first: A scroll is a camera that moves · Where parallel lines meet.
A pinhole camera has one property that everything else about it is downstream of: it sends straight lines to straight lines. Every other surface this site has drawn on gives that up — a cylinder, a sphere, a fisheye each bow their lines in a way that can be measured — and so does a real lens, by an amount that can be fitted from straightness alone.
A scroll gives it up too, and for a reason none of those share. The surface is flat and the optics are ideal. What bends the line is that the eye moved while drawing it.
The algebra is two substitutions
Take a world line, parameterised affinely: . Its three coordinates are affine in , so from the previous essay’s two formulas:
which is affine in and therefore invertible: is affine in , provided the line crosses scans at all, which is . Substituting into the other coordinate,
gives a ratio of two affine functions of , hence of . A ratio of two affine functions is a Möbius transformation, and the graph of one is a rectangular hyperbola with a vertical and a horizontal asymptote.
That is the whole derivation and it has a sharp corollary sitting in the denominator. The image is affine in — a straight line — exactly when , which is when the world line holds its depth. There is no other case. A line at constant depth is drawn straight however it runs; a line that changes depth is drawn curved however slightly.
Two routes, because one is not a check
The site’s habit is that a closed form and a computation are two routes to the same number, and that agreeing is the result. So the hyperbola above is not merely asserted: lineImageCoefficients derives from the world line and the scroll’s parameters, and assertTheClosedFormMatchesTheProjection evaluates it at each sampled point’s own and compares with the projected .
They agree to px across the samples. If the model in pushbroom and the algebra above had disagreed — a sign, an axis, a standoff added on the wrong side — the figure would still have drawn a plausible curve under a plausible caption, and nothing else in the fleet would have noticed.
What the curvature is worth as a signal
Because straightness fails exactly when depth changes, the curvature of a drawn line in a scroll carries information, and it is worth asking how much.
The sag over a span is set by the range of the line crosses. Two consequences fall out. A line whose depth changes a little is drawn nearly straight — the sag is first order in the depth change, so a courtyard wall running slightly away from the track bows by a fraction of a brush width. And a line whose depth changes a great deal is drawn very curved, without limit: there is no maximum sag, because the near end can be brought arbitrarily close to the track.
So a scroll’s picture of a road running away into the distance is a curve that starts steep and flattens. A reader who knew the scroll’s compression and its standoff could read the road’s depth profile off the curvature directly. Nobody does that, and the point is not that anybody should — it is that the information is present and exact, which is not obvious from the description “the perspective is inconsistent”.
The comparison with a curved surface, which is not the same failure
Two of this site’s fields already contain pictures whose straight lines are curves, and it is worth being exact about how this differs from both, because the symptom is identical and the cause is not.
A curved picture surface — a cylinder, a fisheye — bends lines because the surface the projection lands on is not flat. The projection still has one centre; every ray still passes through the eye; the picture is still a projection, of the same scene, onto a different surface. Unbending it is a re-projection and needs nothing but the surface’s own map.
A real lens bends them because the optics are imperfect, and there the departure is a polynomial in the radius, recoverable by fitting, and correctable to the point where the residual is below a pixel.
A scroll bends them because there is no single centre for the rays to pass through. That failure is not undoable by any re-projection whatsoever, because the operation that would undo it would need to know each point’s depth — and the picture does not carry depth. This is the same structural difference the refraction field found between a slab of glass and a body of water: one displaces points in a way a warp can undo, the other does not, and the test is whether the displacement depends on how far away the point is.
The special cases are the ones worth checking
Three configurations sit at the edges of the derivation and each is a check rather than a curiosity.
A line parallel to the eye’s track and at constant depth is drawn straight, exactly, because . This is the roofline of a long wall running beside the track, and it is drawn as a straight horizontal — which is why the convention works at all for architecture, and why a scroll of a riverbank does not look obviously wrong at first reading.
A line perpendicular to the track, running directly away from the eye, has : every one of its points is in the same scan. It images to a single vertical segment. That is a genuine degeneracy of the model and a real property of the object — a scroll draws a road running straight away from the viewer as a line with no length along the roll at all, which is a thing painters solved by never quite doing it.
A line that crosses the eye’s own track has a scan at which the depth denominator would vanish, and the projection refuses it. That is the same refusal lib/camera.js makes for a point behind the eye, and it is a refusal rather than a wrapped-around point appearing somewhere plausible in the picture.
The asymptotes, and what each of them is
A rectangular hyperbola has two asymptotes and both of them mean something here, which is the sort of thing that makes a closed form worth deriving rather than merely fitting.
The horizontal asymptote is where the image goes as : the limit of the Möbius function, . It is the height at which the line’s image settles as the eye travels far enough along the track, and it is the scroll’s version of a vanishing point. Not a point where parallel lines meet — parallel lines in a scroll do not meet, because along the roll the projection is parallel and parallel projections send parallel to parallel — but a height that the image of any given line approaches without reaching. Every line with the same ratio shares it.
The vertical asymptote is at the where the denominator vanishes, which is the scan at which the world line crosses the eye’s own track. It is the refusal described above, showing up in the algebra as an infinity rather than as an exception. A scroll of a scene the track passes through rather than beside would have real lines whose images run off the top and bottom of the silk, and the reason is a pole in a Möbius function.
The two together are a compact statement of the object: a scroll’s picture of a straight line has a horizon it approaches and a place it blows up, and neither is a property of the line.
Recovering the scroll from the scroll
The site’s standing habit is the round trip: build a picture from a stated camera, then recover the camera from the picture and compare. It is worth asking whether a scroll admits one, and it does, on rather generous terms.
The image of one straight world line, sampled at enough points, determines the Möbius coefficients — three numbers up to scale, so three marks along a drawn curve suffice in principle and more make it a fit rather than a solve. Those three coefficients are built out of the scroll’s compression , its focal length , its standoff and the line’s own direction and position. One line does not separate them.
Two lines with different depth profiles do better, and enough lines pin the scroll’s own parameters up to a scale ambiguity of exactly the kind a single view always has: a scroll of a scene twice as large, painted at half the compression from twice the standoff, produces the identical picture.
So the recovery works and returns what it should return, which is a family rather than a number. That is the same answer this site’s camera recovery gives in one dimension fewer, and it is worth having stated because the alternative belief — that a scroll’s geometry is not determinate enough to recover anything from — is false and is the belief the phrase shifting perspective tends to leave behind.
What this does to the invariant
The site’s first field is about the one quantity a projection does not destroy, and it is worth asking what a pushbroom does to it.
The cross-ratio survives a projection through a centre because four collinear points image to four collinear points and the projective relationship between the line and its image is a homography. Under a pushbroom, four collinear world points image to four points on a hyperbola, not on a line. So the question does not even arise in the usual form: there is no image line whose cross-ratio could be compared with the world line’s.
This is the same shape of finding the refraction field recorded, where four points on a line through water are not collinear in the picture, so the invariant has nothing to be invariant on. The two cases arrive at it from opposite directions — there the medium bends the rays, here the eye moves — and the consequence is identical and is worth stating in one sentence: the cross-ratio is a statement about projections through a centre, and a system without a centre is outside the theorem rather than in violation of it.
What does survive, and it is not nothing, is the ratio along the roll. Four points spaced along the eye’s track are drawn at spacings in the same ratio, exactly, because that map is a scaling — which is a stronger invariant than the cross-ratio and holds in one direction only. The fourth essay in this field measures it.
Why the convention survives the curvature
There is a practical question underneath all of this, and it has a numerical answer. If a scroll bends every receding line, why does a scroll not look bent?
Three reasons, and the first two are about what is drawn rather than about the drawing.
Most of the long lines in a Chinese handscroll hold their depth. A riverbank running beside the track, the eaves of a hall presented broadside, the line of a wall along a terrace — these are the constant-depth case, and they are drawn straight, exactly. The subject matter and the convention fit each other, which is not a coincidence: a system is developed on the things it is used to draw.
The lines that do recede are short. A pavilion is a few metres deep and a scroll is hundreds of metres long in world terms, so a receding eave crosses a depth range that is tiny compared with the scene. The sag is first order in that range, so it is well under a brush width.
And the third reason is the one worth measuring. The sag is proportional to the span on the paper as well as to the depth range, and the span of any one receding line in a scroll is small — a pavilion occupies a few centimetres of a five-metre roll. The figure at the top of this essay draws a line spanning most of the paper, which is a case a scroll never contains, and it does so deliberately: a figure of the honest case would be a figure of a straight line.
So the curvature is real, exact, and mostly below the threshold at which anything is visible — which is the same relationship a real lens’s distortion has to a photograph, arrived at from a completely different direction, and with the same moral. A departure that is invisible is not a departure that is absent, and the difference matters the moment anybody tries to measure something.
What the sag is in a reader’s terms
One number to end on, because the site’s habit is to convert a pixel measurement into something a reader can hold.
At the compression the figures here use, a straight world line crossing thirteen metres of depth sags 9.57 px over a span of about 620 px on the paper. At the width these figures are laid out — 160 mm — that is a departure of roughly 2.5 mm from a straight edge laid on the picture, over a span of 16 cm.
That is small enough to be invisible unless looked for and large enough that a ruler finds it immediately, which is a good description of the whole convention: nothing about a handscroll looks wrong, and almost nothing about it is a projection.
Where this sits in the field
What links here
Computed from the collection, not written here: the essays that point at this one.
Shares its objects with
Essays that name at least two of the same things, and that neither author linked.
- A map along, and a picture across — both name handscroll, projective invariant, pushbroom
- What a projection destroys — both name conic, point at infinity, projective invariant
- A carpet and the people on it — both name demonstration, foreshortening
- Assembled from several views — both name demonstration, foreshortening
- The circle whose centre moves — both name conic, foreshortening
- The cylinder, and the price of going all the way round — both name conic, cylindrical projection
Named objects
A flat tag is an object no other essay names yet.
ConicCylindrical projectionDemonstrationForeshorteningHandscrollMoving viewpointPicture surfacepoint at infinityProjective invariantPushbroom