Crate rin::math[][src]

This module mostly re-exports na (a graphics oriented wrapper for nalgebra) angle (a type safe wrapper for angle measseures) and adds a few simple functions useful for graphics math

Modules

base

[Reexported at the root of this crate.] Data structures for vector and matrix computations.

cast
geometry

[Reexported at the root of this crate.] Data structures for points and usual transformations (rotations, isometries, etc.)

linalg

[Reexported at the root of this crate.] Factorization of real matrices.

scalar

Traits implemented by scalar, non-SIMD, types.

simd

Traits implemented by SIMD types and non-SIMD types.

traits

Macros

abs_diff_eq

Approximate equality of using the absolute difference.

abs_diff_ne

Approximate inequality of using the absolute difference.

assert_abs_diff_eq

An assertion that delegates to [abs_diff_eq!], and panics with a helpful error on failure.

assert_abs_diff_ne

An assertion that delegates to [abs_diff_ne!], and panics with a helpful error on failure.

assert_relative_eq

An assertion that delegates to [relative_eq!], and panics with a helpful error on failure.

assert_relative_ne

An assertion that delegates to [relative_ne!], and panics with a helpful error on failure.

assert_ulps_eq

An assertion that delegates to [ulps_eq!], and panics with a helpful error on failure.

assert_ulps_ne

An assertion that delegates to [ulps_ne!], and panics with a helpful error on failure.

pnt2
pnt3
pnt4
relative_eq

Approximate equality using both the absolute difference and relative based comparisons.

relative_ne

Approximate inequality using both the absolute difference and relative based comparisons.

ulps_eq

Approximate equality using both the absolute difference and ULPs (Units in Last Place).

ulps_ne

Approximate inequality using both the absolute difference and ULPs (Units in Last Place).

vec2
vec3
vec4

Structs

AbsDiff

The requisite parameters for testing for approximate equality using a absolute difference based comparison.

ArrayStorage

A array-based statically sized matrix data storage.

Bidiagonal

The bidiagonalization of a general matrix.

Cholesky

The Cholesky decomposition of a symmetric-definite-positive matrix.

Complex

A complex number in Cartesian form.

DefaultAllocator

An allocator based on GenericArray and VecStorage for statically-sized and dynamically-sized matrices respectively.

Deg
Dynamic

Dim of dynamically-sized algebraic entities.

EuclideanNorm

Euclidean norm.

FullPivLU

LU decomposition with full row and column pivoting.

Hessenberg

Hessenberg decomposition of a general matrix.

Isometry

A direct isometry, i.e., a rotation followed by a translation (aka. a rigid-body motion).

LU

LU decomposition with partial (row) pivoting.

LpNorm

Lp norm.

Matrix

The most generic column-major matrix (and vector) type.

Orthographic3

A 3D orthographic projection stored as a homogeneous 4x4 matrix.

PermutationSequence

A sequence of row or column permutations.

Perspective3

A 3D perspective projection stored as a homogeneous 4x4 matrix.

Point

A point in an euclidean space.

QR

The QR decomposition of a general matrix.

Quaternion

A quaternion. See the type alias UnitQuaternion = Unit<Quaternion> for a quaternion that may be used as a rotation.

Rad
Rect

Represents a rectangle with operations over it

Reflection

A reflection wrt. a plane.

Relative

The requisite parameters for testing for approximate equality using a relative based comparison.

Rotation

A rotation matrix.

SVD

Singular Value Decomposition of a general matrix.

Schur

Schur decomposition of a square matrix.

Similarity

A similarity, i.e., an uniform scaling, followed by a rotation, followed by a translation.

SliceStorage

A matrix data storage for a matrix slice. Only contains an internal reference to another matrix data storage.

SliceStorageMut

A mutable matrix data storage for mutable matrix slice. Only contains an internal mutable reference to another matrix data storage.

SymmetricEigen

Eigendecomposition of a symmetric matrix.

