Build an ocean box whose footprint matches a 2D polygon outline (e.g. a field
boundary parsed from GeoJSON). Supports multiple polygon rings, each with
zero or more holes. The polygon's [x, y] coordinates map to world
(x, 0, -y) — the same rotateX(-PI/2) convention used elsewhere — so the
northing axis becomes -Z.
surface — flat water plane at y = 0, tessellated to the outline.
body — a vertical wall around every ring (outer boundaries and holes),
from y = 0 down to the bed.
bed — the same outline tessellation displaced to a procedurally varying
depth (reusing the createOceanBox sea-bed model).
Build an ocean box whose footprint matches a 2D polygon outline (e.g. a field boundary parsed from GeoJSON). Supports multiple polygon rings, each with zero or more holes. The polygon's
[x, y]coordinates map to world(x, 0, -y)— the samerotateX(-PI/2)convention used elsewhere — so the northing axis becomes -Z.y = 0, tessellated to the outline.y = 0down to the bed.