Dibujar con Python y la libreria Turtle
Vamos a dibujar con Python y la librería Turtle un cuadrado utilizando el código de varias formas. La librería Turtle está basado en el lenguaje LOGO, el cual es utilizado en la introducción a la programación para los niños. Este módulo nos permite dibujar con Python cualquier polígono de forma muy interactiva y didáctica.
En primer lugar utilizaremos un código más sencillo para ir avanzando en el nivel de complejidad del código.
Dibujar con Python un Cuadrado
Nuestros primeros pasos serán la importación del módulo turtle, con la palabra reservado ‘import‘. Una vez hayamos importado el módulo turtle, tendremos acceso a las funciones y objetos que este contenga.
Seguidamente accedemos al constructor turtle.Turtle() el cual lo asignamos a una variable llamada t.
Py
#importamos la libreria turtle
import turtle
#creamos el objeto turtle
t = turtle.Turtle()
Una vez ejecutamos el código anterior nos aparece en pantalla una punta de flecha como se ve en la imagen inferior, que no es sino el objeto t en su estado inicial.
El primer paso para dibujar con Python el cuadrado es desplazar el objeto t. En este ejemplo lo desplazaremos 150 pixeles a la derecha. Posteriormente giramos 90 grados para orientar el objeto en otra dirección.
Py
#desplazar a la derecha 150 pixeles
t.forward(150)
#giramos la punta a la izquierda 90 grados
t.left(90)
Después de ejecutar el código nos muestra lo siguiente
Por lo que si repetimos los comandos anteriores otras tres veces, nos dará como resultado un cuadrado.
Py
#desplazar a la derecha 150 pixeles
t.forward(150)
#giramos la punta a la izquierda 90 grados
t.left(90)
#desplazar a la derecha 150 pixeles
t.forward(150)
#giramos la punta a la izquierda 90 grados
t.left(90)
#desplazar a la derecha 150 pixeles
t.forward(150)
#giramos la punta a la izquierda 90 grados
t.left(90)
Creación de un cuadrado con un loop for
Anteriormente pudimos dibujar con Python el cuadrado, simplemente con una repetición de comandos. El inconveniente de este método es que resulta un poco tedioso utilizar más código del necesario.
Mediante el uso de un loop » for «, con Python podemos conseguir el mismo resultado pero sin tanto código.
Previamente limpiaremos de la pantalla el cuadrado anterior y también devolver la posición inicial a t. Para eso, utilizaremos t.clear()
Py
#limpiamos la pantalla y reseteamos t
t.clear()
#acción de mover 150 pixeles y girar 90 grados
for i in range(4):
t.forward(150)
t.left(90)
Este código nos devolverá la figura del cuadrado completo
Creación de un cuadrado con una función
También podemos crear un cuadrado con código más completo y el uso de una función. Nuevamente, utilizamos la función clear() para limpiar la pantalla.
Py
#limpiamos la pantalla y reseteamos t
t.clear()
#acción de mover 150 pixeles y girar 90 grados
function cuadrado(t,d,reseteo):
#definimos la función resetear
if reseteo == True:
resetear()
#dibujar el cuadrado
for i in range(4):
t.forward(d)
t.left(90)
function resetear():
turtle.resetscreen()
#llamamos a la función cuadrado
cuadrado(t,150,True)
Este código también nos devolverá la figura del cuadrado completo.
La función cuadrado recibe 3 parámetros: t, d y reseteo.
La t se refiere al objeto turtle del que hemos hablado anteriormente.
La d es la distancia en pixeles de cada lado del cuadrado que queremos dibujar. En este caso hemos llamado a la función con un valor de 150 pero podría ser cualquier otro.
Y por último reseteo nos indica si queremos resetear la pantalla antes de dibujar un nuevo cuadrado. Si en lugar de True escribimos False, la función reset() no se ejecuta por lo que dibujará una nueva figura sin que necesariamente el canvas esté vacío o no. Abajo se muestra un ejemplo de False como parámetro.
Dibujar con Python un cuadrado con la librería Turtle es un ejercicio que se suele plantear a los estudiantes del lenguaje Python cuando empiezan a programar en este lenguaje.
Si queréis seguir aprendiendo a programar en Python, podéis encontrar más recursos en este enlace.
Creatuwebpymes, es una empresa de Diseño y programación de páginas web en Canarias que ❤️ la programación.