Diseños fáciles - Turtle Graphics Python

Mira la belleza de las fotos. Son cosas como estas las que me metieron en la tortuga. Para ser honesto, era un fanático de MS Logo a la edad de 7 años, así que cuando leí algo similar llamado 'Turtle', estaba naturalmente escéptico. Ya no.

En general, los programadores de élite descartan a las tortugas como "primitivas", pero les ruego que difieran.

En este Instructable, voy a escribir una guía muy simple para tortuga, en Python.

Otro gran uso para la tortuga es enseñar a los niños la programación básica. Los jóvenes están fascinados por los diseños visualmente atractivos en lugar del texto.

Vamos a empezar.

EDITAR: por alguna razón, el código tiene html, como

,

, cuando lo subo. Si ese es el caso, hay un archivo de bloc de notas con ambos códigos. Descargalo. Espero que el problema esté solucionado :(

Paso 1: Python

Para este tutorial usaré Python 2.7. 1.) Python se puede descargar de forma gratuita aquí. (Usé esta versión en particular, pero depende de ti lo que TÚ quieras). Incluso si no conoces Python, puedes quedarte, pero trata de aprender el idioma. Es, en mi opinión, un lenguaje muy simple pero poderoso.

Turtle es un módulo integrado y se puede importar, por lo que no es necesario importarlo.

En pocas palabras, un módulo es una colección de funciones de programación fácilmente invocable, es decir, comandos para que la computadora siga un cierto conjunto de pasos para obtener resultados.

Paso 2: El primer diseño: código y explicación

# Python no ve lo que viene después del #. Estos son comentarios. :)

from turtle import * # importa el módulo turtle,
# * representa a todos, lo que facilita las cosas

speed (0) # establece la velocidad de dibujo en 0, que es la más rápida
pencolor ('blanco') # establece el color del bolígrafo / líneas en blanco
bgcolor ('negro') # establece el color del fondo / lienzo en negro

x = 0 # crea una variable x con valor 0
up () # levanta el lápiz, por lo que no se dibujan líneas

#note fd () significa avanzar, bk () significa retroceder
# rt () o lt () significa inclinación hacia la derecha en cierto ángulo

rt (45)
fd (90)
rt (135)

down () # establece el lápiz, para que la tortuga pueda dibujar
while x <120: # mientras el valor de x es menor que 120,
#hazlo continuamente:
fd (200)
rt (61)
fd (200)
rt (61)
fd (200)
rt (61)
fd (200)
rt (61)
fd (200)
rt (61)
fd (200)
rt (61)

rt (11.1111)
x = x + 1 # agrega 1 al valor de x,
# para que esté más cerca de 120 después de cada ciclo

exitonclick () # Cuando haces clic, la tortuga sale.

#¡Eso es todo! ¡Intenta personalizar el script! 8)

El código se explica por sí mismo: speed (), pencolor (), fd (), rt (), lt (), etc. son todas funciones. Básicamente son instrucciones que Python debe seguir. El resultado será belleza.

En lugar de mantenerlo así, intente usar una lógica simple para crear diseños más hermosos.

Después de guardar presionando Ctrl + S, ejecutar presionando F5. El resultado en forma de video.

Archivos adjuntos

  • TurtleCode1.txt Descargar

Paso 3: Segundo diseño: espiral genial

¿Qué necesito decir? La belleza del código es que genera una combinación única de colores cada vez que se ejecuta.

El código nuevamente está bien comentado y se explica por sí mismo. También hay un video.

de importación de tortuga *

from random import randint # from the random module import the function randint
# como la tortuga es un módulo, sigue leyendo para usar

velocidad (0)

bgcolor ('negro')

x = 1

mientras x <400:

r = randint (0, 255) #hace variables r, g, b cuyo valor es un entero,
g = randint (0, 255) # que está entre 0 y 255. Es aleatorio y
b = randint (0, 255) # cambia cada vez que se ejecuta el ciclo

colormode (255) # esto es algo que es irrelevante en este momento
# verifique el enlace pythondocs al final para obtener más información


pencolor (r, g, b) # cambia el color del lápiz a las coordenadas rgb
# obtenido por las variables r, g, b cambiando cada vez

fd (50 + x)
rt (90.911)


x = x + 1

exitonclick ()

# de nuevo, intente personalizar :)

Archivos adjuntos

  • TurtleCode2.txt Descargar

Paso 4: Conclusión

Tan orgulloso como pueda estar en este punto, apenas ha arañado la superficie. La gente hace cosas tan complejas como los árboles fractales con pitón.

Si lo tuyo es la tortuga, échale un vistazo y aprende más en PythonDocs, donde está bien documentado. Hay muchos más aspectos, como rellenos y círculos. Experimenta y diviértete.

