Vector.h File Reference

Definitions of small fixed-size vector types. More...

`#include <array>`
`#include <vector>`
`#include <Eigen/Core>`
`#include <Eigen/Geometry>`
`#include "SurgSim/Framework/Assert.h"`

Go to the source code of this file.

## Namespaces

| SurgSim
| SurgSim::Math

## Typedefs

typedef Eigen::Matrix< float, 2, 1 > | SurgSim::Math::Vector2f
| A 2D vector of floats. More...
typedef Eigen::Matrix< float, 3, 1 > | SurgSim::Math::Vector3f
| A 3D vector of floats. More...
typedef Eigen::Matrix< float, 4, 1 > | SurgSim::Math::Vector4f
| A 4D vector of floats. More...
typedef Eigen::Matrix< float, 6, 1 > | SurgSim::Math::Vector6f
| A 6D vector of floats. More...
typedef Eigen::Matrix< double, 2, 1 > | SurgSim::Math::Vector2d
| A 2D vector of doubles. More...
typedef Eigen::Matrix< double, 3, 1 > | SurgSim::Math::Vector3d
| A 3D vector of doubles. More...
typedef Eigen::Matrix< double, 4, 1 > | SurgSim::Math::Vector4d
| A 4D vector of doubles. More...
typedef Eigen::Matrix< double, 6, 1 > | SurgSim::Math::Vector6d
| A 6D matrix of doubles. More...
typedef Eigen::Matrix< double, Eigen::Dynamic, 1 > | SurgSim::Math::Vector
| A dynamic size column vector. More...

## Functions

template<class Vector , class SubVector >
void | SurgSim::Math::addSubVector (const SubVector &subVector, size_t blockId, size_t blockSize, Vector *vector)
| Helper method to add a sub-vector into a vector, for the sake of clarity. More...
template<class Vector , class SubVector >
void | SurgSim::Math::addSubVector (const SubVector &subVector, const std::vector< size_t > blockIds, size_t blockSize, Vector *vector)
| Helper method to add a sub-vector per block into a vector, for the sake of clarity. More...
template<class Vector , class SubVector >
void | SurgSim::Math::setSubVector (const SubVector &subVector, size_t blockId, size_t blockSize, Vector *vector)
| Helper method to set a sub-vector into a vector, for the sake of clarity. More...
template<class Vector >
Eigen::VectorBlock< Vector > | SurgSim::Math::getSubVector (Vector &vector, size_t blockId, size_t blockSize)
| Helper method to access a sub-vector from a vector, for the sake of clarity. More...
template<class Vector , class SubVector >
void | SurgSim::Math::getSubVector (const Vector &vector, const std::vector< size_t > blockIds, size_t blockSize, SubVector *subVector)
| Helper method to get a sub-vector per block from a vector, for the sake of clarity. More...
template<typename T , int size, int TOpt>
Eigen::Matrix< T, size, 1, TOpt > | SurgSim::Math::interpolate (const Eigen::Matrix< T, size, 1, TOpt > &previous, const Eigen::Matrix< T, size, 1, TOpt > &next, T t)
| Interpolate (slerp) between 2 vectors. More...
template<class T , int VOpt>
bool | SurgSim::Math::buildOrthonormalBasis (Eigen::Matrix< T, 3, 1, VOpt > *i, Eigen::Matrix< T, 3, 1, VOpt > *j, Eigen::Matrix< T, 3, 1, VOpt > *k)
| Helper method to construct an orthonormal basis (i, j, k) given the 1st vector direction. More...
template<class T , int VOpt>
Eigen::Matrix< T, 3, 1, VOpt > | SurgSim::Math::robustCrossProduct (const std::array< Eigen::Matrix< T, 3, 1, VOpt >, 2 > &p, const std::array< Eigen::Matrix< T, 3, 1, VOpt >, 2 > &q, T epsilon)
| Calculate the best unit normal we can find in the direction of pXq for one of the endpoints of q. More...

## Detailed Description

Definitions of small fixed-size vector types.