viernes, 10 de octubre de 2008

CUBO CON TRANSFORMACIONES

NOMBRE: CORREA ESPINOSA IVÁN SALVADOR

COMPUTACIÓN GRAFICA

#include ()

#include () // Se utiliza para la cabecera de windows

#include () // para las funciones de calculo de Matemáticas

#include // Entrada y Salida

#include //Cabecera estandar (librería)

float pos_camX = 0, pos_camY = 0, pos_camZ = -5;

int eye_camX = 0, eye_camY = 0, eye_camZ = 0;

int cube=1;

void InitGL ( GLvoid ) // Inicializamos parametros

{

glClearColor(0.0f, 0.0f, 0.0f, 0.0f); // se utilizara el fondo negro

glShadeModel (GL_SMOOTH);

glEnable(GL_LIGHTING);

glEnable(GL_LIGHT0);

glEnable ( GL_COLOR_MATERIAL );

glClearDepth(1.0f); // Configurando Depth Buffer

glEnable(GL_DEPTH_TEST); // Habilitando Depth Testing

glDepthFunc(GL_LEQUAL); El tipo de test que se va a realizar

glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);

}

void display ( void ) // esta es la función donde se dibujara

{

glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

glPushMatrix();

glTranslatef(pos_camX, pos_camY, pos_camZ);

glRotatef(eye_camX, 1.0, 0.0, 0.0);

glRotatef(eye_camY, 0.0, 1.0, 0.0);

glRotatef(eye_camZ, 0.0, 0.0, 1.0);

//SE CONTRUYE EL CUBO ORIGINAL

glColor3f(0.0,1.0,0.0);

glutSolidCube(cube);

glPopMatrix();

glutSwapBuffers ( );

}

void reshape ( int width , int height ) // Creamos funcion Reshape

{

if (height==0) // No se permite la division entre cero.

{

height=1;

}

glViewport(0,0,width,height);

glMatrixMode(GL_PROJECTION); // Seleccionamos Projection Matrix

glLoadIdentity();

glFrustum (-0.1, 0.1,-0.1, 0.1, 0.1, 50.0);// Se cambia la vista

glMatrixMode(GL_MODELVIEW); // Seleccionamos Modelview Matrix

glLoadIdentity();

}

void keyboard ( unsigned char key, int x, int y ) // crea la funcion del teclado

{

switch ( key ) {

case 'r': //Para rotar el cubito

case 'R':

glRotatef(45,0,0,1);//rota el cubo unos 45 grados

glutSolidCube(cube);

break;

case 'f': //para rotar el cubo en un solo punto

case 'F':

glTranslatef(1,0,0);//utiliza la funcion traslate para trasladarlo

glRotatef(45,0,0,1);//se rota nuevamente el cubo unos 45 grados

glutSolidCube(cube);

break;

case 't':

case 'T':

glTranslatef(2,0,0);

glutSolidCube(cube); break;

case 'e': //efectua la transformación de escalar

case 'E':

cube=2;

glutSolidCube(cube);

break;

case 'l':

case 'L':

break;

case 27: // sale del programa por default con la tecla ESC

exit ( 0 ); // Salir del ejecutable

break;

default: // otra funcion

break;

}

glutPostRedisplay();

}

int main ( int argc, char** argv ) // funcion principal

{

glutInit (&argc, argv); // Se inicializa la funcion

glutInitDisplayMode (GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH); // Es el display

Mode (Clores RGB y alpha | Buffer Doble )

glutInitWindowSize (500, 500); // Nuevamente el tamaño de la ventana

glutInitWindowPosition (0, 0); //Posicionar la ventana

glutCreateWindow ("Cubo"); //Nombre de la ventana

InitGL (); // Los parámetros inciales

glutDisplayFunc ( display ); //dibujar la funcion

glutReshapeFunc ( reshape ); //Cambio de tamaño de la aplicacion glutKeyboardFunc ( keyboard ); //se habilita la interaccion del teclado

glutMainLoop ( ); // regresa ciclicamente

return 0;

}

sábado, 13 de septiembre de 2008

Pantallas enrollables Tarea no 1

Con el simple hecho de mirar a los niños, jugando con plásticos. Surge la idea de diseñar y crear una pantalla enrollable, que basicamente funciona con aleaciones de cobre.

Cada Screen ó pantalla dicho propiamente, funciona con la tan nombrada "Tinta Electrónica", la cual es una tecnologia que permite crear o fabricar pantallas planas, de no exageradamente 3 mm de espesor, que produce un sensación de megaportibilidad por así decirlo.

En lo que se refiere a la fabricación de dichas pantallas enrollables, es que están formadas por tres capas, según dice un articulo el primer paso son los microtransmisores, el polimero y una lámina protectora. Despúes de esto los microtransmisores son exitados electromagnéticamente para así mostrar su cara blanca o negra, lo cual se hizo mención de que solo mostraba texto en blanco y negro. De ésta manera, como las cápsulas (microtransmisores en conjunto) estan bañadas con un gel, difiere entre las tecnologias y la competencia, ya que las empresas E-Ink, están diseñando rapidamente sus versiones siguientes por ejemplo: Su actual pantalla enrollable en su interior de las cápsulas estan rellenas de titanio lo cual las hace que sean más dinámicas.

En cierto aspecto, de las caraterísticas que conlleva hablar de pantallas enrollables en éste momento, es la más obvia, y la cual es el motivo de la invensión "la portabilidad", en unos años o meses no muy lejanos, veremos ya las pantallas en el super o en tiendas de fotografía, etc. Ya que gracias a su resolucion de 150 dpi. supera a los TFT de laptops normales lo cual, lo hace y no impide que tniendo una pantalla enrollable, no la puedas ver en cualquier ángulo, sino al contrario, con las pantallas enrollables, gracias a lo mencionado antes de las cápsulas, conseguimos que desde cualquier ángulo se pueda visualizar. y Además de que es considerablemente un ahorro de Energía.

Cabe mencionar que independientemente, la pantalla enrollable, aún no es capaz de mostrar movimientos ni realizar actividades que requieran, como una pantalla normal. Basicamente es solo texto en grises. Pero para la actualidad es muy caras las pantallas a color, pero aún tienen problemas pues debido a su portabilidad la velocidad de refresco no es muy elevado, lo cual ocasiona liberación de visualización errónea.


Bibliografía

http://www.lavanguardia.es/premium/publica/publica?COMPID=51308392701&ID_PAGINA=22088&ID_FORMATO=9&turbourl=false
http://es.wikipedia.org/wiki/Tinta_electr%C3%B3nica
http://news.cnet.com/8301-17938_105-9722721-1.html
http://www.eink.com/