Você está na página 1de 6

PROYECTO DE MATEMÁTICAS 3ºESO – CURSO 2015-2016

PROPORCIONALIDAD: FIGURAS 3D CON SCRATCH

1. Características generales del trabajo


- Trabajo grupal, con un máximo de tres personas por grupo.
- Fechas límites: Jueves 4 de Marzo de 2015
- Forma de entregar el trabajo: un único archivo comprimido que se enviará al profesor
por el email del aula virtual.
- Este archivo se nombrará con los nombres y primer apellido de cada miembro del
grupo, en orden alfabético. Ejemplo: si en mi grupo participan Antonio Díaz, Felipe
Carmona y Vanesa Carrión, el archivo se nombrará:
Trabajo_SCRATCH_Felipe_Carmona_Vanesa_Carrion_Antonio_Díaz.zip

- Contenidos del archivo comprimido:


- archivo con el programa scratch realizado.
- una presentación en Open Officce – Impress (formato .odp), contando como el
grupo ha conseguido responder a todas las cuestiones del proyecto.

- Contenidos de la presentación:
La presentación tendrá una portada, un diseño visual cuidado y agradable, y un tamaño y
estilo de letra adecuado para que todos los compañeros de la clase puedan leerla desde sus
asientos.
Se cuidará que la presentación sea atractiva y de una duración no superior a 5 minutos, para
que al presentarla no resulte aburrida a tu audiencia.
- Portada: título de la presentación, integrantes del grupo, fecha y lugar de realización
del trabajo.
- Sobre el grupo:
- Trabajo realizado por cada uno de los integrantes del grupo en el proyecto.
- Número aproximado de horas dedicadas por cada miembro del grupo.
- Número de veces que os habéis reunido y donde habéis trabajado.
- Sobre el programa:
- Capturas de pantalla del programa, mostrando que el programa realiza lo que
se pedía.
- Instrucciones para manejar el programa y así poder ver todo lo que el
programa realiza.
- Cómo habéis conseguido dar respuesta a cada cuestión: dificultades
encontradas; ayuda que habéis necesitado de otras personas o que habéis
buscado por internet.
- Reflexión final:
- Qué habéis aprendido realizando este trabajo.
- Valoración sobre la dificultad o sencillez del trabajo.
- Qué es lo que más os ha gustado, y también lo que menos.
2. Primera parte: mi primera figura tridimensional

Objetivo: construir unas gafas 3D y dibujar una figura que salga tridimensionalmente de la
pantalla, al mirarla con tus gafas.

2.a) Realiza un programa que dibuje una figura geométrica regular, y justo a su
izquierda la misma figura, con una determinada separación. La figura de la
izquierda tendrá un color azul, y la de derecha tendrá color rojo:

IMPORTANTE: Usa los siguientes controles para no repetir varias veces las mismas
instrucciones de Scratch:

- Los lados del polígono regular se dibujarán con una “estructura repetir”:

- La figura izquierda y derecha se dibujarán empleando bloques de


“al recibir orden” y “enviar orden”: la orden será dibujar la figura
en un determinado lugar de la pantalla. Recomendación: usa todas
las variables que necesites:

2.b) Construye tus gafas 3D con cartón y papel celofán de colores rojo y azul: rojo en la
lente izquierda y azul en la lente derecha.
- Combina dos o más capas de papel azul y rojo para cada lente,
asegurando que cuando miras por la lente roja sólo vez el polígono azul,
y al revés al mirar por la lente azul sólo ves el polígono rojo.

- Prueba diferentes tonos de azul y rojo en scratch, hasta dar con el color
que mejor combina con tus lentes.

IMPORTANTE: Antes de pegar el papel celofán a la montura de las gafas, asegúrate de que ves
la figura dibujada en la pantalla con profundidad tridimensional. Has varias pruebas con la
separación de las figuras y observa el efecto. ¿Qué ocurre cuando el polígono azul se dibuja a
la derecha del polígono rojo? ¿Qué ocurre cuando aumentas la separación entre los dos
polígonos?

