The Logo programming language measures the steps while moving the turtle through a fundamental grid system. Its graphical environment is designed as a Cartesian coordinate system, which can be visualized as a grid of columns and rows. It is through these grids turtles measure its steps, providing a precise and consistent method for movement.
Understanding Logo's Underlying Grid System
The Logo turtle operates on a virtual drawing canvas that is inherently a two-dimensional grid. This grid is composed of discrete units, which often correspond to pixels on the display screen. When a movement command is issued, the turtle traverses a specified number of these units, each representing a "step."
- Coordinate Plane: The Logo screen functions as an X-Y coordinate plane. The center of the screen is typically designated as the origin (0,0), with the X-axis extending horizontally and the Y-axis vertically.
- Unit of Measurement: Each "step" in Logo represents one unit of distance on this coordinate plane. These units are abstract but provide a standardized measure, ensuring consistent movement and accurate drawing.
- Position Tracking: As the turtle executes movement commands, its exact X and Y coordinates on this grid are continuously updated, reflecting its current position.
How Movement Commands Translate to Grid Steps
Logo commands that control the turtle's movement directly correspond to changes in its position on this invisible grid.
FORWARD <number>
: This command moves the turtle<number>
of steps in its current direction. For example,FORWARD 75
will advance the turtle 75 units along its current heading, altering its X and/or Y coordinates accordingly.BACK <number>
: This command moves the turtle<number>
of steps backward, precisely opposite to its current orientation.SETX <x-coordinate>
: Moves the turtle horizontally to the specified X-coordinate while maintaining its current Y-coordinate. The number of steps moved is the absolute difference between the initial and final X-coordinates.SETY <y-coordinate>
: Moves the turtle vertically to the specified Y-coordinate while keeping its X-coordinate unchanged. The step count is the absolute difference between the initial and final Y-coordinates.SETXY <x-coordinate> <y-coordinate>
orGOTO <x-coordinate> <y-coordinate>
: These commands move the turtle directly to a specific (X, Y) coordinate pair. While the total path might be a diagonal line, the movement is fundamentally calculated and measured in relation to the underlying grid units.
Practical Example: Turtle Movement Measurement
Consider a turtle starting at the screen's center (0,0) and initially facing upwards (a heading of 0 degrees).
Command | Initial Position | Final Position | Steps Measured (for linear movement) |
---|---|---|---|
FORWARD 100 |
(0,0) | (0,100) | 100 units |
RIGHT 90 |
(0,100) | (0,100) | 0 (rotation only) |
FORWARD 50 |
(0,100) | (50,100) | 50 units |
BACK 20 |
(50,100) | (30,100) | 20 units |
SETX -30 |
(30,100) | (-30,100) | 60 units (from 30 to -30) |
This grid-based measurement system ensures that all turtle movements are quantifiable, consistent, and enable the precise creation of graphics and shapes within the Logo environment.