1er paso: dibujar un cuadrado (parte II)

Con la importación del nuevo fondo ya creamos el entorno propicio para que nuestro amigo Pier pueda demostrar lo bien que hace su trabajo (¡dibuje, Pier...!). Es hora de convocarlo al escenario.

Vistiendo al personaje

Hablando en confidencia, te cuento algo: Pier no será otra cosa que una "caracterización" que lleva a cabo nuestro amigo el gato de Scratch, al que a veces le gusta darse aires de actor a la hora de trabajar con nosotros. Pero no digamos nada y sigámosle el juego... que no hay teatro sin suspensión de la incredulidad.
Como todo buen actor apelará a todos los medios para hacer creíble su interpretación, incluso "vistiéndose" de manera acorde a su papel.
Para nosotros esto significa que deberemos importar un nuevo disfraz para nuestro objeto  

Importando un disfraz

Manos a la obra. Ya estamos viendo a Pier, y no podemos evitar pensar que tras esa impactante "sonrisa gardeliana" (Gardel: a famous argentine singer) se esconde nuestro conocido amigo... en fin.
Vamos a emplear ahora nuestro más reciente conocimiento adquirido: la importación de imágenes. Usando alguno de los métodos ya enunciados (a mí el 3ro no me funcionó) vamos a proceder a agregar la imagen de Pier —SI, esa que está aquí a la izquierda— como un nuevo disfraz para el gato de Scratch (único objeto en nuestro proyecto, y el que ya tenía dos disfraces).
Una vez conseguido esto, te aconsejo borrar los dos disfraces originales, ya que no los vamos a usar. Acto seguido, cambiemos el nombre del objeto desde Objeto1 (muy impersonal) a Pier... te debería quedar algo como lo que ves en la imagen.

CUIDADO

Recordá cambiar el estilo de rotación de Pier a sólo mirar izquierda-derecha —para que no quede cabeza abajo—, [si no sabés de que hablo, mirá aquí]
escenario
Créase o no, ya estamos en condiciones de empezar a trabajar. Nos resta probar a ver si Pier es tan bueno como dice ser... lo someteremos a un test para que demuestre sus capacidades (¿una entrevista de trabajo?, ¿un casting?, ¡cuanta crueldad...!)

Viendo dibujar a Pier

Como todo objeto de Scrach, Pier  tendrá capacidades de dibujo. Y además podemos indicarle con qué tamaño y color de lápiz hacerlo.
Indicarle es programar, es comunicarle en un lenguaje "en común" que es lo que deseamos que haga.
Si seguiste el Tutorial 1, o tenés algún conocimiento previo de Scratch, o sos un poco avispado (?) deberías entender el programa ultra-simple que preparamos para Pier, y que mostramos a continuación:
test de dibujo
  • El bloque de tipo sombrero permite que se ejecuten las instrucciones subsiguientes cada vez que presionemos la barra espaciadora.
  • Fijamos el tamaño del lápiz (grosor) a 5 —en realidad sólo haría falta hacerlo la 1ra vez, pero bueh...—
  • Fijamos el color del lápiz (yo elegí rojo) —también con la 1ra vez alcanza—
  • Bajamos el lápiz para habilitar las capacidades de dibujo de nuestro objeto —idem comentarios anteriores—.
  • mover (10) pasos: cada vez que pulsamos la barra espaciadora, Pier se moverá 10 pasos a la derecha, y por tener el lápiz abajo, irá dibujando a la par de su andar una línea roja. ¿lo probamos?

Houston, we have a problem…

Con un entusiasmo y confianza desbordantes Pier se lanzó a escena, pero al cabo de algunos cuantos golpes de barra espaciadora el resultado fue poco menos que un fiasco.
test de dibujo: resultado
No tanto — en realidad— porque la línea se dibujó... pero ¿con el lápiz?, what's up?.   "Yo hago mi parte con eso de la suspensión de la incredulidad, pero me la están haciendo difícil (otra que ver Rambo...)"
La falla no está en Pier —que ya está haciendo "pucheros" en el camerino (¡traducí pucheros, Google Translator!), sino en nosotros que no tuvimos en cuenta algo muy importante, que amerita otra —aburrida, soporífera— explicación.
NOTA: "pucheros" es un ¿argentinismo? para indicar un llanto contenido producto de una frustración. FUENTE: yo.

Un punto a meditar

Si la falla no está en Pier, es que a nosotros se nos pasó algo por alto. Es una cuestión que no vimos en el Tutorial 1 (no se nos presentó el problema), y es el momento de aclararlo ahora y para siempre (¿sentencioso yo?).
Pregunta n° 1: cuando un objeto de Scratch recibe un comando como ir a x:(100) y:(50), ¿qué es lo que se ubica en esas coordenadas? ¿Todo el objeto tiene esas coordenadas? ¿Toda la imagen tiene esas coordenadas?… no creo, porque las coordenadas identifican la posición de un punto… y una imagen plana —como las de Scratch— está compuesta por una gran cantidad de puntos.
Y si esas coordenadas son para sólo un punto de la imagen, ¿cuál de ellos es? ¿Podrá cambiarse?
NOTA: si se te ocurrió la idea "una infinita cantidad de puntos" es que estás pensando como un matemático euclideano, pero no olvides que hay una cantidad finita y discreta de pixeles en una imagen de computadora (es un ámbito discreto).
Desde aquí estoy escuchando tus quejas, oigo algo así como: "ya me preguntan bastante en la escuela como para que venga este tipo y bla bla bla...". La vida no es un sendero de rosas (I'm sorry), así que ahí va otra:
Pregunta nº 2: cuando un objeto de Scratch recibe un comando como girar (45) grados, ¿sobre qué eje o punto de rotación gira su imagen? ¿Será lo mismo que Pier gire tomando como eje la punta de su pie o lo haga con eje en su nariz? ¿Este punto de rotación será coincidente con el punto mencionado en la pregunta anterior? ¿Este punto podrá ser cambiado?. ("¿Podrás parar de preguntar...?")
 

Instrospección

Aunque te pueda parecer raro, antes de escribir sobre esta cuestión yo pensé que tenía todo claro. Pero como para explicar primero hay que entender, me planteé alguna de las preguntas anteriores y me dí cuenta que, a pesar de saber cómo solucionar el problema de Pier, la primera explicación que me venía a la mente adolecía (que palabra) de algunos errores conceptuales.
Buscando en Internet no encontré una exposición aclaratoria sobre este tema (como me pasó cuando busqué información sobre el manejo de capas, y terminé escribiendo sobre la cuestión Capas en Scratch): por tanto deberé munirme de la suficiente valentía —y vos de la suficiente paciencia— como para intentar una explicación fatto in casa

Pero eso lo verás en la página siguiente. No hace falta que lo diga, pero si te parece demasiado palabrerío y querés ir directo a la solución, avanti (vos elegís).
Última actualización: Febrero 22, 2014

No hay comentarios.:

Publicar un comentario

© Scratch CodeLab | D153ñ0 b454d0 3n l4 pl4n71ll4 SimpleRWD d3 Oloblogger