SymmetricTridiagonal

Tridiagonalization of a symmetric matrix.

Transform

A transformation matrix in homogeneous coordinates.

Translation

A translation.

U0

A type level dimension.

U1

A type level dimension with a value of 1.

U2

A type level dimension.

U3

A type level dimension.

U4

A type level dimension.

U5

A type level dimension.

U6

A type level dimension.

U7

A type level dimension.

U8

A type level dimension.

U9

A type level dimension.

U10

A type level dimension.

U11

A type level dimension.

U12

A type level dimension.

U13

A type level dimension.

U14

A type level dimension.

U15

A type level dimension.

U16

A type level dimension.

U17

A type level dimension.

U18

A type level dimension.

U19

A type level dimension.

U20

A type level dimension.

U21

A type level dimension.

U22

A type level dimension.

U23

A type level dimension.

U24

A type level dimension.

U25

A type level dimension.

U26

A type level dimension.

U27

A type level dimension.

U28

A type level dimension.

U29

A type level dimension.

U30

A type level dimension.

U31

A type level dimension.

U32

A type level dimension.

U33

A type level dimension.

U34

A type level dimension.

U35

A type level dimension.

U36

A type level dimension.

U37

A type level dimension.

U38

A type level dimension.

U39

A type level dimension.

U40

A type level dimension.

U41

A type level dimension.

U42

A type level dimension.

U43

A type level dimension.

U44

A type level dimension.

U45

A type level dimension.

U46

A type level dimension.

U47

A type level dimension.

U48

A type level dimension.

U49

A type level dimension.

U50

A type level dimension.

U51

A type level dimension.

U52

A type level dimension.

U53

A type level dimension.

U54

A type level dimension.

U55

A type level dimension.

U56

A type level dimension.

U57

A type level dimension.

U58

A type level dimension.

U59

A type level dimension.

U60

A type level dimension.

U61

A type level dimension.

U62

A type level dimension.

U63

A type level dimension.

U64

A type level dimension.

U65

A type level dimension.

U66

A type level dimension.

U67

A type level dimension.

U68

A type level dimension.

U69

A type level dimension.

U70

A type level dimension.

U71

A type level dimension.

U72

A type level dimension.

U73

A type level dimension.

U74

A type level dimension.

U75

A type level dimension.

U76

A type level dimension.

U77

A type level dimension.

U78

A type level dimension.

U79

A type level dimension.

U80

A type level dimension.

U81

A type level dimension.

U82

A type level dimension.

U83

A type level dimension.

U84

A type level dimension.

U85

A type level dimension.

U86

A type level dimension.

U87

A type level dimension.

U88

A type level dimension.

U89

A type level dimension.

U90

A type level dimension.

U91

A type level dimension.

U92

A type level dimension.

U93

A type level dimension.

U94

A type level dimension.

U95

A type level dimension.

U96

A type level dimension.

U97

A type level dimension.

U98

A type level dimension.

U99

A type level dimension.

U100

A type level dimension.

U101

A type level dimension.

U102

A type level dimension.

U103

A type level dimension.

U104

A type level dimension.

U105

A type level dimension.

U106

A type level dimension.

U107

A type level dimension.

U108

A type level dimension.

U109

A type level dimension.

U110

A type level dimension.

U111

A type level dimension.

U112

A type level dimension.

U113

A type level dimension.

U114

A type level dimension.

U115

A type level dimension.

U116

A type level dimension.

U117

A type level dimension.

U118

A type level dimension.

U119

A type level dimension.

U120

A type level dimension.

U121

A type level dimension.

U122

A type level dimension.

U123

A type level dimension.

U124

A type level dimension.

U125

A type level dimension.

U126

A type level dimension.

U127

A type level dimension.

Ulps

The requisite parameters for testing for approximate equality using an ULPs based comparison.

UniformNorm

L-infinite norm aka. Chebytchev norm aka. uniform norm aka. suppremum norm.

