EAA 
A class for representing an equivalent angleaxis rotation
This class defines an equivalentaxisangle orientation vector also known
as an \thetak vector or "axis+angle" vector
The equivalentaxisangle vector is the product of a unit vector
\hat{\mathbf{k}} and an angle of rotation around that axis \theta
Note: given two EAA vectors \theta_1\mathbf{\hat{k}}_1 and
\theta_2\mathbf{\hat{k}}_2 it is generally not possible to subtract
or add these vectors, except for the special case when
\mathbf{\hat{k}}_1 == \mathbf{\hat{k}}_2 this is why this class does
not have any subtraction or addition operators

EAAf 
A class for representing an equivalent angleaxis rotation
This class defines an equivalentaxisangle orientation vector also known
as an \thetak vector or "axis+angle" vector
The equivalentaxisangle vector is the product of a unit vector
\hat{\mathbf{k}} and an angle of rotation around that axis \theta
Note: given two EAA vectors \theta_1\mathbf{\hat{k}}_1 and
\theta_2\mathbf{\hat{k}}_2 it is generally not possible to subtract
or add these vectors, except for the special case when
\mathbf{\hat{k}}_1 == \mathbf{\hat{k}}_2 this is why this class does
not have any subtraction or addition operators

EigenDecomposition 
Type representing a set of eigen values and eigen vectors.

EigenDecomposition_f 
Type representing a set of eigen values and eigen vectors.

EigenMatrix2d 

EigenMatrix2f 

EigenMatrix3d 

EigenMatrix3f 

EigenMatrix3id 

EigenMatrix4d 

EigenMatrix4f 

EigenMatrixXd 

EigenMatrixXf 

EigenQuaterniond 

EigenQuaternionf 

EigenRowVector3d 

EigenRowVector3f 

EigenRowVector3id 

EigenVector2d 

EigenVector2f 

EigenVector3d 

EigenVector3f 

EigenVector3id 

EigenVector6d 

EigenVector6f 

EigenVector7d 

EigenVector7f 

EigenVectorXd 

EigenVectorXf 

EuclideanMetricQ 
Euclidean distance metric for vector types.
The distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
\sqrt{\sum_{i=1}^{n}(p_i  q_i)^2}

EuclideanMetricVector2D 
Euclidean distance metric for vector types.
The distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
\sqrt{\sum_{i=1}^{n}(p_i  q_i)^2}

EuclideanMetricVector3D 
Euclidean distance metric for vector types.
The distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
\sqrt{\sum_{i=1}^{n}(p_i  q_i)^2}

InertiaMatrixd 
A 3x3 inertia matrix

InertiaMatrixf 
A 3x3 inertia matrix

InfinityMetricQ 
Infinity norm distance metric for vector types.
InfinityMetric is a metric of the Euclidean nPlane.

InfinityMetricVector2D 
Infinity norm distance metric for vector types.
InfinityMetric is a metric of the Euclidean nPlane.

InfinityMetricVector3D 
Infinity norm distance metric for vector types.
InfinityMetric is a metric of the Euclidean nPlane.

Jacobian 
A Jacobian class.

Line2D 
Describes a line segment in 2D.

Line2D.IntersectResult 
definition of intersection result values for the intersection test
between two lines.

Line2DPolar 
Describes a line in 2D in polar coordinates.

LinearAlgebra 
Collection of Linear Algebra functions

ManhattanMetricVector2D 
Manhattan distance metric for vector types.
The ManhattanMetric, also known as the taxicab metric or the 1norm, is a
metric on the Euclidean nPlane.

ManhattanMetricVector3D 
Manhattan distance metric for vector types.
The ManhattanMetric, also known as the taxicab metric or the 1norm, is a
metric on the Euclidean nPlane.

ManhattenMatricQ 
Manhattan distance metric for vector types.
The ManhattanMetric, also known as the taxicab metric or the 1norm, is a
metric on the Euclidean nPlane.

Math 
Utility functions for the rw::math module.

MetricFactory 
Metric constructor functions.
The constructor functions are parameterized by a type of vector.

MetricQ 
Template interface for metrics on type T.
A metric is a function that defines a scalar distance between elements.

MetricQCPtr 
Ptr stores a pointer and optionally takes ownership of the value.

MetricQPtr 
Ptr stores a pointer and optionally takes ownership of the value.

MetricRotation3D 
Template interface for metrics on type T.
A metric is a function that defines a scalar distance between elements.

