Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of boost. Click here for the latest Boost documentation.

QVM: Quaternions, Vectors, Matrices

qvm

The boost::qvm namespace contains all Boost QVM type and function names. The boost::qvm::sfinae namespace contains only function names that use SFINAE/enable_if.


See also: Accessing Vector Elements by Swizzling | assign(mat,mat) | assign(quat,quat) | assign(vec,vec) | boost/qvm/deduce_mat.hpp | boost/qvm/deduce_quat.hpp | boost/qvm/deduce_scalar.hpp | boost/qvm/deduce_vec.hpp | boost/qvm/enable_if.hpp | boost/qvm/error.hpp | boost/qvm/map_mat_mat.hpp | boost/qvm/map_mat_vec.hpp | boost/qvm/map_vec_mat.hpp | boost/qvm/mat.hpp | boost/qvm/mat_access.hpp | boost/qvm/mat_operations.hpp | boost/qvm/mat_traits.hpp | boost/qvm/mat_traits_defaults.hpp | boost/qvm/math.hpp | boost/qvm/quat.hpp | boost/qvm/quat_access.hpp | boost/qvm/quat_operations.hpp | boost/qvm/quat_traits.hpp | boost/qvm/quat_traits_defaults.hpp | boost/qvm/quat_vec_operations.hpp | boost/qvm/scalar_traits.hpp | boost/qvm/swizzle.hpp | boost/qvm/vec.hpp | boost/qvm/vec_access.hpp | boost/qvm/vec_mat_operations.hpp | boost/qvm/vec_operations.hpp | boost/qvm/vec_traits.hpp | boost/qvm/vec_traits_defaults.hpp | cmp(mat,mat) | cmp(quat,quat) | cmp(vec,vec) | col | col_mat | conjugate | convert_to(mat) | convert_to(quat) | convert_to(vec) | cross | deduce_mat | deduce_mat2 | deduce_quat | deduce_quat2 | deduce_vec | deduce_vec2 | del_col | del_row | del_row_col | determinant | diag | diag_mat | dot(quat,quat) | dot(vec,vec) | enable_if | error | identity_mat | identity_quat | inverse(mat) | inverse(quat) | is_mat | is_quat | is_scalar | is_vec | mag(quat) | mag(vec) | mag_sqr(quat) | mag_sqr(vec) | mat_traits | mat_traits_defaults | mref | neg_col | neg_row | normalize(quat) | normalize(vec) | normalized(quat) | normalized(vec) | operator!=(mat,mat) | operator!=(quat,quat) | operator!=(vec,vec) | operator*(mat,mat) | operator*(mat,scalar) | operator*(mat,vec) | operator*(quat,quat) | operator*(quat,scalar) | operator*(quat,vec) | operator*(scalar,mat) | operator*(scalar,vec) | operator*(vec,mat) | operator*(vec,scalar) | operator*=(mat,mat) | operator*=(mat,scalar) | operator*=(quat,quat) | operator*=(quat,scalar) | operator*=(vec,scalar) | operator+(mat,mat) | operator+(quat,quat) | operator+(vec,vec) | operator+=(mat,mat) | operator+=(quat,quat) | operator+=(vec,vec) | operator-(mat) | operator-(mat,mat) | operator-(quat) | operator-(quat,quat) | operator-(vec) | operator-(vec,vec) | operator-=(mat,mat) | operator-=(quat,quat) | operator-=(vec,vec) | operator/(mat,scalar) | operator/(quat,scalar) | operator/(vec,scalar) | operator/=(mat,scalar) | operator/=(quat,scalar) | operator/=(vec,scalar) | operator==(mat,mat) | operator==(quat,quat) | operator==(vec,vec) | perspective_lh | perspective_rh | ptr_mref | ptr_qref | ptr_vref | qref | quat_traits | quat_traits_defaults | rot_mat | rot_quat | rotate(mat) | rotate(quat,vec,scalar) | rotate_x(mat,scalar) | rotate_x(quat,scalar) | rotate_y(mat,scalar) | rotate_y(quat,scalar) | rotate_z(mat,scalar) | rotate_z(quat,scalar) | rotx_mat(scalar) | rotx_quat(scalar) | roty_mat(scalar) | roty_quat(scalar) | rotz_mat(scalar) | rotz_quat(scalar) | row | row_mat | Synopsis | scalar | scalar_cast(mat) | scalar_cast(quat) | scalar_cast(vec) | scalar_traits | set_identity(mat) | set_identity(quat) | set_rot(mat) | set_rot(quat,vec,scalar) | set_rotx(mat,scalar) | set_rotx(quat,scalar) | set_roty(mat,scalar) | set_roty(quat,scalar) | set_rotz(mat,scalar) | set_rotz(quat,scalar) | set_zero(mat) | set_zero(quat) | set_zero(vec) | sfinae | slerp | swap_cols | swap_rows | transform_point | transform_vector | translation | translation_mat | transposed | vec_traits | vec_traits_defaults | vref | zero_determinant_error | zero_magnitude_error | zero_mat | zero_quat | zero_vec