Modules

  • Vector type suited for 2D extents (width and height).
  • Vector type suited for 3D extents (width, height and depth).
  • Vector type suited for RGB color data.
  • Vector type suited for RGBA color data.
  • Vector type suited for 2D spatial coordinates.
  • Vector type suited for 3D spatial coordinates.
  • Vector type suited for homogeneous 3D spatial coordinates.

Structs

  • Axis-aligned Bounding Box (3D), represented by min and max points.
  • Axis-aligned Bounding Rectangle (2D), represented by min and max points.
  • Disk (2D), represented by center and radius.
  • Ellipsis (2D), represented by center and radius in both axii.
  • Vector type suited for 2D extents (width and height).
  • Vector type suited for 3D extents (width, height and depth).
  • A pass-through functor that returns progress values directly as LERP factors.
  • 2D Line segment, represented by two points, start and end.
  • 3D Line segment, represented by two points, start and end.
  • 4x4 matrix.
  • Nobody can possibly use this ???
  • A function pointer container that can map a progress value to a LERP factor.
  • Quaternions are a convenient representation for rotations in 3D spaces.
  • 3D ray, represented by a starting point and a normalized direction vector.
  • 2D rectangle, represented by a bottom-left position, and 2D extents.
  • A Rect extended to 3D.
  • Vector type suited for RGB color data.
  • Vector type suited for RGBA color data.
  • Sphere (3D), represented by center and radius.
  • A convenient position + orientation + scale container, backed by two Vec3 and a Quaternion.
  • A convenience structure for storing a progression from one value to another.
  • Vector type suited for 2D spatial coordinates.
  • Vector type suited for 3D spatial coordinates.
  • Vector type suited for homogeneous 3D spatial coordinates.

Traits

  • A scalar or vector that can be constrained to be between two values (inclusive).
  • A scalar or vector that can be constrained to be between 0 and 1 (inclusive).
  • A scalar or vector that can be constrained to be between -1 and 1 (inclusive).
  • Trait for types that are suitable for representing a color component value.
  • A value that can tell whether or not it is between two bounds (inclusive).
  • A value that can tell whether or not it is between 0 and 1 (inclusive).
  • A value that can be linearly interpolated.
  • Fused multiply-add. Computes (self * a) + b with only one rounding error, yielding a more accurate result than an unfused multiply-add.
  • A functor that maps a progress value to a LERP factor.
  • A value that can be Spherically Linearly interpolated.
  • A value that can wrap itself around given bounds.

Functions

  • mul_addDeprecated
    Returns (val * mul) + add.
  • Compares and returns the maximum of two values, using partial ordering.
  • Compares and returns the minimum of two values, using partial ordering.

Type Aliases

  • A convenience structure for storing a linear progression from one value to another.