Unit

A wrapper that ensures the underlying algebraic entity has a unit norm.

VecStorage

A Vec-based matrix data storage. It may be dynamically-sized.

Enums

RotOrder
TAffine

Tag representing an affine Transform. Its bottom-row is equal to (0, 0 ... 0, 1).

TGeneral

Tag representing the most general (not necessarily inversible) Transform type.

TProjective

Tag representing the most general inversible Transform type.

Traits

AbsDiffEq

Equality that is defined using the absolute difference of two numbers.

AbstractRotation

Trait implemented by rotations that can be used inside of an Isometry or Similarity.

Angle
AsMat
AsPnt
AsVec
BaseInt
BaseNum
ClosedAdd

Trait alias for Add and AddAssign with result of type Self.

ClosedDiv

Trait alias for Div and DivAssign with result of type Self.

ClosedMul

Trait alias for Mul and MulAssign with result of type Self.

ClosedSub

Trait alias for Sub and SubAssign with result of type Self.

ComplexField

Trait shared by all complex fields and its subfields (like real numbers).

Dim

Trait implemented by any type that can be used as a dimension. This includes type-level integers and Dynamic (for dimensions not known at compile-time).

DimAdd
DimDiv
DimMax
DimMin
DimMul
DimName

Trait implemented exclusively by type-level integers.

DimNameAdd
DimNameDiv
DimNameMax
DimNameMin
DimNameMul
DimNameSub
DimSub
FastInverse
Field

Trait implemented by fields, i.e., complex numbers and floats.

Float

Generic trait for floating point numbers

FloatPnt

Trait of vector with components implementing the RealField trait.

FloatVec

Trait of vector with components implementing the BaseFloat trait.

InsideRect

Trait to calculate if something is inside a rectangle

IsDynamic

Trait implemented by Dynamic.

IsNotStaticOne

Trait implemented by Dynamic and type-level integers different from U1.

IsParallel
NamedDim
Norm

A trait for abstract matrix norms.

Normed

Trait implemented by entities scan be be normalized and put in an Unit struct.

NumCast

An interface for casting between machine scalars.

NumPnt

Trait grouping most common operations on points.

NumVec

Trait grouping most common operations on vectors.

One

Defines a multiplicative identity element for Self.

RealField

Trait shared by all reals.

RelativeEq

Equality comparisons between two numbers using both the absolute difference and relative based comparisons.

Scalar

The basic scalar type for all structures of nalgebra.

SimdBool

Lane-wise generalization of bool for SIMD booleans.

SimdComplexField

Lane-wise generalisation of ComplexField for SIMD complex fields.

SimdPartialOrd

Lane-wise generalization of the standard PartialOrd for SIMD values.

SimdRealField

Lanewise generalization of RealField for SIMD reals.

SliceRange

A range with a size that may be known at compile-time.

Storage

The trait shared by all matrix data storage.

StorageMut

Trait implemented by matrix data storage that can provide a mutable access to its elements.

SubTCategoryOf

Indicates that Self is a more specific Transform category than Other.

SuperTCategoryOf

Indicates that Self is a more general Transform category than Other.

Swizzles2
Swizzles2Mut
Swizzles3
Swizzles3Mut
Swizzles4
Swizzles4Mut
TCategory

Trait implemented by phantom types identifying the projective transformation type.

TCategoryMul

Traits that gives the Transform category that is compatible with the result of the multiplication of transformations with categories Self and Other.

ToMat
ToPnt
ToPrimitive

A generic trait for converting a value to a number.

ToVec
UlpsEq

Equality comparisons between two numbers using both the absolute difference and ULPs (Units in Last Place) based comparisons.

Zero

Defines an additive identity element for Self.

Functions

absDeprecated

The absolute value of a.

add_translation

Adds a 3d translation to a Mat4

angle_cast
atan2
bezier_interpolate