MetricRotation3D_f 
Template interface for metrics on type T.
A metric is a function that defines a scalar distance between elements.

MetricRotation3DCPtr 
Ptr stores a pointer and optionally takes ownership of the value.

MetricRotation3DPtr 
Ptr stores a pointer and optionally takes ownership of the value.

MetricTransform3D 
Template interface for metrics on type T.
A metric is a function that defines a scalar distance between elements.

MetricTransform3D_f 
Template interface for metrics on type T.
A metric is a function that defines a scalar distance between elements.

MetricTransform3DCPtr 
Ptr stores a pointer and optionally takes ownership of the value.

MetricTransform3DPtr 
Ptr stores a pointer and optionally takes ownership of the value.

MetricUtil 
Various metrics and other distance measures.

MetricVector2D 
Template interface for metrics on type T.
A metric is a function that defines a scalar distance between elements.

MetricVector2DCPtr 
Ptr stores a pointer and optionally takes ownership of the value.

MetricVector2DPtr 
Ptr stores a pointer and optionally takes ownership of the value.

MetricVector3D 
Template interface for metrics on type T.
A metric is a function that defines a scalar distance between elements.

MetricVector3DCPtr 
Ptr stores a pointer and optionally takes ownership of the value.

MetricVector3DPtr 
Ptr stores a pointer and optionally takes ownership of the value.

PairConstQ 

pairEigenMatrixX_d_EigenVectorX_d 

pairEigenMatrixXComplex_d_EigenVectorXComplex_d 

PairQ 

PerspectiveTransform2D 
The PerspectiveTransform2D is a perspective transform in 2D.
The homographic transform can be used to map one arbitrary 2D
quadrilateral into another.

PerspectiveTransform2Df 
The PerspectiveTransform2D is a perspective transform in 2D.
The homographic transform can be used to map one arbitrary 2D
quadrilateral into another.

PolynomialNDdDouble 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDEigenMatrix3dDouble 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDEigenMatrix3fFloat 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDEigenMatrix3ifComplexDouble 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDEigenRowVector3dDouble 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDEigenRowVector3fFloat 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDEigenRowVector3idComplexDouble 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDEigenVector3dDouble 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDEigenVector3fFloat 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDEigenVector3idComplexDouble 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDfFloat 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialNDidComplexDouble 
Representation of a polynomial that can have nonscalar coefficients (polynomial
matrix).
Representation of a polynomial of the following form:
f(x) = C_n x^n + C_(n1) x^(n1) + C_2 x^2 + C_1 x + C_0
The polynomial is represented as a list of coefficients ordered from lowestorder term to
highestorder term, {c_0,c_1,...,c_n}.

PolynomialSolver 
Find solutions for roots of real and complex polynomial equations.
The solutions are found analytically if the polynomial is of maximum order 3.
For polynomials of order 4 and higher, Laguerre's Method is used to find
roots until the polynomial can be deflated to order 3.
The remaining roots will then be found analytically.
Some Polynomials are particularly easy to solve.

Pose2D 
A Pose3D \mathbf{x}\in \mathbb{R}^6 describes a position
and orientation in 3dimensions.
{\mathbf{x}} = \left[
\begin{array}{c}
x \\
y \\
z \\
\theta k_x \\
\theta k_y \\
\theta k_z
\end{array}
\right]
where (x,y,z) is the 3d position and (\theta k_x, \theta k_y,
\theta k_z) describes the orientation in equal angle axis (EAA)
format.

Pose2Df 
A Pose3D \mathbf{x}\in \mathbb{R}^6 describes a position
and orientation in 3dimensions.
{\mathbf{x}} = \left[
\begin{array}{c}
x \\
y \\
z \\
\theta k_x \\
\theta k_y \\
\theta k_z
\end{array}
\right]
where (x,y,z) is the 3d position and (\theta k_x, \theta k_y,
\theta k_z) describes the orientation in equal angle axis (EAA)
format.

Pose6D 
A Pose6D \mathbf{x}\in \mathbb{R}^6 describes a position
and orientation in 3dimensions.
{\mathbf{x}} = \left[
\begin{array}{c}
x \\
y \\
z \\
\theta k_x \\
\theta k_y \\
\theta k_z
\end{array}
\right]
where (x,y,z) is the 3d position and (\theta k_x, \theta k_y,
\theta k_z) describes the orientation in equal angle axis (EAA)
format.

