Class Pose2d
public class Pose2d extends Object

Constructor Summary
Constructors Constructor Description Pose2d()
Constructs a pose at the origin facing toward the positive X axis.Pose2d(double x, double y, Rotation2d rotation)
Convenience constructors that takes in x and y values directly instead of having to construct a Translation2d.Pose2d(Translation2d translation, Rotation2d rotation)
Constructs a pose with the specified translation and rotation. 
Method Summary
Modifier and Type Method Description boolean
equals(Object obj)
Checks equality between this Pose2d and another object.Pose2d
exp(Twist2d twist)
Obtain a new Pose2d from a (constant curvature) velocity.Rotation2d
getRotation()
Returns the rotational component of the transformation.Translation2d
getTranslation()
Returns the translation component of the transformation.double
getX()
Returns the X component of the pose's translation.double
getY()
Returns the Y component of the pose's translation.int
hashCode()
Twist2d
log(Pose2d end)
Returns a Twist2d that maps this pose to the end pose.Transform2d
minus(Pose2d other)
Returns the Transform2d that maps the one pose to another.Pose2d
plus(Transform2d other)
Transforms the pose by the given transformation and returns the new transformed pose.Pose2d
relativeTo(Pose2d other)
Returns the other pose relative to the current pose.String
toString()
Pose2d
transformBy(Transform2d other)
Transforms the pose by the given transformation and returns the new pose.

Constructor Details

Pose2d
public Pose2d()Constructs a pose at the origin facing toward the positive X axis. (Translation2d{0, 0} and Rotation{0}) 
Pose2d
Constructs a pose with the specified translation and rotation. Parameters:
translation
 The translational component of the pose.rotation
 The rotational component of the pose.

Pose2d
Convenience constructors that takes in x and y values directly instead of having to construct a Translation2d. Parameters:
x
 The x component of the translational component of the pose.y
 The y component of the translational component of the pose.rotation
 The rotational component of the pose.


Method Details

plus
Transforms the pose by the given transformation and returns the new transformed pose.The matrix multiplication is as follows [x_new] [cos, sin, 0][transform.x] [y_new] += [sin, cos, 0][transform.y] [t_new] [0, 0, 1][transform.t]
 Parameters:
other
 The transform to transform the pose by. Returns:
 The transformed pose.

minus
Returns the Transform2d that maps the one pose to another. Parameters:
other
 The initial pose of the transformation. Returns:
 The transform that maps the other pose to the current pose.

getTranslation
Returns the translation component of the transformation. Returns:
 The translational component of the pose.

getX
public double getX()Returns the X component of the pose's translation. Returns:
 The x component of the pose's translation.

getY
public double getY()Returns the Y component of the pose's translation. Returns:
 The y component of the pose's translation.

getRotation
Returns the rotational component of the transformation. Returns:
 The rotational component of the pose.

transformBy
Transforms the pose by the given transformation and returns the new pose. See + operator for the matrix multiplication performed. Parameters:
other
 The transform to transform the pose by. Returns:
 The transformed pose.

relativeTo
Returns the other pose relative to the current pose.This function can often be used for trajectory tracking or pose stabilization algorithms to get the error between the reference and the current pose.
 Parameters:
other
 The pose that is the origin of the new coordinate frame that the current pose will be converted into. Returns:
 The current pose relative to the new origin pose.

exp
Obtain a new Pose2d from a (constant curvature) velocity.See Controls Engineering in the FIRST Robotics Competition section 10.2 "Pose exponential" for a derivation.
The twist is a change in pose in the robot's coordinate frame since the previous pose update. When the user runs exp() on the previous known fieldrelative pose with the argument being the twist, the user will receive the new fieldrelative pose.
"Exp" represents the pose exponential, which is solving a differential equation moving the pose forward in time.
 Parameters:
twist
 The change in pose in the robot's coordinate frame since the previous pose update. For example, if a nonholonomic robot moves forward 0.01 meters and changes angle by 0.5 degrees since the previous pose update, the twist would be Twist2d{0.01, 0.0, toRadians(0.5)} Returns:
 The new pose of the robot.

log
Returns a Twist2d that maps this pose to the end pose. If c is the output of a.Log(b), then a.Exp(c) would yield b. Parameters:
end
 The end pose for the transformation. Returns:
 The twist that maps this to end.

toString

equals
Checks equality between this Pose2d and another object. 
hashCode
public int hashCode()