Bezier interpolation from from to to using the control points cp1 and cp2 at the normalized distance pct

cast

Cast from one machine scalar to another.

center

The center of two points.

clamp

Returns a reference to the input value clamped to the interval [min, max].

convert

Converts an object from one type to an equivalent or more general one.

convert_ref

Converts an object from one type to an equivalent or more general one.

convert_ref_unchecked

Use with care! Same as try_convert but without any property checks.

convert_unchecked

Use with care! Same as try_convert but without any property checks.

distance

The distance between two points.

distance_squared

The squared distance between two points.

euler_to_quaternion

Convert euler angles with a certain rotation order into a quaternion

infDeprecated

Returns the infimum of a and b.

inf_supDeprecated

Returns simultaneously the infimum and supremum of a and b.

is_convertible

Indicates if try_convert will succeed without actually performing the conversion.

iwrap

Wrap an integer value in the range from..to

lerp

Linear interpolation

line_segment_intersection

Intersection of line segments p0 - p1 and p2 - p3

map

Map a value from an input range inmin..inmax to an output range outmin..outmax

map_clamp

Map a value from an input range inmin..inmax to an output range outmin..outmax and clamp the result to be inside the output range

max

Same as cmp::max.

min

Same as cmp::min.

next_multiple
next_pow2

Next power of two

one

Gets the multiplicative identity element.

partial_clamp

Clamp value between min and max. Returns None if value is not comparable to min or max.

partial_cmp

Compare a and b using a partial ordering relation.

partial_ge

Returns true iff a and b are comparable and a >= b.

partial_gt

Returns true iff a and b are comparable and a > b.

partial_le

Returns true iff a and b are comparable and a <= b.

partial_lt

Returns true iff a and b are comparable and a < b.

partial_max

Return the maximum of a and b if they are comparable.

partial_min

Return the minimum of a and b if they are comparable.

partial_sort2

Sorts two values in increasing order using a partial ordering.

pnt2
pnt3
pnt4
pnt5
pnt6
smoothstep
supDeprecated

Returns the supremum of a and b.

to_euler

Convert a quaternion to euler angles

to_tait_bryan

Convert a quaternion to tait bryan angles

try_convert

Attempts to convert an object to a more specific one.

try_convert_ref

Attempts to convert an object to a more specific one.

try_invert_to

Performs a LU decomposition to overwrite out with the inverse of matrix.

vec2
vec3
vec4
vec5
vec6
wilkinson_shift

Computes the wilkinson shift, i.e., the 2x2 symmetric matrix eigenvalue to its tailing component tnn.

wrap

Wrap a value in the range from..to

zero

Gets the additive identity element.

Type Definitions

Affine2

A 2D affine transformation. Stored as a homogeneous 3x3 matrix.

Affine3

A 3D affine transformation. Stored as a homogeneous 4x4 matrix.

DMatrix

A dynamically sized column-major matrix.

DMatrixSlice

A column-major matrix slice dynamic numbers of rows and columns.

DMatrixSliceMut

A column-major matrix slice dynamic numbers of rows and columns.

DVector

A dynamically sized column vector.

DVectorSlice

A column vector slice dynamic numbers of rows and columns.

DVectorSliceMut

A column vector slice dynamic numbers of rows and columns.

DimDiff
DimMaximum
DimMinimum
DimNameDiff
DimNameMaximum
DimNameMinimum
DimNameProd
DimNameQuot
DimNameSum
DimProd
DimQuot
DimSum
DualQuat
DualQuaternion
Isometry2
Isometry3
IsometryMatrix2

A 2-dimensional direct isometry using a rotation matrix for its rotational part.

IsometryMatrix3

A 3-dimensional direct isometry using a rotation matrix for its rotational part.

Mat1
Mat2
Mat3
Mat4
Mat5
Mat6
Matrix1

A stack-allocated, column-major, 1x1 square matrix.

Matrix1x2

A stack-allocated, column-major, 1x2 matrix.

