GT RoboCup SSL
Soccer software, robot firmware
Geometry2d::Twist Class Reference

Represents a differential (velocity, acceleration, etc.) in 2d space: (dx, dy, dh). More...

Public Member Functions

 Twist ()
 Default constructor - zero-initialize.
 
 Twist (const Point &linear, double angular)
 Linear+angular terms.
 
 Twist (double dx, double dy, double dh)
 Component-wise constructor.
 
 Twist (const Eigen::Vector3d &other)
 Implicit conversion from Eigen::Vector3d.
 
 Twist (const Twist &other)=default
 Copy-constructor - default.
 
 operator Eigen::Vector3d () const
 Implicit conversion to Eigen::Vector3d.
 
Pointlinear ()
 Accessors.
 
Point const & linear () const
 
double & angular ()
 
double const & angular () const
 
Pose deltaFixed (double t) const
 Find the resulting pose (delta) of an object starting at the origin and continuing with constant (world-space) velocity for the specified time (in seconds). More...
 
Pose deltaRelative (double t) const
 Find the resulting pose (delta) of an object starting at the origin and continuing with constant (local) velocity for the specified time (in seconds). More...
 
double curvature () const
 
Twist operator+ (const Twist &other) const
 Operators.
 
Twist operator- (const Twist &other) const
 
Twist operator* (double s) const
 
Twist operator/ (double s) const
 
Twistoperator+= (const Twist &other)
 
Twistoperator-= (const Twist &other)
 
Twistoperator*= (double s)
 
Twistoperator/= (double s)
 

Static Public Member Functions

static Twist Zero ()
 Zero.
 

Detailed Description

Represents a differential (velocity, acceleration, etc.) in 2d space: (dx, dy, dh).

Uses double-precision floating point numbers.

Member Function Documentation

◆ deltaFixed()

Pose Geometry2d::Twist::deltaFixed ( double  t) const
inline

Find the resulting pose (delta) of an object starting at the origin and continuing with constant (world-space) velocity for the specified time (in seconds).

Throughout the movement, linear velocity relative to the origin is constant (but velocity in the pose's reference frame is changing in direction as the pose rotates)

Called deltaFixed because it operates fixed to the origin frame.

◆ deltaRelative()

Pose Geometry2d::Twist::deltaRelative ( double  t) const
inline

Find the resulting pose (delta) of an object starting at the origin and continuing with constant (local) velocity for the specified time (in seconds).

Throughout the movement, linear velocity relative to the pose's frame of reference is constant (but linear velocity relative to the origin might change as the pose rotates)

Called deltaRelative because it operates with velocities that remain constant relative to the pose.

In mathematical terms, this is the exponential mapping that takes the Lie algebra se(2) (twists) to the Lie group SE(2) (poses).


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