3. Segunda parte: añadimos movimiento

Objetivo: pulsando las teclas 'flecha abajo' y 'flecha arriba', la figura se adentrará o saldrá
tridimensionalmente de la pantalla cuando la observemos con nuestras gafas 3D.

3.a) El programa responderá a las teclas 'flecha arriba' y 'flecha abajo' de dos maneras:
- aumentando o reduciendo el tamaño de las figuras
- aumentando o separando la separación de las figuras

Recomendación: usa todas las variables que necesites, como lado del polígono, separación,
cantidad a aumentar /reducir tamaño, cantida a acercar /separar las figuras, etc.

3.b) Para hacer la dinámica de movimiento más real, vamos a usar nuestros conocimientos
de proporcionalidad para calcular el tamaño de la figuras.

- Observa en las imágenes siguientes la relación entre las dimensiones del objeto real, y las
dimensiones del objeto virtual sobre la pantalla. como se en la página siguiente.
Escribe una fórmula que calcule la altura del objeto virtual a partir de:
- la altura del objeto real
- la distancia del objeto real a la cámara
- la distancia focal o 'foco' (fíjalo al valor que tu quieras)
Objeto lejos de la cámara:

Objeto cerca de la cámara:

- Introduce en Scratch instrucciones para recalcular las dimensiones del polígono tras
pulsar las teclas de acercar alejar la figura. Para ello, usa la fórmula que has encontrado
en el punto anterior y emplea todas las variables que necesites: distancia a la cámara, foco,
altura real del polígono, altura virtual, etc.
4. Tercera parte: perfeccionando el trabajo

Objetivo: conseguir que la animación sea más limpia y más fluida, para darle más realidad
a la figura 3D virtual.

¿Cómo podríamos mejorar nuestro programa? ¿Ves parpadeos extraños? ¿Se deforma la figura
de vez en cuando? ¿Cómo podemos ganar en 'realismo' 3D? A continuación te lanzamos
algunas posibles ideas:

- Asegura que no se deforma la figura:


- Evita interrumpir el trazado de la figura al pulsar una tecla.
- Impide que se distorsione el cálculo de las dimensiones de la figura porque justo
durante el cálculo alguien ha pulsado una tecla.
- La figura se corrompe al crecer más allá de los extremos de la pantalla: no
permitas que el usuario acerque demasiado la cámara a la figura.

- Acelerar el trazado de la figura:


- Piensa en varias estrategias para que el trazado de la figura sea casi imperceptible.-
- ¿Se ganaría en velocidad trazando las dos figuras simultáneamente con dos objetos
de Scratch distintos?

- Los colores rojo-azul de la pantalla de tu casa serán distintos a los colores del proyector
en el aula, haciendo que las gafas funcionen bien en casa pero no en el aula o al revés.
- ¿Cómo podríamos decirle al programa si estoy en casa o en el aula? ¿Podrías usar un
juego de colores rojo-azul para el aula y otro juego distinto para la pantalla de casa?

- Realismo extra: ¿Podrías hacer que el grosor del trazado aumente o disminuya cuando el
objeto está más cerca o más lejos de la cámara?

- Centrar la figura en el centro exacto de la pantalla, y no en el primer vértice de la


figura, para aprovechar mejor la superficie de pantalla. Ver figuras:

Figura centrada en su vértice izquierdo Figura centrada en su centro


5. Cuarta parte: trabajando con coordenadas

Objetivo: representar un triángulo que salga y penetre


tridimensionalmente de la pantalla.

5.a) Variables necesarias para representar el triángulo


El triángulo vendrá definido por: su lado (variable lado), y las
coordenadas de su primer vértice en el espacio
La variable z sería la coordenada que indica la profundidad en que se
encuentra el triángulo; es decir, la distancia del triángulo a la cámara.
Cuanto mayor es el valor de z, más lejos se encontrará el triángulo de
la cámara.

