In The Pinwheel at the Pole, we mention that the sinusoidal projection is an equal-area projection because the Jacobian determinant of the texture-to-sphere mapping is constant. This note explains what the Jacobian determinant is and why it guarantees equal-area rendering.
When transforming coordinates between two spaces — such as from 2D
texture space (u, v) to 3D surface coordinates
(x, y, z) or spherical angles (θ, φ)
— the Jacobian matrix
J collects all first-order partial derivatives of the
transformation:
J = [ ∂θ/∂u ∂θ/∂v ]
[ ∂φ/∂u ∂φ/∂v ]
The magnitude of the Jacobian determinant,
|det J|, represents the local area expansion or compression
factor of the transformation. It tells you how much a differential square
texel
du × dv in texture space expands or shrinks when mapped
onto a surface element dA on the sphere:
dA = |det J| · du dv
On a sphere of radius r, a surface area element at colatitude
φ is given by dA = r² sin φ
dθ dφ.
With standard equirectangular mapping, texture coordinates map linearly:
θ = 2πu and φ = πv. The
differential area relation is:
dA = 2π² r² sin φ du dv
Here, |det J| ∝ sin φ is not constant. Near the poles (φ → 0), sin φ
→ 0, so a texture row gets compressed into an arbitrarily
small physical area element on the sphere. This causes the horizontal
texel density ρ ∝ 1 / sin φ to diverge at
the poles, creating shimmering moiré pinwheels.
With sinusoidal UV mapping, we scale the horizontal texture span by
sin φ: u_scaled = u ·
sin φ. Taking the partial derivatives yields:
|det J| = constant
Because |det J| is constant everywhere across the sphere,
every texel patch in the sampled region covers the exact same physical
surface area on the sphere, whether located at the equator or near the
poles.
An equal-area mapping ensures that procedural visualizer patterns maintain uniform visual weight and constant texel density across the entire surface. There are no artificial density spikes or energy concentrations at the poles, eliminating pinching and moiré aliasing by construction.