Title: Area-Preserving Piecewise Affine Mapping
1Area-Preserving Piecewise Affine Mapping
- Alan Saalfeld
- Ohio State University
2(No Transcript)
3Area-preserving transformations
- A necessary and sufficient condition for any
function (x,y) ? (u(x,y),v(x,y)) to preserve area
is for - the determinant of its Jacobian
- to be equal to (1). For an affine function, we
have - (x,y) ? (axbyc, dxeyf) (u(x,y),v(x,y))
4Affine transformations
- (x,y) ? (axbyc, dxeyf) (u(x,y),v(x,y))
5How Cartographers Show Distortion
6Affine transformations of the plane
- An affine function has the form
- (x,y) ? (axbyc, dxeyf)
- An affine function is a linear transformation
followed by a translation - The action on any 3 non-collinear points
completely determines the affine map - A triangle on three vertices maps to the triangle
on the three image vertices. - Lines go to lines
- Parallel lines go to parallel lines
7Describing Piecewise Affine Maps
- Piecewise affine interpolation is uniquely and
implicitly defined BY SIMPLY DRAWING THE
TRIANGULATION IN THE DOMAIN SPACE AND LABELING
THE TRIANGLE VERTICES IN BOTH THE DOMAIN AND
RANGE SPACES TO SHOW THE ASSOCIATION
8The composition of two Piecewise Affine maps is a
Piecewise Affine map
Invertible piecewise affine maps are also called
piecewise linear homeomorphisms (PLH maps).
9Any simple polygon can be mapped to any other
simple polygon by a PLH map with pre-specified
PLH boundary behavior
- Any n-sided polygon can be triangulated.
- Any triangulation of an n-sided polygon is also a
triangulation of a similarly labeled regular
n-gon. - Every n-gon can be mapped by an invertible PLH
map onto a regular n-gon.
10(No Transcript)
11(No Transcript)
12Can we control distortion more?
- Are there area-preserving PLH maps?
- Can we construct them to extend PLH maps on the
boundary? YES! It simply means getting
corresponding triangles to have the same area - Can we find 1-continuous-parameter families of
transformations that are area-preserving PLH maps
for every parameter value? YES! These are
zero-compression deformations.
13Can we simultaneously chop up two polygons into
triangles so that corresponding pairs of
triangles always have the same area ratio as the
ratio of the total areas of the original polygons?
14Decomposing quadrilaterals
15The same diagonal skew case
16Transformations of simple polygons
- PLH maps may be found that extend a boundary map
and are area-proportional everywhere. - Proof by induction
- Trivial for n3.
- Construction for n4.
- First show for convex sets for ngt4.
17Area-preserving transformations
- The following are equivalent
- 1. Any two convex n-sided polygons of equal area
are homeomorphic under an area-preserving PLH map
that is linear on each corresponding edge pair. - 2. Any convex n-sided polygon is homeomorphic
under an area-preserving PLH map to a regular
n-gon of the same area. The homeomorphism may be
taken to be linear on each corresponding edge
pair.
18Node Splitting and Area Splitting
- Every convex polygon possesses a splitter that
divides the area in equal parts and also splits
the vertices into equal groups.
Proof This follows from the Ham Sandwich
Theorem applied to the area measure and the
counting measure on vertices. A more direct
proof for the particular two measures in question
is illustrated on the right.
19Area-preserving transformations
- Proof for convex sets
- Suppose 1. and 2. are true for all convex sets of
size kltn, where ngt4. - Find a splitter for a convex n-gon that splits it
into two equal area (n/22)-sided convex
polygons. - Note n/2 2 lt n.
- Map each half into half of a regular n-gon.
20Area-preserving transformations
- A technical detail
- On 1 or 2 of the boundary edges, the ratio of the
two pieces of the divided edge may differ for the
convex (n/22)-gon and for the half of the
regular n-gon. We can always adjust the edge
pieces with yet another area-preserving PLH map
so that they recover the original ratio.
21(No Transcript)
22Area-preserving transformations
- Proof for all sets, convex or not
- Suppose any convex or non-convex k-gon for kltn
has a PLH area-preserving, boundary-extending map
to any same area convex k-gon, where ngt4. - For the non-convex n-gon, triangulate and remove
an ear. Ears always exist. - Map the (n-1)-gon to a slab convex set with the
edge from the missing ear going to the base edge
of the slab. (A slab convex set has two
consecutive acute angles at either end of the
base edge.) - Map the ear to an ear-sized triangle attached
to the slab along the long edge. (Slab
construction makes it possible.)
23Possible Extensions/Applications
- 3D
- Best quasi-conformal area-preserving piecewise
affine transformation using no more than k
Steiner points - Zero-compression morphing
24Morphing
- Triangulation maps pi, qi, Tpi , pi ? qi
- Homotopies of triangulation maps pix0,1 ?R
- (pi,t) ? qi(t) (pi,0) ? qi(0)pi, (pi,1) ?
qi(1)qi - Cheap (faceted) morphing
- Barycentric coordinates pre-computed
- Homotopies in both domain and range
- pi(t) ? qi(t)
- Domain triangles and range triangles change in
unison, maintaining relative size throughout - At every stage, the transformation is
area-preserving - Area-preserving guarantees no singularities
25What is Zero-Compression Morphing?
It is continuous deformation that preserves area
(volume) everywhere at all times. If we can
identify corresponding pairs of simultaneously
changing quadrilaterals that have matching areas
at each stage throughout the deformation, then we
may add Steiner points and triangulate to produce
area-preservation everywhere.
26Zero-Compression Morphing
Example 1 A Rotating Raft
27Zero-Compression Morphing
Example 2 A Sliding Raft
28Zero-Compression Morphing
29Summary
- Easy-to-evaluate piecewise affine maps are fully
described by a triangulation of the domain space
and an assignment of an image to each vertex in
the domain triangulation - We can build a PLH map from one simple polygon
onto any other simple polygon that has the same
area-scale everywhere - We may even build continuous 1-parameter families
(homotopies) of PLH same-area-scale
transformations.
30Zero-Compression Morphing
31Affine and piecewise affine transformations of
the plane
- There is uniform stretching (area-factor) within
each piece of a piecewise affine transformation - A PLH map defined on a triangle is
area-preserving everywhere if and only if it
sends the triangle to a triangle of the same
area.
32Computing Barycentric Coordinates
- Every point in a triangle is a unique convex
combination of the vertex points p1,p2,p3 - p?1p1?2p2?3p3
- where ?igt0, and 1?1?2?3.
- (?1,?2,?3) are called the barycentric coordinates
of p with respect to p1,p2,p3. - Converting to barycentric coordinates or back to
Cartesian coordinates is easy.
?3 1-?1-?2
33Barycentric Coordinates,handy tool for affine
functions
- Every point in a triangle is a unique convex
combination of the vertex points p1,p2,p3 - p?1p1?2p2?3p3
- where ?igt0, and 1?1?2?3.
- (?1,?2,?3) are called the barycentric coordinates
of p with respect to p1,p2,p3. - Converting to barycentric coordinates or back to
Cartesian coordinates is easy.
?1
?2
?3 1-?1-?2
34Barycentric Coordinates are just Relative
Triangle Areas
?1
35Rubber-Sheeting Vector Interpolation with
Barycentric Coordinates
- Recall that every point inside a triangle is a
unique convex combination of the vertex points - p?1p1?2p2?3p3, where ?igt0, and1?1?2?3.
If v is a vector-valued function defined only at
p1, p2, and p3 , with v(pi)qi, then we may
define (extend) v(p) to be v(p)?1v(p1)?2v(p2)
?3v(p3) ?1q1?2q2?3q3, for the same ?1,
?2, and ?3. Sometimes these barycentric
coordinates are called weights.
36Piecewise affine transformations
- The interpolating function that preserves
barycentric coordinates is precisely the affine
transformation from the domain triangle onto the
range triangle - Barycentric coordinates can be computed for the
domain (before the function itself is specified),
then may be evaluated at run time (after the
range values of the triangle vertices are
specified)
37Isomorphic triangulations Piecewise Linear
Homeomorphisms
- Non-existence results
- Sometimes there just isnt any
- simultaneous triangulation on
- the given point sets
- Existence and complexity results
- Sometimes all triangulations work
- Sometimes some triangulations
- work, others do not
- If we allow ourselves to add some (O(n2)) point
pairs, we can always find a simultaneous
triangulation
38Triangulation maps Piecewise Linear Maps
- PL maps are described fully by their action on
triangles - PL maps are described fully by their action on
vertices after domain triangles have been
specified - PL maps agree on shared edges that are straight
line segments - But we REALLY prefer our functions to be
invertible (homeomorphisms)
39We can always find an isomorphic triangulation
(PLH map) of a set of point pairs if we allow
ourselves to add O(n2) additional point pairs.
p1
No
Yes