Pose6Df 
A Pose6D \mathbf{x}\in \mathbb{R}^6 describes a position
and orientation in 3dimensions.
{\mathbf{x}} = \left[
\begin{array}{c}
x \\
y \\
z \\
\theta k_x \\
\theta k_y \\
\theta k_z
\end{array}
\right]
where (x,y,z) is the 3d position and (\theta k_x, \theta k_y,
\theta k_z) describes the orientation in equal angle axis (EAA)
format.

ProjectionMatrix 
projection matrix

Q 
Configuration vector

Quaternion 
A Quaternion \mathbf{q}\in \mathbb{R}^4 a complex
number used to describe rotations in 3dimensional space.
q_w+{\bf i}\ q_x+ {\bf j} q_y+ {\bf k}\ q_z
Quaternions can be added and multiplied in a similar way as usual
algebraic numbers.

Quaternion_f 
A Quaternion \mathbf{q}\in \mathbb{R}^4 a complex
number used to describe rotations in 3dimensional space.
q_w+{\bf i}\ q_x+ {\bf j} q_y+ {\bf k}\ q_z
Quaternions can be added and multiplied in a similar way as usual
algebraic numbers.

Random 
Generation of random numbers.

Rotation2D 

Rotation2Df 

Rotation3D 

Rotation3DAngleMetric_d 
a distance metric over rotations.

Rotation3DAngleMetric_f 
a distance metric over rotations.

Rotation3Df 

Rotation3DVector 
An abstract base class for Rotation3D parameterisations
Classes that represents a parametrisation of a 3D rotation may inherit
from this class

Rotation3DVectorf 
An abstract base class for Rotation3D parameterisations
Classes that represents a parametrisation of a 3D rotation may inherit
from this class

RPY 
A class for representing RollPitchYaw Euler angle rotations.

RPYf 
A class for representing RollPitchYaw Euler angle rotations.

sdurw_math 

sdurw_mathJNI 

Statistics 
Class for collecting data and calculating simple statistics.

Statistics_f 
Class for collecting data and calculating simple statistics.

SWIGTYPE_p_double 

SWIGTYPE_p_Eigen__Matrix3d 

SWIGTYPE_p_Eigen__Matrix3f 

SWIGTYPE_p_Eigen__MatrixT_double_4_1_t 

SWIGTYPE_p_Eigen__MatrixT_double_5_1_t 

SWIGTYPE_p_Eigen__MatrixT_double_Eigen__Dynamic_1_t 

SWIGTYPE_p_Eigen__MatrixT_double_Eigen__Dynamic_Eigen__Dynamic_t 

SWIGTYPE_p_Eigen__MatrixT_float_4_1_t 

SWIGTYPE_p_Eigen__MatrixT_float_5_1_t 

SWIGTYPE_p_Eigen__MatrixT_float_Eigen__Dynamic_1_t 

SWIGTYPE_p_Eigen__MatrixT_float_Eigen__Dynamic_Eigen__Dynamic_t 

SWIGTYPE_p_Eigen__MatrixT_std__complexT_float_t_3_3_t 

SWIGTYPE_p_Eigen__Rotation2DT_double_t 

SWIGTYPE_p_Eigen__Rotation2DT_float_t 

SWIGTYPE_p_Eigen__Vector3d 

SWIGTYPE_p_Eigen__Vector3f 

SWIGTYPE_p_float 

SWIGTYPE_p_rw__math__LinearAlgebra__EigenMatrixT_double_t__type 

SWIGTYPE_p_rw__math__LinearAlgebra__EigenMatrixT_std__complexT_double_t_t__type 

SWIGTYPE_p_rw__math__LinearAlgebra__EigenVectorT_double_t__type 

SWIGTYPE_p_rw__math__LinearAlgebra__EigenVectorT_std__complexT_double_t_t__type 

SWIGTYPE_p_rw__math__PolynomialNDT_Eigen__Matrix3d_double_t 

SWIGTYPE_p_rw__math__PolynomialNDT_Eigen__Matrix3f_float_t 

SWIGTYPE_p_rw__math__PolynomialNDT_Eigen__Vector3d_double_t 

SWIGTYPE_p_rw__math__PolynomialNDT_Eigen__Vector3f_float_t 

SWIGTYPE_p_rw__math__PolynomialT_double_t 

SWIGTYPE_p_rw__math__PolynomialT_float_t 

SWIGTYPE_p_rw__math__PolynomialT_std__complexT_double_t_t 

