AlignToPointDriveTask

constructor(@Nullable passThroughPoseX: Supplier<Float>, @Nullable passThroughPoseY: Supplier<Float>, drive: RoadRunnerDrive, rotationController: PIDF, point: Supplier<Vector2d>)

Construct a new pass-through AlignToPointTask.

Parameters

passThroughPoseX

the pose X power to pass through to the drive

passThroughPoseY

the pose Y power to pass through to the drive

drive

RoadRunner drive instance, must be a BunyipsSubsystem

rotationController

rotation PID controller to use

point

the point to align to in field space, will use the drive's pose estimate for current position


constructor(passThroughTranslation: Gamepad, drive: RoadRunnerDrive, rotationController: PIDF, point: Supplier<Vector2d>)

Construct a new controller-based pass-through AlignToPointTask.

Parameters

passThroughTranslation

the controller where the left stick will be used to pass translation pose

rotationController

rotation PID controller to use

drive

RoadRunner drive instance

point

the point to align to in field space, will use the drive's pose estimate for current position


constructor(rotationController: PIDF, point: Supplier<Vector2d>)

Construct a turn-only AlignToPointTask.

This constructor will not permit active translation while the task is running, but is not recommended since this is a TeleOp task with no end condition. Alternative solutions exist for aligning to a point in Autonomous (e.g. by method of trajectory, this task is designed for dynamic conditions to continuous alignment).

Parameters

rotationController

rotation PID controller to use

point

the point to align to in field space, will use the drive's pose estimate for current position