Matrix1x3

A stack-allocated, column-major, 1x3 matrix.

Matrix1x4

A stack-allocated, column-major, 1x4 matrix.

Matrix1x5

A stack-allocated, column-major, 1x5 matrix.

Matrix1x6

A stack-allocated, column-major, 1x6 matrix.

Matrix1xX

A heap-allocated, row-major, matrix with 1 rows and a dynamic number of columns.

Matrix2

A stack-allocated, column-major, 2x2 square matrix.

Matrix2x1

A stack-allocated, column-major, 2x1 matrix.

Matrix2x3

A stack-allocated, column-major, 2x3 matrix.

Matrix2x4

A stack-allocated, column-major, 2x4 matrix.

Matrix2x5

A stack-allocated, column-major, 2x5 matrix.

Matrix2x6

A stack-allocated, column-major, 2x6 matrix.

Matrix2xX

A heap-allocated, row-major, matrix with 2 rows and a dynamic number of columns.

Matrix3

A stack-allocated, column-major, 3x3 square matrix.

Matrix3x1

A stack-allocated, column-major, 3x1 matrix.

Matrix3x2

A stack-allocated, column-major, 3x2 matrix.

Matrix3x4

A stack-allocated, column-major, 3x4 matrix.

Matrix3x5

A stack-allocated, column-major, 3x5 matrix.

Matrix3x6

A stack-allocated, column-major, 3x6 matrix.

Matrix3xX

A heap-allocated, row-major, matrix with 3 rows and a dynamic number of columns.

Matrix4

A stack-allocated, column-major, 4x4 square matrix.

Matrix4x1

A stack-allocated, column-major, 4x1 matrix.

Matrix4x2

A stack-allocated, column-major, 4x2 matrix.

Matrix4x3

A stack-allocated, column-major, 4x3 matrix.

Matrix4x5

A stack-allocated, column-major, 4x5 matrix.

Matrix4x6

A stack-allocated, column-major, 4x6 matrix.

Matrix4xX

A heap-allocated, row-major, matrix with 4 rows and a dynamic number of columns.

Matrix5

A stack-allocated, column-major, 5x5 square matrix.

Matrix5x1

A stack-allocated, column-major, 5x1 matrix.

Matrix5x2

A stack-allocated, column-major, 5x2 matrix.

Matrix5x3

A stack-allocated, column-major, 5x3 matrix.

Matrix5x4

A stack-allocated, column-major, 5x4 matrix.

Matrix5x6

A stack-allocated, column-major, 5x6 matrix.

Matrix5xX

A heap-allocated, row-major, matrix with 5 rows and a dynamic number of columns.

Matrix6

A stack-allocated, column-major, 6x6 square matrix.

Matrix6x1

A stack-allocated, column-major, 6x1 matrix.

Matrix6x2

A stack-allocated, column-major, 6x2 matrix.

Matrix6x3

A stack-allocated, column-major, 6x3 matrix.

Matrix6x4

A stack-allocated, column-major, 6x4 matrix.

Matrix6x5

A stack-allocated, column-major, 6x5 matrix.

Matrix6xX

A heap-allocated, row-major, matrix with 6 rows and a dynamic number of columns.

MatrixArrayDeprecated

Renamed to ArrayStorage.

MatrixCross

The type of the result of a matrix cross product.

MatrixMN

A statically sized column-major matrix with R rows and C columns.

MatrixN

A statically sized column-major square matrix with D rows and columns.

MatrixNMDeprecated

A statically sized column-major matrix with R rows and C columns.

MatrixSlice

A matrix slice.

MatrixSlice1

A column-major 1x1 matrix slice.

MatrixSlice1x2

A column-major 1x2 matrix slice.

MatrixSlice1x3

A column-major 1x3 matrix slice.

MatrixSlice1x4

A column-major 1x4 matrix slice.

MatrixSlice1x5

