Represents a 3D pose as a 4x4 homogeneous transformation matrix.
More...
#include <valkyrie/util/geometry/Pose.h>
|
|
using | Twist3d = EigenUnit::UnitVector<units::meter, units::meter, units::meter, units::radian, units::radian, units::radian> |
|
|
| Pose3d (const BaseMatrix &b) |
| | Pose3d (Translation3d trans, Rotation3d rot) |
| | Construct a Pose3d from a translation and rotation.
|
| | Pose3d (const Pose2d &pose) |
| | Construct a Pose3d from a Pose2d in the X-Y plane.
|
| | Pose3d (frc::Translation3d frcTrans, frc::Rotation3d frcRot) |
| | Construct a Pose3d from an frc::Translation3d and frc::Rotation3d.
|
| | Pose3d (frc::Pose3d frcPose) |
| | Construct a Pose3d from an frc::Pose3d.
|
| | Pose3d (frc::Pose2d frcPose) |
| | Construct a Pose3d from an frc::Pose2d, lifting into 3D. Z is set to zero and pitch and roll are set to zero.
|
|
Translation3d | Translation () const |
|
Rotation3d | Rotation () const |
|
units::meter_t | X () const |
|
units::meter_t | Y () const |
|
units::meter_t | Z () const |
| Pose2d | ToPose2d () const |
| | Project this pose onto the X-Y plane.
|
| Pose3d | TransformBy (const Transform3d &transform) const |
| | Apply a Transform3d in this pose's frame.
|
| Pose3d | RelativeTo (const Pose3d &other) const |
| | Express this pose relative to another pose.
|
| Pose3d | RotateBy (const Rotation3d &rot) const |
| | Rotate this pose around the global origin.
|
| Pose3d | RotateAround (const Translation3d &point, const Rotation3d &rot) const |
| | Rotate this pose around an arbitrary point in 3D space.
|
| Pose3d | Nearest (std::initializer_list< Pose3d > poses) const |
| | Find the nearest pose from a collection.
|
|
Pose3d | operator+ (const Transform3d &transform) const |
| | operator+ applies a Transform3d.
|
|
Transform3d | operator- (const Pose3d &other) const |
| | operator- returns the Transform3d mapping other -> this.
|
|
Pose3d | operator* (double scalar) const |
| | Scalar multiplication of both translation and rotation.
|
|
Pose3d | operator/ (double scalar) const |
| | Scalar division.
|
|
Twist3d | Log () const |
| | Logarithm map: SE(3) -> se(3).
|
|
| NamedPhysicalMatrix (const EigenUnit::PhysicalMatrix< HomogeneousVector3d, HomogeneousVector3d > &base) |
|
Pose3d | Inverse () const |
|
auto | Block () const |
|
|
static Pose3d | Exp (Twist3d twist) |
| | Exponential map: se(3) -> SE(3).
|
Represents a 3D pose as a 4x4 homogeneous transformation matrix.
◆ Pose3d() [1/5]
Construct a Pose3d from a translation and rotation.
Creates a matrix of the form: [ R R R T ] [ R R R T ] [ R R R T ] [ 0 0 0 1 ]
◆ Pose3d() [2/5]
| valor::geometry::Pose3d::Pose3d |
( |
const Pose2d & | pose | ) |
|
|
inlineexplicit |
Construct a Pose3d from a Pose2d in the X-Y plane.
- Parameters
-
◆ Pose3d() [3/5]
| valor::geometry::Pose3d::Pose3d |
( |
frc::Translation3d | frcTrans, |
|
|
frc::Rotation3d | frcRot ) |
|
inlineexplicit |
Construct a Pose3d from an frc::Translation3d and frc::Rotation3d.
- Parameters
-
| frcTrans | The frc translation component. |
| frcRot | The frc rotation component. |
◆ Pose3d() [4/5]
| valor::geometry::Pose3d::Pose3d |
( |
frc::Pose3d | frcPose | ) |
|
|
inlineexplicit |
Construct a Pose3d from an frc::Pose3d.
- Parameters
-
| frcPose | The frc pose to convert. |
◆ Pose3d() [5/5]
| valor::geometry::Pose3d::Pose3d |
( |
frc::Pose2d | frcPose | ) |
|
|
inlineexplicit |
Construct a Pose3d from an frc::Pose2d, lifting into 3D. Z is set to zero and pitch and roll are set to zero.
- Parameters
-
| frcPose | The frc 2D pose to lift into 3D. |
◆ Nearest()
| Pose3d valor::geometry::Pose3d::Nearest |
( |
std::initializer_list< Pose3d > | poses | ) |
const |
|
inline |
Find the nearest pose from a collection.
- Parameters
-
| poses | Collection of candidate poses. |
- Returns
- The nearest pose by translation distance.
◆ RelativeTo()
| Pose3d valor::geometry::Pose3d::RelativeTo |
( |
const Pose3d & | other | ) |
const |
|
inline |
Express this pose relative to another pose.
- Parameters
-
- Returns
- This pose in the other's frame.
◆ RotateAround()
Rotate this pose around an arbitrary point in 3D space.
- Parameters
-
| point | The pivot point. |
| rot | The rotation to apply. |
- Returns
- The rotated pose.
◆ RotateBy()
Rotate this pose around the global origin.
- Parameters
-
| rot | The rotation to apply globally. |
- Returns
- The rotated pose.
◆ ToPose2d()
| Pose2d valor::geometry::Pose3d::ToPose2d |
( |
| ) |
const |
|
inline |
Project this pose onto the X-Y plane.
- Returns
- The 2D pose.
◆ TransformBy()
Apply a Transform3d in this pose's frame.
- Parameters
-
| transform | The transform to apply. |
- Returns
- The new pose.
The documentation for this class was generated from the following file:
- src/main/include/valkyrie/util/geometry/Pose.h