top of page

Drawing Circles

Lesson Overview

This lesson introduces students to the exciting world of geometry and trigonometry through the practical task of drawing circles in Scratch. By exploring different methods, students will engage with fundamental mathematical concepts and computational thinking which will further enhance their understanding of geometry, trigonometry, and programming.

Learning Objectives

  • Familiarize students with the essential geometric properties of circles, including radius, diameter, and circumference.

  • Introduce students to the practical application of sine and cosine functions for determining coordinates on a circle and enhance their understanding of trigonometry in geometric contexts.

  • Enhance students' ability to translate complex mathematical concepts into executable Scratch programs, focusing on developing logical structures such as loops and conditional statements for simulating mathematical operations.

Task Description and Resources

Task 1: Basic Geometric Method

Problem Statement: Use Scratch to draw a circle based on its geometric definition (points that are of the same distance to a fixed point).

Key Concepts: Definition of circle definition, radius, rotation.

Suggested Steps:

  1. Start with a sprite positioned at what will be the circle’s center.

  2. Program the sprite to move straight to what will be the circle’s radius.

  3. Make the sprite draw a line by moving in a small increment, turning a slight angle (e.g., 1 degree), and then moving the same distance forward.

  4. Repeat this process in a loop until the sprite has completed a full 360-degree rotation around the center point.

Reference Code:

Painting 1.gif

Task 2: Polygon Approximation Method

Problem Statement: Use Scratch to graph a polygon with increasing numbers of sides and see how its shape changes.

Key Concepts: Polygon approximation to circle, limits, geometric progression.

Suggested Step:

  1. Start with a simple polygon, like a hexagon, and draw it on the screen with a defined variable n representing the number of sides.

  2. Increase the number of sides of the polygon gradually, recalculating the side lengths and angles to keep the figure as close to the center as possible.

  3. Continue this process, increasing the sides until the polygon closely approximates a circle.

Reference Code:

Painting 2.gif

Task 3: Diameter Rotation Method

Problem Statement: Draw a circle by rotating one of its diameter around a central point.

Objective: Explore various relationship between the distances of a same point to two fixed points and the tracks of points under different relationships.

Key Concepts: Diameter rotation, symmetry in a circle, continuous motion.

Suggested Steps:

  1. Fix a sprite at one point, which will be one end of the circle’s diameter.

  2. Rotate the sprite around a central point (by 1 degree each time), keeping the distance to the center as a constant (the radius).

  3. As the sprite moves, have it mark the path it travels to outline the circle.

Reference Code:

Painting 3.gif

Task 4: Sine and Cosine Method (Polar Coordinates)

Problem Statement: Use Scratch to draw a circle with trigonometric functions.

Objective: Graph using the parametric equations of a circle.

Key Concepts: Trigonometric functions, parametric equations, polar coordinates.

Suggested Steps:

  • Use a loop to iterate through angles from 0 to 360 degrees.

  • Define the variables a, b to represent the radius and angle respectively.

  • For each angle, calculate the x (cos(angle) * radius) and y (sin(angle) * radius) coordinates based on the circle's radius and the current angle.

  • Move the sprite to each calculated coordinate and mark a point.

  • Connect the dots to form a circle.

Reference Code:

Painting 4.gif


These tasks guide students through the exploration of geometric properties of circles, from basic geometry to advanced trigonometry, all within the engaging framework of Scratch programming. By completing these tasks, students not only deepen their understanding of circles but also develop crucial skills in geometrical reasoning, pattern recognition, and computational thinking, laying a solid foundation for further exploration in both mathematics and programming.


The author would like to thank Zhi Hao CUI for designing this lesson and appreciate all the anonymous teachers and students who participated in this research.

bottom of page