5.b) Conversión de coordenadas 3D del espacio a coordenadas 2D de pantalla:


(xespacio ,yespacio , zespacio ) → (xpantalla, ypantalla)
Tendremos dos juegos de coordenadas para el primer vértice de nuestro triángulo:
1) Coordenadas 3D (xespacio ,yespacio , zespacio) que sitúan el primer vértice del triángulo en el
espacio tridimensional, con anchura (x), altura (y) y profundidad (z).
2) Coordenadas 2D (xpantalla, ypantalla) que colocan el vértice del triángulo en la pantalla
plana del ordenador.

Nuestro trabajo será traducir las coordenadas 3D a coordenadas planas 2D de pantalla. Es


decir, a partir de las coordenadas (xespacio ,yespacio , zespacio), calcularemos el lugar de la pantalla
donde tenemos que colocar el triángulo (xpantalla, ypantalla). Para esta conversión de coordenadas
emplearemos nuevamente la proporcionalidad de triángulos, como de puede ver en la
figura.
Será necesario igualmente calcular el lado del triángulo → el lado será mayor o más
pequeño, según esté más cerca o más lejos de la cámara; o lo que es lo mismo, el lado será
inversamente proporcional a la coordenada z, que representa la distancia a la cámara.

5c) Incorporación de movimiento


Con las teclas flecha-arriba y flecha-abajo, el triángulo se podrá acercar y alejar de la cámara.
Este efecto se conseguirá modificando la coordenada z del vértice del triángulo, que representa
la distancia a la cámara, y volviendo a trazar la figura.

6. Quinta parte: representación de varios triángulos

Objetivo: representar varios triángulos que salgan y penetren tridimensionalmente de la


pantalla.

6a) Variables para describir los triángulos.


Trabajaremos al menos con 3 triángulos vendrán dados por las siguientes variables:
• El triángulo uno vendrá definido por: su lado (lado1), y las coordenadas de su primer
vértice (x1, y1, z1).
• El triángulo dos vendrá definido por: lado2, x2, y2, z2
• El triángulo tres vendrá definido por: lado3, x3, y 3, z3

Para facilitar el trabajo trabajaremos con variables tipo 'lista' de Scratch, que son en
realidad variables agrupadas. En lugar de tener tres variables: lado1, lado2, lado3. Tendremos
una variable tipo lista llamada: lados, que contendrá tres valores, o items, que serán los lados
de cada uno de los tres triángulos.
Las estructuras repetir de Scratch combinan muy bien con las variables lista, y dan mucha
potencia a un programa.

Los pasos a realizar son los siguientes:


• Crea cuatro variables tipo 'lista': lados, x, y, z.
• Añade a cada lista los valores iniciales que describen cada triángulo.
Por ejemplo: el triángulo uno, tendrá un lado 10, y estaría en las coordenadas (x,y,z) =
(2, 3, 8).

6b) Representación y movimiento de los triángulos con estructuras repetir.


Modifica tu programa para que en lugar de representar o mover un único triángulo, trabaje con
todos los triángulos de una lista. Para ello emplearemos una 'estructura repetir' que repita las
tareas de cálculo y trazado de las figuras para cada uno de los triángulos de la lista.

Igualmente, cuando se pulsen las teclas 'flecha-arriba' y 'flecha-abajo' la coordenada z de


cada uno de las triángulos tendrá que ser modificada, empleando también una 'estructura
repetir'.

Investiga en internet como puedes combinar la estructura repetir con las variables lista.

6c) Perfecciona el programa con las mejoras que consideres oportunas.


¿Puede el programa funcionar razonablemente bien con 5 triángulos? ¿Y con 10 triángulos?
¿Serías capaz de pasar el programa a un lenguaje más potente como python o javascript?

Você também pode gostar