SWIGTYPE_p_rw__math__Rotation3DT_t 

SWIGTYPE_p_rw__math__Transform2DT_double_t 

SWIGTYPE_p_rw__math__Transform2DT_float_t 

SWIGTYPE_p_std__listT_double_t 

SWIGTYPE_p_std__listT_float_t 

SWIGTYPE_p_std__vectorT_Eigen__MatrixT_std__complexT_double_t_1_3_t_t 

SWIGTYPE_p_std__vectorT_Eigen__MatrixT_std__complexT_float_t_3_3_t_t 

SWIGTYPE_p_std__vectorT_rw__math__Rotation3DT_double_t_t 

SWIGTYPE_p_std__vectorT_rw__math__Rotation3DT_float_t_t 

SWIGTYPE_p_std__vectorT_rw__math__Transform3DT_double_t_t 

SWIGTYPE_p_std__vectorT_rw__math__Transform3DT_float_t_t 

SWIGTYPE_p_std__vectorT_rw__math__Vector2DT_double_t_t 

SWIGTYPE_p_std__vectorT_rw__math__Vector2DT_float_t_t 

SWIGTYPE_p_std__vectorT_rw__math__Vector3DT_double_t_t 

SWIGTYPE_p_std__vectorT_rw__math__Vector3DT_float_t_t 

Transform3D 

Transform3DAngleMetric_d 
distance metrics between points in SE3.

Transform3DAngleMetric_f 
distance metrics between points in SE3.

Transform3Df 

Transform3DVector 
this class is a interpolatable Transform3D, consisting of a Vecor3D and a Quaternion.
It is implemented to be very Interconvertable with a Transform3D, and allow operations souch
as Transform * scalar and Transform + Transform.

Transform3DVector_f 
this class is a interpolatable Transform3D, consisting of a Vecor3D and a Quaternion.
It is implemented to be very Interconvertable with a Transform3D, and allow operations souch
as Transform * scalar and Transform + Transform.

Vector 
Configuration vector

Vector2D 
A 2D vector \mathbf{v}\in \mathbb{R}^2
\robabx{i}{j}{\mathbf{v}} = \left[
\begin{array}{c}
v_x \\
v_y
\end{array}
\right]
In addition, Vector2D supports the cross product operator:
v3 = cross(v1, v2)
Usage example:
using namespace rw::math;
Vector2D<> v1(1.0, 2.0);
Vector2D<> v2(6.0, 7.0);
Vector2D<> v3 = cross( v1, v2 );
Vector2D<> v4 = v2  v1;

Vector2Df 
A 2D vector \mathbf{v}\in \mathbb{R}^2
\robabx{i}{j}{\mathbf{v}} = \left[
\begin{array}{c}
v_x \\
v_y
\end{array}
\right]
In addition, Vector2D supports the cross product operator:
v3 = cross(v1, v2)
Usage example:
using namespace rw::math;
Vector2D<> v1(1.0, 2.0);
Vector2D<> v2(6.0, 7.0);
Vector2D<> v3 = cross( v1, v2 );
Vector2D<> v4 = v2  v1;

Vector3D 
A 3D vector \mathbf{v}\in \mathbb{R}^3
\robabx{i}{j}{\mathbf{v}} = \left[
\begin{array}{c}
v_x \\
v_y \\
v_z
\end{array}
\right]
Usage example:
const Vector3D<> v1(1.0, 2.0, 3.0);
const Vector3D<> v2(6.0, 7.0, 8.0);
const Vector3D<> v3 = cross(v1, v2);
const double d = dot(v1, v2);
const Vector3D<> v4 = v2  v1;

Vector3Df 
A 3D vector \mathbf{v}\in \mathbb{R}^3
\robabx{i}{j}{\mathbf{v}} = \left[
\begin{array}{c}
v_x \\
v_y \\
v_z
\end{array}
\right]
Usage example:
const Vector3D<> v1(1.0, 2.0, 3.0);
const Vector3D<> v2(6.0, 7.0, 8.0);
const Vector3D<> v3 = cross(v1, v2);
const double d = dot(v1, v2);
const Vector3D<> v4 = v2  v1;

Vector4Dd 
A NDimensional Vector

Vector4Df 
A NDimensional Vector

Vector5Dd 
A NDimensional Vector

Vector5Df 
A NDimensional Vector

Vector6Dd 
A NDimensional Vector