A column-major 1x5 matrix slice.

MatrixSlice1x6

A column-major 1x6 matrix slice.

MatrixSlice1xX

A column-major matrix slice with 1 row and a number of columns chosen at runtime.

MatrixSlice2

A column-major 2x2 matrix slice.

MatrixSlice2x1

A column-major 2x1 matrix slice.

MatrixSlice2x3

A column-major 2x3 matrix slice.

MatrixSlice2x4

A column-major 2x4 matrix slice.

MatrixSlice2x5

A column-major 2x5 matrix slice.

MatrixSlice2x6

A column-major 2x6 matrix slice.

MatrixSlice2xX

A column-major matrix slice with 2 rows and a number of columns chosen at runtime.

MatrixSlice3

A column-major 3x3 matrix slice.

MatrixSlice3x1

A column-major 3x1 matrix slice.

MatrixSlice3x2

A column-major 3x2 matrix slice.

MatrixSlice3x4

A column-major 3x4 matrix slice.

MatrixSlice3x5

A column-major 3x5 matrix slice.

MatrixSlice3x6

A column-major 3x6 matrix slice.

MatrixSlice3xX

A column-major matrix slice with 3 rows and a number of columns chosen at runtime.

MatrixSlice4

A column-major 4x4 matrix slice.

MatrixSlice4x1

A column-major 4x1 matrix slice.

MatrixSlice4x2

A column-major 4x2 matrix slice.

MatrixSlice4x3

A column-major 4x3 matrix slice.

MatrixSlice4x5

A column-major 4x5 matrix slice.

MatrixSlice4x6

A column-major 4x6 matrix slice.

MatrixSlice4xX

A column-major matrix slice with 4 rows and a number of columns chosen at runtime.

MatrixSlice5

A column-major 5x5 matrix slice.

MatrixSlice5x1

A column-major 5x1 matrix slice.

MatrixSlice5x2

A column-major 5x2 matrix slice.

MatrixSlice5x3

A column-major 5x3 matrix slice.

MatrixSlice5x4

A column-major 5x4 matrix slice.

MatrixSlice5x6

A column-major 5x6 matrix slice.

MatrixSlice5xX

A column-major matrix slice with 5 rows and a number of columns chosen at runtime.

MatrixSlice6

A column-major 6x6 matrix slice.

MatrixSlice6x1

A column-major 6x1 matrix slice.

MatrixSlice6x2

A column-major 6x2 matrix slice.

MatrixSlice6x3

A column-major 6x3 matrix slice.

MatrixSlice6x4

A column-major 6x4 matrix slice.

MatrixSlice6x5

A column-major 6x5 matrix slice.

MatrixSlice6xX

A column-major matrix slice with 6 rows and a number of columns chosen at runtime.

MatrixSliceMN

A column-major matrix slice with R rows and C columns.

MatrixSliceMut

A mutable matrix slice.

MatrixSliceMut1

A column-major 1x1 matrix slice.

MatrixSliceMut1x2

A column-major 1x2 matrix slice.

MatrixSliceMut1x3

A column-major 1x3 matrix slice.

MatrixSliceMut1x4

A column-major 1x4 matrix slice.

MatrixSliceMut1x5

A column-major 1x5 matrix slice.

MatrixSliceMut1x6

A column-major 1x6 matrix slice.

MatrixSliceMut1xX

A column-major matrix slice with 1 row and a number of columns chosen at runtime.

MatrixSliceMut2

A column-major 2x2 matrix slice.

MatrixSliceMut2x1

A column-major 2x1 matrix slice.

MatrixSliceMut2x3

A column-major 2x3 matrix slice.

MatrixSliceMut2x4

A column-major 2x4 matrix slice.

MatrixSliceMut2x5

A column-major 2x5 matrix slice.

MatrixSliceMut2x6

A column-major 2x6 matrix slice.

MatrixSliceMut2xX

A column-major matrix slice with 2 rows and a number of columns chosen at runtime.

