Help for Etoys.

Recientemente, en una de las listas de correo educativas de las que participo apareció una solicitud de ayuda. Especificamente se solicitaba un archivo de Etoys usado en una presentación para TED, ese sitio donde grandes gurus presentan una clase magistral . La presentación en cuestión era la siguiente:

(Este video es increible, y ademas se puede seleccionar subtitulos en español).
Desde mi punto de vista, existian personas muy capaces que perfectamente podrían haber respondido la consulta, sobre todo por la urgencia para el interesado. Pero las respuestas derivaron en algo como: "Es algo que hasta un niño podría hacer".
Dos dias despues, el tema ya había mutado radicalmente y estaba en como hacer la animación solicitada en gamemaker o en Turtle art. Definitivamente estaba descartado conseguir el archivo usado en la presentación.
Asi fué que me puse manos a la obra para responder a la consulta. A modo de recordatorio (y por si a alguien mas le sirve) registro el proceso (aún en proceso)de re-crear la citada animación.

Descripción del proceso (How to)


- Reproducir con los elementos disponibles en Etoys una estructura geometrica compuesta por un triangulo rectangulo, sus respectivos cuadrados apoyados en cada uno de sus lados y los triangulos necesarios para completar un cuadrado alrededor. (Trivial, no se debería requerir habilidades especiales para realizarlo.)
Para costruir los triangulos ir a : Provisiones>>Basico>> Poligono
Obtener los halos, ir al halo blanco y seleccionar "mostrar manipuladores"
y ya que estamos aqui, es buena idea seleccionar "manipulador de direccion" como veremos mas adelante.














- Replicar esta estructura a la derecha de la figura anterior excluyendo los cuadrados de los catetos sobre un cuadrado que nos sirva de fondo. (Identico al proceso anterior, el único tip podría ser el dejar pegado al fondo (bloqueado) el cuadrado mayor, para que no se venga al primer plano si lo pinchamos o arrastramos accidentalmente.














- Ahora viene lo bueno. Lo que necesitamos según el ejemplo del video es que los triangulos superiores de la figura de la derecha caigan hasta tocar las hipotunesas de los triangulos inferiores.
Esto tiene un par de tips. Normalmente las figuras o dibulos creados en Etoys traen el "Rotation center" al centro. Para lograr que la figura gire apoyada en uno de sus vertices hay que desplazar este centro de gravedad hasta ese lugar. Eso se logra como muestra la imagen, manteniendo presionada la tecla shift y arrastrando el centro de gravedad.

Dicho esto, podemos lograr algo asi:

video

Tenemos 2 guiones. El primero es el encargado de ubicar cada cosa en su lugar. En este tipo de animaciones hay mucho de ensayo y error, por lo que este guión cumple la función de recomponer la posición de las figuras si algo no resulta como se esperaba. El segundo guión se encarga de manejar la caida del triangulo. La condición que debe cumplirse para que este script se detenga es que la dirección angular sea = 270. Hay muchas maneras de condicionar la salida del bucle, esta fué la que me parecio mas precisa.

Ahora crearemos un tercer guión que haga caer el otro triangulo pero en sentido antihorario.


Para disparar el guión final que haga volar los cuadrados de los catetos hasta su ubicación final, estoy pensando en 2 soluciones.
La mas burda sería poner un retardador (delay) que "hiciera nada" hasta que cayeran los triangulos.
La otra, mas limpia que la anterior sería poner unas banderas (flag) dentro de la condición de los triangulos para que una vez cumplida la condición cambién de estado y sea ese par de banderas arriba la condición para que comienze el último script. Todavia no lo decido.

Finalmente, esconder todos los guiones y hacer un boton invisible para lanzar la animación.

Comentarios

Gustavo Ibarra dijo…
Pato, aun te debo la mirada a estos script's.

Gracias por tu buena predisposición.


Este es el link al thread:
http://lists.sugarlabs.org/archive/iaep/2010-February/thread.html#10060

En lo personal, sentí el picazon de esas "cachetadas virtuales", pero fueron motivadoras.es una buena respuesta de quien te hace pensar y no te da la solución servida.

algo así como esos dolores dulces.

Ni bien me libere de todas esta semana super movida, me queda este tema pendiente.

Abrazos y gracias nuevamente por el feedback...

Ni bien tenga una solución te la paso para publicarla...

Abrazos Argentinos de parte del equipo de SugarLabs Argentina
Patricio dijo…
Aqui dejo copia de la respuesta que amablemente envió Alan Kay acerca de esta entrada:

"Yes, this is what I did.

I just used the ability to turn and move objects (and to move their centers of rotation -- as you saw). If you look under "scripting" you will see script tiles for starting and stopping looping scripts ....

I used the B square as a button for starting each motion ....

Cheers,

Alan"

Entradas más populares de este blog

Pizarra digital Mimio en Ubuntu 14.04

REnpy. Probando software para creación de historias.