The Jacobian Determinant and Equal-Area Mappings

Technical Note

← Back to Post


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.

What is the Jacobian Matrix?

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 ]

Area Scaling via the Determinant

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

Equirectangular vs. Sinusoidal Mappings

On a sphere of radius r, a surface area element at colatitude φ is given by dA = r² sin φ dθ dφ.

1. Equirectangular UV Mapping (Before)

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.

2. Sinusoidal UV Mapping (After)

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.

Why This Matters for GPU Rendering

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.


← Back to Post