Meta: Crea un polígono que empiece en el punto central.
Vocabulario: + (addition sign), setpos, pos, if, touching?, seth (setheading)
to polygon
t1, pu
t2, pu
setc whatcolor
setpensize howthick
repeat 1 + #sides [
t1, fd howbig
t2,
setpos t1's "pos
if touching? "t2 "t1 [pd]
t1, bk howbig rt 360 / #sides
]
end
to reset
everyone [home]
cg
end
Notas En este proyecto, el control howbig fija la distancia del punto central a cada vértice (esquina) del polígono; no fija la distancia de cada lado como ocurría en Polígonos 2, 3 y 4. Cómo en el proyecto 4, la tortuga t2 sigue a la tortuga t1, pero esta vez t2 dibuja el polígono.
- Haz que ambas tortugas tengan una figura pequeña, como un punto.
La tortuga t1 mantiene su lápiz abajo durante todo el proyecto.
If touching? "t2 "t1 [pd] significa: el lápiz de t2 está arriba hasta que se mueva hasta tocar a t1 por primera vez; luego baja su lápiz para dibujar.
setpos t1's "pos significa: t2 pondrá su posición en la posición de t1, las mismas coordenadas x e y. (Nota: es también posible mover t2 a la posición de t1 usando towards y distance como en Polígonos 4. Este proyecto demuestra un método alternativo).
- El comando repeat repite 1 + #sides veces para permitir que t2 complete el polígono. La primera repetición pone a t1 y t2 en el vértice más alto del polígono. Luego las tortugas necesitan moverse a cada vértice del polígono y regresar nuevamente al vértice más alto. Cuando varios comandos son incluidos dentro de corchetes, a veces los mismos corchetes son puestos en líneas separadas.
¿Qué pasa si?
¿Qué diseño trazará t1 si pones su lápiz abajo (pd) al inicio del procedimiento polygon?
Desafío
¿Puedes corregir el procedimiento polygon para que use towards y distance para mover t2 a la posición de t1? (Revisa Polígonos 4).
|