Simbody
Classes | Namespaces | Typedefs | Functions

Transform.h File Reference

#include "SimTKcommon/SmallMatrix.h"
#include "SimTKcommon/internal/BigMatrix.h"
#include "SimTKcommon/internal/UnitVec.h"
#include "SimTKcommon/internal/Quaternion.h"
#include "SimTKcommon/internal/Rotation.h"
#include <iosfwd>

Go to the source code of this file.

Classes

class  SimTK::Transform_< P >
 This class represents the rotate-and-shift transform which gives the location and orientation of a new frame F in a base (reference) frame B. More...
class  SimTK::InverseTransform_< P >
 Transform from frame B to frame F, but with the internal representation inverted. More...

Namespaces

namespace  SimTK
 

This is the top-level SimTK namespace into which all SimTK names are placed to avoid collision with other symbols.


Typedefs

typedef Transform_< Real > SimTK::Transform
typedef Transform_< float > SimTK::fTransform
typedef Transform_< double > SimTK::dTransform

Functions

template<class P >
std::ostream & SimTK::operator<< (std::ostream &, const Transform_< P > &)
 Generate formatted output of a Transform to an output stream.
template<class P >
std::ostream & SimTK::operator<< (std::ostream &, const InverseTransform_< P > &)
 Generate formatted output of an InverseTransform to an output stream.
template<class P , int S>
Vec< 3, P > SimTK::operator* (const Transform_< P > &X_BF, const Vec< 3, P, S > &s_F)
 If we multiply a transform or inverse transform by a 3-vector, we treat the vector as though it had a 4th element "1" appended, that is, it is treated as a station rather than a vector.
template<class P , int S>
Vec< 3, P > SimTK::operator* (const InverseTransform_< P > &X_BF, const Vec< 3, P, S > &s_F)
 If we multiply a transform or inverse transform by a 3-vector, we treat the vector as though it had a 4th element "1" appended, that is, it is treated as a station rather than a vector.
template<class P , int S>
Vec< 3, P > SimTK::operator* (const Transform_< P > &X_BF, const Vec< 3, negator< P >, S > &s_F)
 If we multiply a transform or inverse transform by a 3-vector, we treat the vector as though it had a 4th element "1" appended, that is, it is treated as a station rather than a vector.
template<class P , int S>
Vec< 3, P > SimTK::operator* (const InverseTransform_< P > &X_BF, const Vec< 3, negator< P >, S > &s_F)
 If we multiply a transform or inverse transform by a 3-vector, we treat the vector as though it had a 4th element "1" appended, that is, it is treated as a station rather than a vector.
template<class P , int S>
Vec< 4, P > SimTK::operator* (const Transform_< P > &X_BF, const Vec< 4, P, S > &a_F)
 If we multiply a transform or inverse transform by an augmented 4-vector, we use the 4th element to decide how to treat it.
template<class P , int S>
Vec< 4, P > SimTK::operator* (const InverseTransform_< P > &X_BF, const Vec< 4, P, S > &a_F)
 If we multiply a transform or inverse transform by an augmented 4-vector, we use the 4th element to decide how to treat it.
template<class P , int S>
Vec< 4, P > SimTK::operator* (const Transform_< P > &X_BF, const Vec< 4, negator< P >, S > &s_F)
 If we multiply a transform or inverse transform by an augmented 4-vector, we use the 4th element to decide how to treat it.
template<class P , int S>
Vec< 4, P > SimTK::operator* (const InverseTransform_< P > &X_BF, const Vec< 4, negator< P >, S > &s_F)
 If we multiply a transform or inverse transform by an augmented 4-vector, we use the 4th element to decide how to treat it.
template<class P , class E >
Vector_< E > SimTK::operator* (const Transform_< P > &X, const VectorBase< E > &v)
 Multiplying a matrix or vector by a Transform_.
template<class P , class E >
Vector_< E > SimTK::operator* (const VectorBase< E > &v, const Transform_< P > &X)
 Multiplying a matrix or vector by a Transform_.
template<class P , class E >
RowVector_< E > SimTK::operator* (const Transform_< P > &X, const RowVectorBase< E > &v)
 Multiplying a matrix or vector by a Transform_.
template<class P , class E >
RowVector_< E > SimTK::operator* (const RowVectorBase< E > &v, const Transform_< P > &X)
 Multiplying a matrix or vector by a Transform_.
template<class P , class E >
Matrix_< E > SimTK::operator* (const Transform_< P > &X, const MatrixBase< E > &v)
 Multiplying a matrix or vector by a Transform_.
template<class P , class E >
Matrix_< E > SimTK::operator* (const MatrixBase< E > &v, const Transform_< P > &X)
 Multiplying a matrix or vector by a Transform_.
template<class P , int N, class E , int S>
Vec< N, E > SimTK::operator* (const Transform_< P > &X, const Vec< N, E, S > &v)
 Multiplying a matrix or vector by a Transform_.
template<class P , int N, class E , int S>
Vec< N, E > SimTK::operator* (const Vec< N, E, S > &v, const Transform_< P > &X)
 Multiplying a matrix or vector by a Transform_.
template<class P , int N, class E , int S>
Row< N, E > SimTK::operator* (const Transform_< P > &X, const Row< N, E, S > &v)
 Multiplying a matrix or vector by a Transform_.
template<class P , int N, class E , int S>
Row< N, E > SimTK::operator* (const Row< N, E, S > &v, const Transform_< P > &X)
 Multiplying a matrix or vector by a Transform_.
template<class P , int M, int N, class E , int CS, int RS>
Mat< M, N, E > SimTK::operator* (const Transform_< P > &X, const Mat< M, N, E, CS, RS > &v)
 Multiplying a matrix or vector by a Transform_.
template<class P , int M, int N, class E , int CS, int RS>
Mat< M, N, E > SimTK::operator* (const Mat< M, N, E, CS, RS > &v, const Transform_< P > &X)
 Multiplying a matrix or vector by a Transform_.
template<class P >
Transform_< P > SimTK::operator* (const Transform_< P > &X1, const Transform_< P > &X2)
 Composition of transforms.
template<class P >
Transform_< P > SimTK::operator* (const Transform_< P > &X1, const InverseTransform_< P > &X2)
 Composition of transforms.
template<class P >
Transform_< P > SimTK::operator* (const InverseTransform_< P > &X1, const Transform_< P > &X2)
 Composition of transforms.
template<class P >
Transform_< P > SimTK::operator* (const InverseTransform_< P > &X1, const InverseTransform_< P > &X2)
 Composition of transforms.
template<class P >
bool SimTK::operator== (const Transform_< P > &X1, const Transform_< P > &X2)
 Comparison operators return true only if the two transforms are bit identical; that's not too useful.
template<class P >
bool SimTK::operator== (const InverseTransform_< P > &X1, const InverseTransform_< P > &X2)
 Comparison operators return true only if the two transforms are bit identical; that's not too useful.
template<class P >
bool SimTK::operator== (const Transform_< P > &X1, const InverseTransform_< P > &X2)
 Comparison operators return true only if the two transforms are bit identical; that's not too useful.
template<class P >
bool SimTK::operator== (const InverseTransform_< P > &X1, const Transform_< P > &X2)
 Comparison operators return true only if the two transforms are bit identical; that's not too useful.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines