Module vek

Source

Modules§

extent2
Vector type suited for 2D extents (width and height).
extent3
Vector type suited for 3D extents (width, height and depth).
rgb
Vector type suited for RGB color data.
rgba
Vector type suited for RGBA color data.
vec2
Vector type suited for 2D spatial coordinates.
vec3
Vector type suited for 3D spatial coordinates.
vec4
Vector type suited for homogeneous 3D spatial coordinates.

Structs§

Aabb
Axis-aligned Bounding Box (3D), represented by min and max points.
Aabr
Axis-aligned Bounding Rectangle (2D), represented by min and max points.
CubicBezier2
A 2D Bézier curve with two control points.
CubicBezier3
A 3D Bézier curve with two control points.
Disk
Disk (2D), represented by center and radius.
Ellipsis
Ellipsis (2D), represented by center and radius in both axii.
Extent2
Vector type suited for 2D extents (width and height).
Extent3
Vector type suited for 3D extents (width, height and depth).
IdentityProgressMapper
A pass-through functor that returns progress values directly as LERP factors.
LineSegment2
2D Line segment, represented by two points, start and end.
LineSegment3
3D Line segment, represented by two points, start and end.
Mat4
4x4 matrix.
Potato
Nobody can possibly use this ???
ProgressMapperFn
A function pointer container that can map a progress value to a LERP factor.
QuadraticBezier2
A 2D Bézier curve with one control point.
QuadraticBezier3
A 3D Bézier curve with one control point.
Quaternion
Quaternions are a convenient representation for rotations in 3D spaces.
Ray
3D ray, represented by a starting point and a normalized direction vector.
Rect
2D rectangle, represented by a bottom-left position, and 2D extents.
Rect3
A Rect extended to 3D.
Rgb
Vector type suited for RGB color data.
Rgba
Vector type suited for RGBA color data.
Sphere
Sphere (3D), represented by center and radius.
Transform
A convenient position + orientation + scale container, backed by two Vec3 and a Quaternion.
Transition
A convenience structure for storing a progression from one value to another.
Vec2
Vector type suited for 2D spatial coordinates.
Vec3
Vector type suited for 3D spatial coordinates.
Vec4
Vector type suited for homogeneous 3D spatial coordinates.

Traits§

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

Functions§

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

Type Aliases§

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