Registering new shapes
The turtle module has register_shape() function for registering custom shapes.
Syntax : turtle.register_shape(name, shape)
Parameters :
- name : a string- the name of the shape to be registered.
- shape : a tuple of tuples containing the coordinates for the custom shape.
The n-tuple argument for the shape parameter, denotes the relative position of each corner of an n-sided polygon. Let us try to create a simple diamond shape to understand this.
Consider this diamond, having length of diagonal = 20, in a Cartesian plane :
To create this shape, we need to pass these coordinates in clockwise order.
Python3
import turtle # turtle object diamond_turtle = turtle.Turtle() # the coordinates of each corner shape = (( 0 , 0 ), ( 10 , 10 ), ( 20 , 0 ), ( 10 , - 10 )) # registering the new shape turtle.register_shape( 'diamond' , shape) # changing the shape to 'diamond' diamond_turtle.shape( 'diamond' ) # Keep the turtle window open turtle.done() |
Output:
How to Create custom Turtle shapes in Python?
In Turtle, by default, we have an arrowhead-shaped cursor for drawing on the canvas. This can be changed to some other predefined shape or we can also create a custom shape and register it under a name. Not just that, we can even use gif format images to replace our cursor.
Contact Us