Vector6Df 
A NDimensional Vector

VectorEigenMatrix3d 

VectorEigenMatrix3f 

VectorEigenMatrix3id 

VectorEigenRowVector3d 

VectorEigenRowVector3f 

VectorEigenVector3d 

VectorEigenVector3f 

VectorEigenVector3id 

Vectorf 
Configuration vector

VectorQ 

VectorRotation3D 

VectorRotation3D_f 

VectorTransform3D 

VectorTransform3D_f 

VectorVector2D 

VectorVector2D_f 

VectorVector3D 

VectorVector3D_f 

VelocityScrew6D 
Class for representing 6 degrees of freedom velocity screws.
\mathbf{\nu} =
\left[
\begin{array}{c}
v_x\\
v_y\\
v_z\\
\omega_x\\
\omega_y\\
\omega_z
\end{array}
\right]
A VelocityScrew is the description of a frames linear and rotational velocity
with respect to some reference frame.

VelocityScrew6Df 
Class for representing 6 degrees of freedom velocity screws.
\mathbf{\nu} =
\left[
\begin{array}{c}
v_x\\
v_y\\
v_z\\
\omega_x\\
\omega_y\\
\omega_z
\end{array}
\right]
A VelocityScrew is the description of a frames linear and rotational velocity
with respect to some reference frame.

WeightedEuclideanMetricQ 
Weighted Euclidean metric for vector types.
Given a vector of weights \mathbf{\omega}\in\mathbb{R}^n ,
the distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
\sqrt{\sum_{i=1}^{n}(\omega_i * (p_i  q_i))^2} .

WeightedEuclideanMetricVector2D 
Weighted Euclidean metric for vector types.
Given a vector of weights \mathbf{\omega}\in\mathbb{R}^n ,
the distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
\sqrt{\sum_{i=1}^{n}(\omega_i * (p_i  q_i))^2} .

WeightedEuclideanMetricVector3D 
Weighted Euclidean metric for vector types.
Given a vector of weights \mathbf{\omega}\in\mathbb{R}^n ,
the distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
\sqrt{\sum_{i=1}^{n}(\omega_i * (p_i  q_i))^2} .

WeightedInfinityMetricQ 
Weighted infinity norm metric for vector types.
Given a vector of weights \mathbf{\omega}\in\mathbb{R}^n, the
distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
max_i \omega_i * (p_i  q_i)

WeightedInfinityMetricVector2D 
Weighted infinity norm metric for vector types.
Given a vector of weights \mathbf{\omega}\in\mathbb{R}^n, the
distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
max_i \omega_i * (p_i  q_i)

WeightedInfinityMetricVector3D 
Weighted infinity norm metric for vector types.
Given a vector of weights \mathbf{\omega}\in\mathbb{R}^n, the
distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
max_i \omega_i * (p_i  q_i)

WeightedManhattenMetricQ 
Weighted Manhattan distance metric for vector types.
Given a vector of weights \mathbf{\omega}\in\mathbb{R}^n ,
the distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
\sum_{i=1}^{n} \omega_i * (p_i  q_i) .

WeightedManhattenMetricVector2D 
Weighted Manhattan distance metric for vector types.
Given a vector of weights \mathbf{\omega}\in\mathbb{R}^n ,
the distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
\sum_{i=1}^{n} \omega_i * (p_i  q_i) .

WeightedManhattenMetricVector3D 
Weighted Manhattan distance metric for vector types.
Given a vector of weights \mathbf{\omega}\in\mathbb{R}^n ,
the distance between two points
P = (p_1, p_2, ..., p_n)
and
Q = (q_1, q_2, ..., q_n)
is defined as
\sum_{i=1}^{n} \omega_i * (p_i  q_i) .

Wrench6D 
Class for representing 6 degrees of freedom wrenches.
\mathbf{\nu} =
\left[
\begin{array}{c}
f_x\\
f_y\\
f_z\\
\tau_x\\
\tau_y\\
\tau_z
\end{array}
\right]
A Wrench is the description of a frames linear force and rotational torque
with respect to some reference frame.

Wrench6Df 
Class for representing 6 degrees of freedom wrenches.
\mathbf{\nu} =
\left[
\begin{array}{c}
f_x\\
f_y\\
f_z\\
\tau_x\\
\tau_y\\
\tau_z
\end{array}
\right]
A Wrench is the description of a frames linear force and rotational torque
with respect to some reference frame.