MatrixSliceMut3

A column-major 3x3 matrix slice.

MatrixSliceMut3x1

A column-major 3x1 matrix slice.

MatrixSliceMut3x2

A column-major 3x2 matrix slice.

MatrixSliceMut3x4

A column-major 3x4 matrix slice.

MatrixSliceMut3x5

A column-major 3x5 matrix slice.

MatrixSliceMut3x6

A column-major 3x6 matrix slice.

MatrixSliceMut3xX

A column-major matrix slice with 3 rows and a number of columns chosen at runtime.

MatrixSliceMut4

A column-major 4x4 matrix slice.

MatrixSliceMut4x1

A column-major 4x1 matrix slice.

MatrixSliceMut4x2

A column-major 4x2 matrix slice.

MatrixSliceMut4x3

A column-major 4x3 matrix slice.

MatrixSliceMut4x5

A column-major 4x5 matrix slice.

MatrixSliceMut4x6

A column-major 4x6 matrix slice.

MatrixSliceMut4xX

A column-major matrix slice with 4 rows and a number of columns chosen at runtime.

MatrixSliceMut5

A column-major 5x5 matrix slice.

MatrixSliceMut5x1

A column-major 5x1 matrix slice.

MatrixSliceMut5x2

A column-major 5x2 matrix slice.

MatrixSliceMut5x3

A column-major 5x3 matrix slice.

MatrixSliceMut5x4

A column-major 5x4 matrix slice.

MatrixSliceMut5x6

A column-major 5x6 matrix slice.

MatrixSliceMut5xX

A column-major matrix slice with 5 rows and a number of columns chosen at runtime.

MatrixSliceMut6

A column-major 6x6 matrix slice.

MatrixSliceMut6x1

A column-major 6x1 matrix slice.

MatrixSliceMut6x2

A column-major 6x2 matrix slice.

MatrixSliceMut6x3

A column-major 6x3 matrix slice.

MatrixSliceMut6x4

A column-major 6x4 matrix slice.

MatrixSliceMut6x5

A column-major 6x5 matrix slice.

MatrixSliceMut6xX

A column-major matrix slice with 6 rows and a number of columns chosen at runtime.

MatrixSliceMutMN

A column-major matrix slice with R rows and C columns.

MatrixSliceMutN

A column-major matrix slice with D rows and columns.

MatrixSliceMutXx1

A column-major matrix slice with a number of rows chosen at runtime and 1 column.

MatrixSliceMutXx2

A column-major matrix slice with a number of rows chosen at runtime and 2 columns.

MatrixSliceMutXx3

A column-major matrix slice with a number of rows chosen at runtime and 3 columns.

MatrixSliceMutXx4

A column-major matrix slice with a number of rows chosen at runtime and 4 columns.

MatrixSliceMutXx5

A column-major matrix slice with a number of rows chosen at runtime and 5 columns.

MatrixSliceMutXx6

A column-major matrix slice with a number of rows chosen at runtime and 6 columns.

MatrixSliceN

A column-major matrix slice with D rows and columns.

MatrixSliceXx1

A column-major matrix slice with a number of rows chosen at runtime and 1 column.

MatrixSliceXx2

A column-major matrix slice with a number of rows chosen at runtime and 2 columns.

MatrixSliceXx3

A column-major matrix slice with a number of rows chosen at runtime and 3 columns.

MatrixSliceXx4

A column-major matrix slice with a number of rows chosen at runtime and 4 columns.

MatrixSliceXx5

A column-major matrix slice with a number of rows chosen at runtime and 5 columns.

MatrixSliceXx6

A column-major matrix slice with a number of rows chosen at runtime and 6 columns.

MatrixSum

The type of the result of a matrix sum.

MatrixVecDeprecated

Renamed to VecStorage.

MatrixXx1

A heap-allocated, column-major, matrix with a dynamic number of rows and 1 columns.

