Classes | Namespaces | Macros | Typedefs | Functions | Variables
math3d.h File Reference
#include <string>
#include <iostream>
#include <cmath>
#include <vector>
#include <stdexcept>
#include <cstdlib>
Include dependency graph for math3d.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  math3d::color_rgb24
 
class  math3d::invalid_vector
 
class  math3d::matrix< T >
 
struct  math3d::matrix3x3< T >
 
class  math3d::oriented_point3d
 
struct  math3d::quaternion< T >
 
struct  math3d::triangle
 
struct  math3d::vec3d< T >
 

Namespaces

 math3d
 

Macros

#define M_PI   (3.14159265358979323846)
 

Typedefs

typedef vec3d< double > math3d::normal3d
 
typedef vec3d< double > math3d::point3d
 
typedef std::pair< matrix3x3< double >, point3d > math3d::rigid_motion_t
 
typedef unsigned int uint32_t
 
typedef unsigned char uint8_t
 

Functions

template<typename T >
bool math3d::almost_zero (T a, double e)
 
template<typename T >
void math3d::conjugate (quaternion< T > &q)
 
template<typename T >
vec3d< T > math3d::cross_product (const vec3d< T > &v1, const vec3d< T > &v2)
 
template<typename T >
double math3d::dist (const T &p1, const T &p2)
 
template<typename T >
math3d::dot (const quaternion< T > &a, const quaternion< T > &b)
 
template<typename T >
math3d::dot_product (const vec3d< T > &v1, const vec3d< T > &v2)
 
template<typename T , typename S >
double math3d::dot_product (const vec3d< T > &v1, const vec3d< S > &v2)
 
template<typename T >
math3d::dot_product (const quaternion< T > &p, const quaternion< T > &q)
 
template<typename T >
vec3d< T > math3d::get_normalize (const vec3d< T > &p)
 
template<typename T >
vec3d< T > math3d::get_rotate (const vec3d< T > &v, const quaternion< T > &q)
 
template<typename T >
vec3d< T > math3d::get_rotate (const vec3d< T > &p, const matrix3x3< T > &rot)
 
template<typename T >
vec3d< T > math3d::get_rotate_translate (const vec3d< T > &p, const matrix3x3< T > &rot, const point3d &t)
 
template<typename T >
vec3d< T > math3d::get_rotate_translate (const vec3d< T > &p, const matrix< T > &rot, const point3d &t)
 
template<typename T >
vec3d< T > math3d::get_rotate_translate (const vec3d< T > &p, const T *rot, const T *t)
 
template<typename T >
vec3d< T > math3d::get_rotate_translate (const vec3d< T > &v, const quaternion< T > &rot, const point3d &t)
 
template<typename T >
matrix3x3< T > math3d::get_transpose (const matrix3x3< T > &m)
 
template<typename T >
matrix3x3< T > math3d::identity3x3 ()
 
template<typename R , typename T >
void math3d::invert (R &r, T &t)
 
template<typename T >
double math3d::magnitude (const T &p)
 
template<typename Iterator >
double math3d::median (Iterator start, Iterator end)
 
template<typename T >
void math3d::mult_matrix (const matrix3x3< T > &m1, const matrix3x3< T > &m2, matrix3x3< T > &r)
 
template<typename Rot1 , typename Rot2 , typename Rot3 >
void math3d::mult_matrix (const Rot1 &m1, const Rot2 &m2, Rot3 &r)
 
template<typename T >
void math3d::mult_matrix_inplace (const matrix3x3< T > &m1, const matrix3x3< T > &m2, matrix3x3< T > &r)
 
template<typename T >
void math3d::mult_quaternion (const quaternion< T > &a, const quaternion< T > &b, quaternion< T > &r)
 
template<typename T >
math3d::norm (const quaternion< T > &a)
 
template<typename T >
double math3d::norm2 (const T &v)
 
template<typename T >
void math3d::normalize (quaternion< T > &q)
 
template<typename T >
double math3d::normalize (vec3d< T > &p)
 
template<typename T >
quaternion< T > math3d::operator* (const quaternion< T > &a, const quaternion< T > &b)
 
template<typename T >
quaternion< T > math3d::operator+ (const quaternion< T > &a, const quaternion< T > &b)
 
template<typename T >
quaternion< T > math3d::operator~ (const quaternion< T > &a)
 
template<typename T >
matrix3x3< T > math3d::quaternion_to_rot_matrix (const quaternion< T > &q)
 
template<typename T >
void math3d::relative_motion (const matrix3x3< T > &Ri, const point3d &Ti, const matrix3x3< T > &Rj, const point3d &Tj, matrix3x3< T > &Rij, point3d &Tij)
 
template<typename T >
quaternion< T > math3d::rot_matrix_to_quaternion (const matrix3x3< T > &m)
 
template<typename T >
void math3d::rotate (vec3d< T > &p, const matrix< T > &rot)
 
template<typename T >
void math3d::rotate (vec3d< T > &p, const matrix3x3< T > &rot)
 
template<typename T , typename S >
void math3d::rotate (vec3d< T > &p, const matrix< S > &rot)
 
template<typename T , typename S >
void math3d::rotate (vec3d< T > &p, const matrix3x3< S > &rot)
 
template<typename T >
void math3d::rotate (vec3d< T > &p, const quaternion< T > &rot)
 
template<typename T , typename RotationType >
void math3d::rotate_translate (vec3d< T > &v, const RotationType &rot, const point3d &trans)
 
template<typename T >
void math3d::set_identity (quaternion< T > &q)
 
template<typename T >
void math3d::set_identity (matrix< T > &m, T val=1)
 
template<typename T >
void math3d::set_identity (matrix3x3< T > &m, T val=1)
 
template<typename T >
double math3d::squared_dist (const vec3d< T > &p1, const vec3d< T > &p2)
 
template<typename T >
void math3d::transpose (matrix< T > &m)
 
template<typename T >
void math3d::transpose (matrix3x3< T > &m)
 
template<typename T >
void math3d::transpose (const matrix< T > &src, matrix< T > &dest)
 
template<typename T >
void math3d::transpose (const matrix3x3< T > &src, matrix3x3< T > &dest)
 

Variables

static const double math3d::deg_on_rad = 180. / pi
 
static const double math3d::pi = M_PI
 
static const double math3d::rad_on_deg = pi / 180.
 

Macro Definition Documentation

#define M_PI   (3.14159265358979323846)

Definition at line 42 of file math3d.h.

Typedef Documentation

typedef unsigned int uint32_t

Definition at line 46 of file math3d.h.

typedef unsigned char uint8_t

Definition at line 45 of file math3d.h.



trac_ik_lib
Author(s): Patrick Beeson, Barrett Ames
autogenerated on Tue Jun 1 2021 02:38:35