Espero haber inspirado a alguien y continúen aprendiendo Python. Es, en mi opinión, el lenguaje de programación más simple pero más poderoso.

Para impresionarlo más, dejo el código para un triángulo arcoiris. Esta es una versión personalizada de una pregunta de StackOverflow:

tortuga de importación
turtle.setup (ancho = 600, altura = 500)
turtle.reset ()
turtle.hideturtle ()
velocidad de tortuga (0)

turtle.bgcolor ('negro')

c = 0
x = 0

colores = [
# colores rojizos
(1.00, 0.00, 0.00), (1.00, 0.03, 0.00), (1.00, 0.05, 0.00), (1.00, 0.07, 0.00), (1.00, 0.10, 0.00), (1.00, 0.12, 0.00), (1.00, 0.15, 0.00), (1.00, 0.17, 0.00), (1.00, 0.20, 0.00), (1.00, 0.23, 0.00), (1.00, 0.25, 0.00), (1.00, 0.28, 0.00), (1.00, 0.30, 0.00), (1.00, 0.33, 0.00), (1.00, 0.35, 0.00), (1.00, 0.38, 0.00), (1.00, 0.40, 0.00), (1.00, 0.42, 0.00), (1.00, 0.45, 0.00 ), (1.00, 0.47, 0.00),
# colores anaranjados
(1.00, 0.50, 0.00), (1.00, 0.53, 0.00), (1.00, 0.55, 0.00), (1.00, 0.57, 0.00), (1.00, 0.60, 0.00), (1.00, 0.62, 0.00), (1.00, 0.65, 0.00), (1.00, 0.68, 0.00), (1.00, 0.70, 0.00), (1.00, 0.72, 0.00), (1.00, 0.75, 0.00), (1.00, 0.78, 0.00), (1.00, 0.80, 0.00), (1.00, 0.82, 0.00), (1.00, 0.85, 0.00), (1.00, 0.88, 0.00), (1.00, 0.90, 0.00), (1.00, 0.93, 0.00), (1.00, 0.95, 0.00 ), (1.00, 0.97, 0.00),
# colores amarillos
(1.00, 1.00, 0.00), (0.95, 1.00, 0.00), (0.90, 1.00, 0.00), (0.85, 1.00, 0.00), (0.80, 1.00, 0.00), (0.75, 1.00, 0.00), (0.70, 1.00, 0.00), (0.65, 1.00, 0.00), (0.60, 1.00, 0.00), (0.55, 1.00, 0.00), (0.50, 1.00, 0.00), (0.45, 1.00, 0.00), (0.40, 1.00, 0.00), (0.35, 1.00, 0.00), (0.30, 1.00, 0.00), (0.25, 1.00, 0.00), (0.20, 1.00, 0.00), (0.15, 1.00, 0.00), (0.10, 1.00, 0.00 ), (0.05, 1.00, 0.00),
# colores verdosos
(0.00, 1.00, 0.00), (0.00, 0.95, 0.05), (0.00, 0.90, 0.10), (0.00, 0.85, 0.15), (0.00, 0.80, 0.20), (0.00, 0.75, 0.25), (0.00, 0.70, 0.30), (0.00, 0.65, 0.35), (0.00, 0.60, 0.40), (0.00, 0.55, 0.45), (0.00, 0.50, 0.50), (0.00, 0.45, 0.55), (0.00, 0.40, 0.60), (0.00, 0.35, 0.65), (0.00, 0.30, 0.70), (0.00, 0.25, 0.75), (0.00, 0.20, 0.80), (0.00, 0.15, 0.85), (0.00, 0.10, 0.90 ), (0.00, 0.05, 0.95),
# colores azulados
(0.00, 0.00, 1.00), (0.05, 0.00, 1.00), (0.10, 0.00, 1.00), (0.15, 0.00, 1.00), (0.20, 0.00, 1.00), (0.25, 0.00, 1.00), (0.30, 0.00, 1.00), (0.35, 0.00, 1.00), (0.40, 0.00, 1.00), (0.45, 0.00, 1.00), (0.50, 0.00, 1.00), (0.55, 0.00, 1.00), (0.60, 0.00, 1.00), (0.65, 0.00, 1.00), (0.70, 0.00, 1.00), (0.75, 0.00, 1.00), (0.80, 0.00, 1.00), (0.85, 0.00, 1.00), (0.90, 0.00, 1.00 ), (0.95, 0.00, 1.00)
]

mientras x <1000:
idx = int (c)
color = colores [idx]
turtle.color (color)
turtle.forward (x)
turtle.right (98)
x = x + 1
c = c + 0.1

turtle.exitonclick ()

Como tarea, intenta hacer un Triángulo de Sierpinski. Se necesita mucho pensamiento.

Además, ¡vote por este instructable si le gustó!

Artículos Relacionados