lejos.robotics.proposal
Interface PoseController

All Known Implementing Classes:
ArcPoseController

public interface PoseController

The PoseController guides a Pilot to a destination. It can not plan a route, but will try to navigate to a set of coordinates and possibly avoid obstacles along the way. The PoseController constructor very likely accepts a Pilot and PoseProvider.

Author:
NXJ Team

Method Summary
 ArcPilot getPilot()
          Note: There is no corresponding setPilot() method because the type of robot vehicle could not change after the program starts, unless it was physically a transformer robot.
 PoseProvider getPoseProvider()
          Get a reference to the PoseProvider being used as a localizer.
 Pose goTo(float x, float y)
          Travels to the coordinates specified.
 Pose goTo(Point destination)
          Travels to the coordinates in the destination Point.
 void setPoseProvider(PoseProvider replacement)
          Sets a new PoseProvider for the PoseController robot to use.
 

Method Detail

goTo

Pose goTo(Point destination)
Travels to the coordinates in the destination Point. If it can't reach the destination, it tries to get as close as possible before giving up and reporting the actual coordinates (Pose) achieved.

Parameters:
destination -
Returns:
The new pose it achieved.

goTo

Pose goTo(float x,
          float y)
Travels to the coordinates specified. If it can't reach the destination, it tries to get as close as possible before giving up and reporting the actual coordinates (Pose) achieved.

Parameters:
x - the x coordinate of the target point
y - the y co-ordinate of the target point
Returns:
The new pose it achieved.

getPilot

ArcPilot getPilot()
Note: There is no corresponding setPilot() method because the type of robot vehicle could not change after the program starts, unless it was physically a transformer robot.

Returns:
the pilot

getPoseProvider

PoseProvider getPoseProvider()
Get a reference to the PoseProvider being used as a localizer.

Returns:
the pose provider

setPoseProvider

void setPoseProvider(PoseProvider replacement)
Sets a new PoseProvider for the PoseController robot to use. Example: If the robot moves from one environment (indoors) to another environment (outdoors) it might want to change to another method of localization if a change in environment is detected.

Parameters:
replacement - the new PoseProvider