liveBook · Manning

Continuous deformation field

As explained in Geometry for Programmers

A deformation field is a vector field that specifies how points should be moved according to their positions.

A continuous deformation field assigns a vector to every point in space. Each vector specifies how far and in what direction that point should move, so applying the field can move, bend, or stretch a geometric object. section 2.4.2

A deformation field is useful because it:

  • Represents a transformation whose movement depends on position rather than applying one identical displacement everywhere. section 2.4.2
  • Supports 3D modeling by deforming complete objects and generating families of related surfaces. section 2.4.2 section 8.0
  • Uses spatial or multivariable interpolation to create smooth, controllable variation between specified displacement vectors. section 8.0 section 8.3.4

Randomly deforming mushrooms

Place eight control points around a mushroom model and assign each a small random displacement. Inverse-distance interpolation estimates a displacement at every model point; adding the resulting vectors to the x, y, and z coordinates produces a subtly different mushroom. section 8.3.4

Figure 2.25 The vector field from figure 2.24 used as a deformation field. It moves, bends, and stretches the square.
02-25

Visualizes how a vector field becomes a deformation field that moves, bends, and stretches a square. section 2.4.2

Figure 8.26 Randomly generated and randomly deformed mushrooms
08-26

Shows the practical result: randomly generated mushrooms with randomized deformation. section 8.3.4

How Geometry for Programmers covers it

How deep it goes
Defines the field geometrically and implements it with inverse-distance interpolation, stopping short of broader numerical analysis.
Examples
Uses a bent or stretched square and randomly deformed 3D mushrooms as concrete demonstrations.
What it assumes
Assumes familiarity with vector fields, functions, geometric transformations, and arrays of 3D coordinates.
What you can do after
Builds a deformation field with interpolated control-point vectors and applies it to every point of a 3D model.
How it connects
Connects vector fields, geometric transformations, spatial interpolation, 3D surfaces, and parametric surfaces.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Geometry for Programmers. The section links point to the parts of the book it draws on.