All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Typedefs | Functions
RigidTransform.h File Reference

Definitions of 2x2 and 3x3 rigid (isometric) transforms. More...

#include <Eigen/Core>
#include <Eigen/Geometry>
#include "SurgSim/Math/Quaternion.h"
Include dependency graph for RigidTransform.h:

Go to the source code of this file.

Namespaces

 SurgSim
 
 SurgSim::Math
 

Typedefs

typedef Eigen::Transform
< float, 2, Eigen::Isometry > 
SurgSim::Math::RigidTransform2f
 A 2D rigid (isometric) transform, represented as floats. More...
 
typedef Eigen::Transform
< float, 3, Eigen::Isometry > 
SurgSim::Math::RigidTransform3f
 A 3D rigid (isometric) transform, represented as floats. More...
 
typedef Eigen::Transform
< double, 2, Eigen::Isometry > 
SurgSim::Math::RigidTransform2d
 A 2D rigid (isometric) transform, represented as doubles. More...
 
typedef Eigen::Transform
< double, 3, Eigen::Isometry > 
SurgSim::Math::RigidTransform3d
 A 3D rigid (isometric) transform, represented as doubles. More...
 

Functions

template<typename M , typename V >
Eigen::Transform< typename
M::Scalar,
M::RowsAtCompileTime,
Eigen::Isometry > 
SurgSim::Math::makeRigidTransform (const Eigen::MatrixBase< M > &rotation, const Eigen::MatrixBase< V > &translation)
 Create a rigid transform using the specified rotation matrix and translation. More...
 
template<typename Q , typename V >
Eigen::Transform< typename
Q::Scalar, 3, Eigen::Isometry > 
SurgSim::Math::makeRigidTransform (const Eigen::QuaternionBase< Q > &rotation, const Eigen::MatrixBase< V > &translation)
 Create a rigid transform using the specified rotation quaternion and translation. More...
 
template<typename T , int VOpt>
Eigen::Transform< T,
3, Eigen::Isometry > 
SurgSim::Math::makeRigidTransform (const Eigen::Matrix< T, 3, 1, VOpt > &position, const Eigen::Matrix< T, 3, 1, VOpt > &center, const Eigen::Matrix< T, 3, 1, VOpt > &up)
 Make a rigid transform from a eye point a center view point and an up direction, does not check whether up is colinear with eye-center The original formula can be found at http://www.opengl.org/sdk/docs/man2/xhtml/gluLookAt.xml. More...
 
template<typename V >
Eigen::Transform< typename
V::Scalar,
V::SizeAtCompileTime,
Eigen::Isometry > 
SurgSim::Math::makeRigidTranslation (const Eigen::MatrixBase< V > &translation)
 Create a rigid transform using the identity rotation and the specified translation. More...
 
template<typename T , int TOpt>
Eigen::Transform< T,
3, Eigen::Isometry > 
SurgSim::Math::interpolate (const Eigen::Transform< T, 3, Eigen::Isometry, TOpt > &t0, const Eigen::Transform< T, 3, Eigen::Isometry, TOpt > &t1, T t)
 Interpolate (slerp) between 2 rigid transformations. More...
 

Detailed Description

Definitions of 2x2 and 3x3 rigid (isometric) transforms.