Crate mesh_geometry

Source
Expand description

§mesh-geometry

High-performance, no_std-compatible geometry primitives and metrics for spatially discrete meshes.

§Features

  • Core types: Point2, Point3, Vec2, Vec3 with arithmetic, dot/cross, and conversion utilities.
  • Cell metrics: triangle/quad area, centroids, tetrahedron/hexahedron volume, face normals, projected area.
  • Geometry queries: point-in-polygon, ray-triangle intersection, point-to-cell distance.
  • Advanced utilities: Jacobians, AABB, 3D affine transforms.
  • no_std compatible (default: std enabled).
  • Comprehensive documentation and examples.

§Example: Compute Cell Volumes

use mesh_geometry::{Point3};
use mesh_geometry::tetrahedron_volume;

let a = Point3::new(0.0, 0.0, 0.0);
let b = Point3::new(1.0, 0.0, 0.0);
let c = Point3::new(0.0, 1.0, 0.0);
let d = Point3::new(0.0, 0.0, 1.0);
let vol = tetrahedron_volume(a, b, c, d);
assert!((vol - 1.0_f64/6.0_f64).abs() < 1e-12_f64);

More examples: see examples/ and the README.

§Documentation

§License

MIT

Re-exports§

pub use float::Float;
pub use metrics::triangle_area;
pub use metrics::quad_area;
pub use metrics::triangle_centroid;
pub use metrics::quad_centroid;
pub use metrics::tetrahedron_centroid;
pub use metrics::hexahedron_centroid;
pub use metrics::tetrahedron_volume;
pub use metrics::hexahedron_volume;
pub use metrics::face_normal;
pub use metrics::projected_area;
pub use metrics::polygon_area;
pub use metrics::polygon_centroid;
pub use metrics::prism_volume;
pub use metrics::prism_centroid;
pub use utils::jacobian;
pub use utils::aabb;
pub use prelude::*;

Modules§

float
Float trait alias for generic float support. Float trait alias for mesh-geometry
metrics
Cell metrics: area, centroid, volume, normals, polygon, prism Cell metrics: area, centroid, volume, normals, etc.
point
2D/3D point types and constructors. Point2/Point3 definitions for mesh-geometry.
prelude
Prelude for ergonomic imports (core types, traits, and utilities). Prelude: re-exports common types/traits for mesh-geometry. Common re-exports for ease of use.
queries
Geometry queries: point-in-polygon, ray-triangle, distance, etc. Geometry queries: point-in-polygon, ray-triangle, distances, etc.
transforms
3D affine transforms. Affine transforms and Jacobians for mesh-geometry.
utils
Advanced utilities: Jacobians, AABB, etc. Utility modules for mesh-geometry.
vec
2D/3D vector types and operations. Vec2/Vec3 definitions and operations for mesh-geometry.