Monado OpenXR Runtime
Loading...
Searching...
No Matches
xrt::tracking::constellation::optimizer::PoseWithVelocity< T > Struct Template Reference

Pose with 9 degrees of freedom, translation, rotation, and linear velocity. More...

#include </builds/monado/monado/src/xrt/tracking/constellation/optimizer/internal_math.hpp>

Inheritance diagram for xrt::tracking::constellation::optimizer::PoseWithVelocity< T >:
Collaboration diagram for xrt::tracking::constellation::optimizer::PoseWithVelocity< T >:

Public Member Functions

 PoseWithVelocity (xrt_pose p)
 
template<typename Derived >
 PoseWithVelocity (xrt_pose p, const Vector3< Derived > &velocity)
 
 PoseWithVelocity (Eigen::Ref< const Vector< T, kNumParameters > > parameters)
 
void pack (Eigen::Ref< Vector< T, kNumParameters > > parameters) const
 
- Public Member Functions inherited from xrt::tracking::constellation::optimizer::Pose< T >
 Pose (Quaternion< T > quat)
 
 Pose (xrt_pose pose)
 
 Pose (Eigen::Ref< const Vector< T, kNumParameters > > parameters)
 
template<typename TransformType >
 Pose (const Eigen::Transform< TransformType, 3, Eigen::Isometry > &transform)
 
void pack (Eigen::Ref< Vector< T, kNumParameters > > parameters) const
 
Eigen::Transform< T, 3, Eigen::Isometry > toTransform () const
 
void getQuaternion (Quaternion< T > &q) const
 
xrt_pose toXrtPose () const
 

Data Fields

Vector3< T > velocity
 
- Data Fields inherited from xrt::tracking::constellation::optimizer::Pose< T >
Vector3< T > translation
 
Quaternion< T > rotation
 

Static Public Attributes

static constexpr int kNumParameters = Pose<T>::kNumParameters + 3
 
static constexpr int kNumTangentParameters = Pose<T>::kNumTangentParameters + 3
 
- Static Public Attributes inherited from xrt::tracking::constellation::optimizer::Pose< T >
static constexpr int kNumParameters = 7
 Size of the parameter block handed to Ceres: (tX, tY, tZ), (qX, qY, qZ, qW).
 
static constexpr int kNumTangentParameters = 6
 Degrees of freedom the manifold exposes to the solver.
 
static constexpr int kNumResiduals = 6
 

Detailed Description

template<typename T>
struct xrt::tracking::constellation::optimizer::PoseWithVelocity< T >

Pose with 9 degrees of freedom, translation, rotation, and linear velocity.

Stored as a Pose with an extra 3-parameter vector for the velocity.

See PoseWithVelocityManifold for the correct way to optimize on this, which takes tangent space from 10 -> 9 parameters (quat exponential map).


The documentation for this struct was generated from the following file: