Odometry Classes

Point

The Point class is a simple abstraction of an indexed x,y cartesian percentage point.

Perspective

The Perspective class is wrapper class that inherits from SimpleNamespace. Perspectives are created for the Arena, Camera and Plan aspects of the pose.

Pose

Pose objects are created with arena data, and the Pose constructor generates the other perspectives. In addition to its basic position and heading, Pose maintains a number of other salient points, which are needed to faithfully recreate the target shape. Initially, the constructor calculates the coordinates of these points for a North-heading target, then rotates them all to the desired heading. The camera perspective takes these points and sends them through a mapper, to get their equivalents in camera pixels. Likewise the plan perspective takes the arena points and scales and flips them to get their equivalent in plan pixels.

Movement

The movement class represents an atomic action by the robot, in terms of left and right speed and duration.