Tareas
Primitivas
- Línea vertical
- Línea diagonal
- Estrella de 5 picos
- Primitivas de Power Point
- Compuertas lógicas and y or
- Primitiva oval de Java
- Diagrama de barras de hasta 10 datos. Probar con los siguientes datos:
Posición del diagrama de barras 30,30;ancho: 200; alto: 150; datos:
345,400,120,40,250. Posición del diagrama de barras 250,30;ancho: 100;
alto: 100; datos: 32, 45, 67, 21, 23, 10, 5.
- Diagrama de pastel con resalte de algunas rebanadas y letrero. Probar con
los siguientes datos: Posición del diagrama de pastel 80,80;radio: 45;
datos: 345,400,120,40,250, etiquetas:
"Físicos", "Matemáticos",
"Biólogos","Topógrafos", "Ingenieros",
Posición del diagrama de pastel 250,250; radio 150; datos: 32, 45, 67,
21, 23, 10, 5. Etiquetas: "Coca cola", "Pepsi",
"Caballito", "Sprite", "Fanta", "Delawere
Punch", "Chaparrita". Los datos en negrita van resaltados.
Transformaciones
1. Probar que la multiplicación de matrices para cada una
de las siguientes secuencias es conmutativa:
a) Dos rotaciones sucesivas
b) Dos traslaciones sucesivas
c) Dos cambios de escala sucesivas.
2. Probar que la composición de dos rotaciones es aditiva
mediante la concatenación de representaciones de matrices para R(q1)
y R(q2) para obtener
R(q1) · R(q2)
= R(q1 + q2)
3. Probar que un cambio de escala uniforme y una rotación
forman un par de operadores conmutativo pero que, en general, el cambio de
escala y la rotación son operaciones no conmutativas.
4. Demostrar que una reflexión sobre la línea y = x, es
equivalente a una reflexión relativa al eje x seguida de una rotación de 90º
en el sentido contrario a las manecillas del reloj.
5. Determinar la forma de la matriz de transformación
bidimensional para la operación de reflexión sobre cualquier línea: y
= mx + b.
6. Determinar la secuencia de transformaciones básicas
(traslaciones, rotaciones, escalamientos) que sea equivalente a la matriz de
corte en dirección x.
7. Determinar la secuencia de transformaciones básicas
(traslaciones, rotaciones, escalamientos) que sea equivalente a la matriz de
corte en dirección y.
8. Agregar al archivo transforma.cpp las transformaciones
de reflexión (en x y y) y reflexión sobre la recta y = mx + b.
9. Escriba un programa que lea las coordenadas de un polígono
de hasta 10 puntos y una secuencia de transformaciones y dibuje el polígono
original y el transformado. Nota: la lectura podrá hacerse desde un archivo de
texto.
10. Proyecto: defina un conjunto de caracteres como polígonos
y escriba funciones para desplegar una cadena de caracteres en cualquier posición,
de cualquier tamaño y con cualquier orientación. Extra: implemente caracteres
en cursiva y negrita.
Vista tridimensional
Especifique una vista desde el techo de la casa que haga
visible todas las arístas, o sea, especifique: VRP, VPN, VUP, PRP, F, B y umin,
umax, vmin y vmax.
Obtenga las proyecciones ortográficas de la casa.
Agregue una puerta y una ventana a la casa y genere una
vista paralela y en perspectiva.
Cree un objeto tridimensional (silla, escritorio, etc.) con
al menos 10 puntos y 15 aristas y genere proyecciones ortográficas del mismo.
Además genere vistas en perspectiva de un punto, dos puntos y tres puntos de
fuga.
Escriba un programa para generar los vértices y aristas
con el formato del applet de vista3D de
alguna de las siguientes figuras sólidas. Aqui esta un ejemplo para generar una
esfera.
![](../_themes/sandston/astonbu1.gif) | Toroide (parámetros: diámetro exterior, diámetro
interior, número de aristas por cíclo) |
![](../_themes/sandston/astonbu1.gif) | Cono (parámetros: altura, radio de la base, número
de aristas por ciclo) |
![](../_themes/sandston/astonbu1.gif) |
Cilindro (parámetros: altura, radio de la base,
número de aristas por ciclo) |
![](../_themes/sandston/astonbu1.gif) |
Cono truncado (parámetros: altura, radio de la base,
radio superior, número de aristas por ciclo) |
![](../_themes/sandston/astonbu1.gif) |
Sector esférico (parámetros: radio de la esfera,
número de meridianos y número de paralelos) |
![](../_themes/sandston/astonbu1.gif) | Cilindro hueco (parámetros: altura, radio de la
base, radio interior, número de aristas por ciclo) |
![](../_themes/sandston/astonbu1.gif) | Segmento esférico truncado (parámetros: radio de la
esfera, número meridianos y número de paralelos) |
![](../_themes/sandston/astonbu1.gif) | Engrane (parámetros: radio del engrane, número
dientes y tamaño de los dientes) |
Pruebe las figuras en el visor de 3D.
PROYECTOS FINALES
Posibles proyectos gráficos en 2D.
-
Simulación del tráfico en una ciudad..
-
Movimiento de un brazo robot en 2D.
-
Animación de algún mecanismo como: motor de combustión
interna o de vapor.
-
CAD - diseño
asistido por computadora para aplicaciones como robótica, circuitos lógicos
o analógicos, etc.
-
Programa de dibujo artístico.
-
Graficas de barras, pastel , líneas, áreas y
dispersión.
-
Gráfica de funciones matemáticas en 2D.
-
Juego de cartas o de tablero: Poker, 21, dominó,
monopolio, damas, ajedrez, etc.
-
Juego de billar.
-
Juegos con base en transformaciones en 2D
![](../_themes/sandston/astonbu1.gif) |
Frogger |
![](../_themes/sandston/astonbu1.gif) |
Lunar
lander |
![](../_themes/sandston/astonbu1.gif) |
Missile
command |
![](../_themes/sandston/astonbu1.gif) |
Asteroids |
![](../_themes/sandston/astonbu1.gif) |
Space
invaders |
![](../_themes/sandston/astonbu1.gif) |
Dog fight |
![](../_themes/sandston/astonbu1.gif) |
etc. |
Posibles proyectos gráficos en 3D.
-
Movimiento de un brazo robot en 3D.
-
Escenas Realistas -
generación de escenas realistas quizá con POV, en cualquier área de
aplicación.
-
Secuencia de animación con la escena del problema
anterior. Recuerde que la apariencia debe ser lo más realista
posible.
-
Gráfica de funciones matemáticas en 3D.
-
Programa de trazo de
rayos - modelo global para generación de imágenes realistas en escenas con
reflexión, transmisión de la luz, operaciones lógicas entre objetos, etc.
-
Programa de
Radiosidad - modelo global para generación de imágenes realitas en escenas con
objetos opacos.
-
Biblioteca
Gráfica
- Construcción de librerías gráficas, por ejemplo, para algoritmos de líneas
ocultas, morphing, etc.
-
Visualización científica
- visualización de estructuras de datos de dos, tres o más dimensiones.
|