MatrixXx2

A heap-allocated, column-major, matrix with a dynamic number of rows and 2 columns.

MatrixXx3

A heap-allocated, column-major, matrix with a dynamic number of rows and 3 columns.

MatrixXx4

A heap-allocated, column-major, matrix with a dynamic number of rows and 4 columns.

MatrixXx5

A heap-allocated, column-major, matrix with a dynamic number of rows and 5 columns.

MatrixXx6

A heap-allocated, column-major, matrix with a dynamic number of rows and 6 columns.

Pnt1
Pnt2
Pnt3
Pnt4
Pnt5
Pnt6
Point1

A statically sized 1-dimensional column point.

Point2

A statically sized 2-dimensional column point.

Point3

A statically sized 3-dimensional column point.

Point4

A statically sized 4-dimensional column point.

Point5

A statically sized 5-dimensional column point.

Point6

A statically sized 6-dimensional column point.

Projective2

An invertible 2D general transformation. Stored as a homogeneous 3x3 matrix.

Projective3

An invertible 3D general transformation. Stored as a homogeneous 4x4 matrix.

Quat
Rotation2
Rotation3
RowDVector

A dynamically sized row vector.

RowVector

A matrix with one row and D columns .

RowVector1

A stack-allocated, 1-dimensional row vector.

RowVector2

A stack-allocated, 2-dimensional row vector.

RowVector3

A stack-allocated, 3-dimensional row vector.

RowVector4

A stack-allocated, 4-dimensional row vector.

RowVector5

A stack-allocated, 5-dimensional row vector.

RowVector6

A stack-allocated, 6-dimensional row vector.

RowVectorN

A statically sized D-dimensional row vector.

Similarity2

A 2-dimensional similarity.

Similarity3

A 3-dimensional similarity.

SimilarityMatrix2

A 2-dimensional similarity using a rotation matrix for its rotation part.

SimilarityMatrix3

A 3-dimensional similarity using a rotation matrix for its rotation part.

SquareMatrix

A square matrix.

Transform2

A 2D general transformation that may not be invertible. Stored as a homogeneous 3x3 matrix.

Transform3

A 3D general transformation that may not be inversible. Stored as a homogeneous 4x4 matrix.

Translation1

A 1-dimensional translation.

Translation2
Translation3
Translation4

A 4-dimensional translation.

Translation5

A 5-dimensional translation.

Translation6

A 6-dimensional translation.

UnitComplex

A 2D rotation represented as a complex number with magnitude 1.

UnitQuat
UnitQuaternion

A unit quaternions. May be used to represent a rotation.

Vec1
Vec2
Vec3
Vec4
Vec5
Vec6
VecN
Vector

A matrix with one column and D rows.

Vector1

A stack-allocated, 1-dimensional column vector.

Vector2

A stack-allocated, 2-dimensional column vector.

Vector3

A stack-allocated, 3-dimensional column vector.

Vector4

A stack-allocated, 4-dimensional column vector.

Vector5

A stack-allocated, 5-dimensional column vector.

Vector6

A stack-allocated, 6-dimensional column vector.

VectorN

A statically sized D-dimensional column vector.

VectorSlice1

A 1D column vector slice.

VectorSlice2

A 2D column vector slice.

VectorSlice3

A 3D column vector slice.

VectorSlice4

A 4D column vector slice.

VectorSlice5

A 5D column vector slice.

VectorSlice6

A 6D column vector slice.

VectorSliceMut1

A 1D column vector slice.

VectorSliceMut2

A 2D column vector slice.

VectorSliceMut3

A 3D column vector slice.

VectorSliceMut4

A 4D column vector slice.

VectorSliceMut5

A 5D column vector slice.

VectorSliceMut6

A 6D column vector slice.

VectorSliceMutN

A column vector slice with D rows.

VectorSliceN

A column vector slice with D rows.

VectorSum

The type of the result of a matrix sum.