Draw Cube and Cuboid in Python using Turtle

Turtle is an inbuilt module in Python. It provides drawing using a screen (cardboard) and turtle (pen). To draw something on the screen, we need to move the turtle (pen). To move the turtle, there are some functions i.e forward(), backward(), etc.

Drawing Cube

Following steps are used:

  • First draw the front square
  • Move to back square through one bottom left side
  • Draw the back square
  • Draw the remaining side as shown in code.

Below is the implementation.

Python3




#import the turtle modules 
import turtle 
  
# Forming the window screen
tut = turtle.Screen()
  
# background color green
tut.bgcolor("green")
  
# window title Turtle
tut.title("Turtle")
my_pen = turtle.Turtle()
  
# object color
my_pen.color("orange")
tut = turtle.Screen()           
  
# forming front square face
for i in range(4):
    my_pen.forward(100)
    my_pen.left(90)
  
# bottom left side
my_pen.goto(50,50)
  
# forming back square face
for i in range(4):
    my_pen.forward(100)
    my_pen.left(90)
  
# bottom right side
my_pen.goto(150,50)
my_pen.goto(100,0)
  
# top right side
my_pen.goto(100,100)
my_pen.goto(150,150)
  
# top left side
my_pen.goto(50,150)
my_pen.goto(0,100)


Output :

Drawing Cuboid

Following steps are used:

  • First draw the front rectangle
  • Move to back rectangle through one bottom left side
  • Draw the back rectangle
  • Draw the remaining side as shown in code.

Below is the implementation.

Python3




#import the turtle modules 
import turtle 
  
# Forming the window screen
tut = turtle.Screen()
  
# background color green
tut.bgcolor("green")
  
# window title Turtle
tut.title("Turtle")
my_pen = turtle.Turtle()
  
# object color
my_pen.color("orange")
tut=turtle.Screen()           
  
# forming front rectangle face
for i in range(2):
    my_pen.forward(100)
    my_pen.left(90)
    my_pen.forward(150)
    my_pen.left(90)
  
# bottom left side
my_pen.goto(50,50)
  
# forming back rectangle face
for i in range(2):
    my_pen.forward(100)
    my_pen.left(90)
    my_pen.forward(150)
    my_pen.left(90)
  
# bottom right side
my_pen.goto(150,50)
my_pen.goto(100,0)
  
# top right side
my_pen.goto(100,150)
my_pen.goto(150,200)
  
# top left side
my_pen.goto(50,200)
my_pen.goto(0,150)


Output :