Skip to main content

Crate loam_math

Crate loam_math 

Source
Expand description

Geometry uses f32; transcendental results can differ across targets.

Re-exports§

pub use bivector::Bivector;
pub use bivector::Bivector2;
pub use bivector::Bivector3;
pub use bivector::Bivector4;
pub use bivector::Plane4;
pub use bivector::Rotor;
pub use bivector::Rotor2;
pub use bivector::Rotor3;
pub use bivector::Rotor4;
pub use blended::BlendedSpace;
pub use blended::BlendingField;
pub use blended::ConformallyFlat;
pub use blended::LinearBlendX;
pub use blended::BLENDED_E3_H3_WGSL_RESIDUAL;
pub use euclidean::EuclideanR3;
pub use euclidean::Iso3;
pub use euclidean_r2::EuclideanR2;
pub use euclidean_r2::Iso2;
pub use euclidean_r4::EuclideanR4;
pub use euclidean_r4::Iso4Flat;
pub use hyperbolic::HyperbolicH3;
pub use hyperbolic::Iso3H;
pub use hyperbolic::H3_MAX_ARC;
pub use hyperbolic::POINCARE_R2_MAX;
pub use quotient::CoveringSpace;
pub use quotient::FlatTorus3;
pub use quotient::LensSpace;
pub use quotient::QuotientSpace;
pub use rasterizable::Projection;
pub use rasterizable::RasterizableSpace;
pub use rasterizable::STEREOGRAPHIC_POLE_EPSILON;
pub use sectionable::WPlane;
pub use sectionable::EDGE_PARALLEL_EPSILON;
pub use sectionable::SLICE_PERTURBATION_EPSILON;
pub use space::IsometryGroup;
pub use space::Space;
pub use space::WgslAccuracy;
pub use space::WgslSpace;
pub use space::FLAT_CHART_MAX_ARC;
pub use spherical::Iso4;
pub use spherical::SphericalS3;
pub use spherical_embedded::SphericalS3Embedded;

Modules§

bivector
R = exp(B/2), so a bivector of magnitude θ in plane e_i ∧ e_j rotates by θ from e_i toward e_j. Rotor application is the sandwich v' = R̃ · v · R.
blended
euclidean
euclidean_r2
euclidean_r4
hyperbolic
Poincaré-ball points satisfy |p| < 1; isometries act on the Lorentz embedding.
quotient
Isometries act on the cover; wrap_to_domain returns a representative and its deck element. LensSpace uses the z1 wedge, which does not select a unique representative on z1 = 0.
rasterizable
sectionable
space
spherical
Upper-hemisphere chart (p, sqrt(1 - |p|²)) with Vec3 points. Crossing the equator loses the hemisphere sign; use SphericalS3Embedded for full coverage.
spherical_embedded

Structs§

Mat3
A 3x3 column major matrix.