Meta: La tortuga crea polígonos irregulares con ángulos lados y colores internos elegidos al azar.
Vocabulario: random, fill
to irregular-polygon
setc whatcolor
setpensize howthick
t2, pu setpos t1's "pos
t1, pd lt random 60
repeat (#sides - 1) [
t1,
fd 30 + random 50
rt (360 / #sides) - (random 20) + (random 20)
]
towards "t2
fd distance "t2
pu lt 40 bk 30 setc random 140 fill fd 30 rt 40 setc whatcolor
end
to reset
ask [t1 t2] [home seth 0]
cg
end
Notas El concepto básico aquí es que la tortuga t2 sirva como punto base mientras t1 dibuja todo, excepto el último lado de un polígono de ángulos y longitud de lados escogidos al azar; luego, t1 se junta nuevamente a t2.
- Pon el máximo del control #sides en 6, para que este proyecto pueda crear triángulos, cuadriláteros, pentágonos y hexágonos, todos ellos irregulares.
- En el procedimiento irregular-polygon, fd 30 + random 50 significa: "Muévete hacia adelante 30 más un número al azar entre 0 y menor que 50".
- El comando para girar la tortuga a la derecha es un poquito complicado. Para un polígono regular, la tortuga gira rt 360 / #sides. Para este proyecto, la tortuga hace dos ajustes a ese número:
rt (360 / #sides) - (random 20) + (random 20)
La tortuga resta un número menor que 20 y luego suma otro número menor que 20. Eso significa que, algunas veces, la tortuga girará un poquito más que 360 / #sides y, a veces, girará un poquito menos que 360 / #sides.
- Este proyecto usa dos métodos para que una tortuga se mueva a la posición de la otra. Antes de dibujar el polígono, puedes arrastrar t1 a cualquier parte de la página y t2 la seguirá con este comando t2, setpos t1's "pos. Cuando t1 completa el polígono, en lugar de lo anterior usamos dos comandos:
towards "t2
fd distance "t2
De esta forma, t1 apunta en la dirección apropiada antes de dibujar el último lado del polígono.
- Luego, la tortuga pone su lápiz arriba, gira a la izquierda, se mueve hacia adentro del polígono, cambia su color a uno elegido al azar (setc random 140), rellena el área con este color, y regresa a la posición, rumbo y color que tenía cuando había terminado de dibujar el contorno del polígono.
¿Qué pasa si?
Intenta incrementar el máximo del control #sides a 8 o 10 o más. (¿Sigue el proyecto dibujando polígonos? ¿Necesitas ajustar algunos números en el procedimiento?)
Desafío
Intenta diferentes números después de random para modificar el rango de los posibles ángulos y longitudes de los lados.
|