import { CellComplex } from '../geometry/cell-complex.js'; export interface HopfFiberOptions { /** Base point on S² (normalized internally; must be nonzero). */ base: [number, number, number]; /** Radius of the 3-sphere carrying the fiber. Default 1. */ radius?: number; /** Polyline segments. Default 96. */ segments?: number; } /** * One fiber of the Hopf fibration S³ → S²: the great circle of the * 3-sphere sitting over a base point. * * With the Hopf map written as * * h(x₀,x₁,x₂,x₃) = (2(x₀x₂ + x₁x₃), 2(x₁x₂ − x₀x₃), x₂²+x₃² − x₀²−x₁²), * * each output component is invariant under the simultaneous equal-angle * rotation of the (x₀,x₁) and (x₂,x₃) planes — so that isoclinic flow * *is* the fiber direction, and every fiber is a Clifford circle. A * preimage of the unit base (a,b,c) with c ≠ 1 is obtained by setting * x₁ = 0: x₀ = √((1−c)/2), x₂ = a/2x₀, x₃ = −b/2x₀; the north pole's * fiber is the (x₂,x₃)-plane circle. * * Returns a closed polyline CellComplex (1-cells), renderable by * ProjectedEdges3D. Projecting with PerspectiveProjection at * viewDistance = radius is exactly stereographic projection from the * pole, under which every fiber maps to a perfect circle (or a line * through the pole) and any two fibers are linked once. */ export declare function createHopfFiber(options: HopfFiberOptions): CellComplex; //# sourceMappingURL=hopf.d.ts.map