ROBOT MOVEMENT TRACKER Base assignment --------------- When the program is started, it opens two windows: a graphics window (the "navigation window") and an image window (the "camera window"). An icon representing the robot appears in the center of the nagivation window. The icon can be any simple geometic shape that clearly has a "front." The camera window displays a photo taken by the robot at startup. The user is then repeatedly prompted to enter one of five commands: f - move the robot forward by one unit b - move the robot backward by one unit r - turn the robot to the right l - turn the robot to the left q - quit Commands may be entered in either uppercase or lowercase. After the robot has completed its move, the navigation window is updated to reflect the robot's new position and orientation, and the camera window displays a new picture taken by the robot's camera. Extensions to the base assignment --------------------------------- (1) Display the camera image at the bottom of the navigation window instead of a separate window. (2) Make the robot icon look like an actual Scribbler (as seen from above). This could be done by calls of graphics functions or by importing an image created outside the program. In the latter case, one possibility would be to use the Scribbler's own camera to take a picture of another Scribbler. (3) When the robot icon reaches the edge of the navigation window, have it reset to the center of the window. (4) Have the robot operate autonomously instead of being controlled by the user. When it detects an obstacle, the robot will back up and turn left or right. (5) Have the program speak the commands as they're entered by the user. For example, when the user enters the 'f' command, the program would say "moving forward."