Gràfics per computador
|
|
|
- Josefa Jiménez Franco
- hace 10 años
- Vistas:
Transcripción
1 Gràfics per computador Departament de Sistemas Informàtics i Computació Escola Politècnica Superior d Alcoi Enginyeria Tècnica en Informàtica de Gestió PRÀCTICA 3 Jordi Linares i Pellicer [email protected] Pág. 1 de 19
2 1 Descripción y objetivos Modelos de GLUT Transformaciones geométricas en 3D Transformaciones del modelo Transformación de la vista Proyecciones Proyecciones en OpenGL Transformación del viewport Un pequeño ejemplo de aplicación 3D El programa Breves comentarios sobre el programa Primera tarea a resolver: viendo todos los rincones de la tetera Segunda tarea a resolver: modelado poligonal mediante barrido rotacional La silueta 2D El barrido rotacional Visualización del resultado Integrando la práctica 2 y Pág. 2 de 19
3 1 Descripción y objetivos Si algo caracteriza a OpenGL es su orientación a los gráficos 3D. Nuestro objetivo en esta última práctica será conseguir definir y visualizar modelos en 3D con interacción. Al finalizar la práctica seremos capaces de conocer las características más básicas de OpenGL en lo que respecta a los gráficos 3D. 2 Modelos de GLUT OpenGL es una librería de visualización de polígonos. Es posible, por tanto, construir los modelos a visualizar especificando manualmente los distintos polígonos que los componen. Así en el interior de las funciones glbegin() y glend() podemos describir las más complejas geometrías mediante su descomposición en un conjunto de polígonos, habitualmente triángulos, usando por ejemplo GL_TRIANGLE_STRIP como argumento al glbegin(). El modelado de objetos con geometrías complejas puede llevarse a cabo con softwares específicos como 3D Max, Softimage o Blender 1. Podemos estudiar sus formatos de salida y desarrollar el código necesario para su conversión en primitivas OpenGL. Sin embargo, para facilitar la construcción de modelos a partir de primitivas simples, la librería GLUT incluye órdenes para el dibujo de esferas, cilindros, conos, etc. Esta característica va a facilitarnos la exposición y desarrollo de la práctica. A continuación se listan las funciones que implementan el dibujo de primitivas en la librería GLUT: void glutwiresphere (GLdouble radius); void glutwirecube (GLdouble size); void glutwirebox (GLdouble width, GLdouble heigth, GLdouble depth); void glutwiretorus (GLdouble innerradius, GLdouble outerradius); void glutwirecylinder (GLdouble radius, GLdouble heigth); void glutwireicosahedron (GLdouble radius); void glutwireoctahedron (GLdouble radius); void glutwiretetrahedron (GLdouble radius); void glutwiredodecahedron (GLdouble radius); void glutwirecone (GLdouble radius, GLdouble heigth); void glutwireteapot (GLdouble size); Estas rutinas dibujan las distintas primitivas en modo alámbrico. Todas las primitivas se encuentran centradas en el origen, y cuando los parámetros de las órdenes son todos 1.0, todas ellas encajan en una caja con todas sus coordenadas entre -1 y 1. Pueden utilizarse distintos valores en los parámetros para escalar las primitivas. Por ejemplo, para dibujar un cono de radio 25.0 y altura 40.0 utilizaríamos la sentencia: glutwirecone(25.0, 40.0); 1 Invitamos al alumno a que descubra el paquete Blender ( un completo software Open Source, con todas las funcionalidades de las soluciones comerciales actuales, junto a un motor en tiempo real y la posibilidad de programar sobre él con Python. Además se encuentra disponible para casi todas las plataformas. Pág. 3 de 19
4 La librería GLUT define un conjunto de funciones para la definición de primitivas básicas mediante polígonos, que ya incorporan las normales de sus vértices y por tanto preparadas para ser utilizadas en escenas con iluminación. Entre estas funciones se encuentran las siguientes: void glutsolidsphere (GLdouble radius); void glutsolidcube (GLdouble size); void glutsolidbox (GLdouble width, GLdouble heigth, GLdouble depth); void glutsolidtorus (GLdouble innerradius, GLdouble outerradius); void glutsolidcylinder (GLdouble radius, GLdouble heigth); void glutsolidicosahedron (GLdouble radius); void glutsolidoctahedron (GLdouble radius); void glutsolidtetrahedron (GLdouble radius); void glutsoliddodecahedron (GLdouble radius); void glutsolidcone (GLdouble radius, GLdouble heigth); 3 Transformaciones geométricas en 3D Las funciones disponibles en OpenGL para especificar transformaciones en 3D son: traslación, rotación y escalado. Estas rutinas actúan generalmente sobre la matriz de Modelo / Vista, por lo que serán de utilidad tanto para aplicar transformaciones a los distintos objetos de la escena, como para definir las transformaciones asociadas al posicionamiento de dicha escena en el volumen de la vista. OpenGL utiliza dos matrices distintas durante el proceso de visualización, la matriz de Modelo / Vista y la matriz de proyección 2. Para distinguir sobre cual de dichas matrices van a actuar las distintas rutinas de transformación se utiliza la siguiente función OpenGL: void glmatrixmode (GLenum mode); donde el parámetro mode especifica la matriz a utilizar en las transformaciones siguientes mediante las constantes GL_MODELVIEW, GL_PROJECTION o GL_TEXTURE. Independientemente de la matriz que vayamos a utilizar, la primera operación que deberemos realizar generalmente será inicializar dicha matriz a la identidad. Para ello utilizaremos la función OpenGL: void glloadidentity (void); 3.1 Transformaciones del modelo Las tres rutinas que proporciona OpenGL para definir transformaciones son gltranslate*, glrotate* y glscale*. La rutina de traslación : void gltranslate{fd} (TYPE x, TYPE y, TYPE z) multiplica la matriz actual por una matriz de traslación con desplazamientos indicados por x, y, z. La rutina de giro: void glrotate{fd} (TYPE angle, TYPE x, TYPE y, TYPE z); 2 En realidad son tres las matrices (modelo/vista, proyección y textura), pero únicamente estudiaremos las dos primeras. Pág. 4 de 19
5 multiplica la matriz actual por una matriz que gira el objeto en el sentido contrario a las agujas del reloj (sentido de la mano derecha o dextrógiro) alrededor del eje que va desde el origen al punto indicado por x, y, z. Lo más habitual es girar sobre los ejes de coordenadas, por lo que los valores de los parámetros serán: Giro sobre X: x = 1.0, y = 0.0, z = 0.0 Giro sobre Y: x = 0.0, y = 1.0, z = 0.0 Giro sobre Z: x = 0.0, y = 0.0, z = 1.0 Por último, la rutina de escalado: void glscale{fd} (TYPE x, TYPE y, TYPE z) multiplica la matriz actual por una matriz que amplia o reduce el objeto con respecto a los ejes coordenados. Cada coordenada (x, y, z) del objeto se multiplica por el argumento correspondiente x, y, z. Valores de estos parámetros inferiores a 1.0 reducen el objeto, mientras que valores superiores a 1.0 lo amplían. Respecto al orden en que se aplican las transformaciones, supongamos que ejecutamos la siguiente porción de código OpenGL: glmatrixmode(gl_modelview); glloadidentity(); gltranslatef(1.0, 1.0, 1.0); glscalef(2.0, 2.0, 2.0); Inicialmente, la matriz contiene la identidad, a la que llamaremos I. La orden gltranslatef multiplica la identidad por una matriz de traslación a la que llamaremos T. Posteriormente, la orden glscalef multiplica la matriz resultado por una matriz de escalado a la que llamaremos S. Por tanto, después de ejecutar el código la matriz de Modelo / Vista contiene el producto I T S. Cuando se aplique esta matriz a los distintos vértices del modelo tendremos: v'= I T S v = I (T (S v))) es decir, primero se aplicará el escalado y posteriormente la traslación, por lo que podemos concluir que las transformaciones siempre se aplicarán en orden inverso al que han sido definidas en OpenGL. 3.2 Transformación de la vista La transformación de la vista cambia la posición y orientación del punto de vista. Utilizando una analogía con una cámara, la transformación de la vista ajusta el trípode, enfocando la cámara hacia la escena. Dado que movemos la cámara hasta la posición deseada y después la giramos para enfocar la escena, la transformación de la vista puede realizarse mediante una composición de operaciones de giro y traslación. Es importante mencionar que para conseguir una cierta disposición de la escena en la imagen final, es equivalente mover la cámara para que enfoque a los objetos, o mover estos últimos para que queden dentro del campo de visión de la cámara. Esta última aproximación es la que utilizaremos en informática gráfica. Por tanto, la transformación de la cámara realizará las transformaciones 3D necesarias para llevar la cámara a la posición de observación (situada en el origen de coordenadas y enfocando hacia el eje Z negativo). Pág. 5 de 19
6 4 Proyecciones Gràfics per Computador DSIC EPSA Pràctica 3 El proceso de obtener una imagen sintética de un modelo en OpenGL es similar al proceso de hacer una fotografía de un objeto real. Tal y como se muestra en la figura adjunta, los pasos que sería necesario realizar son los siguientes: 1. Fijar el trípode y apuntar la cámara a la escena (Transformación de la vista). 2. Situar los objetos en su disposición adecuada (Transformación del modelo). Pág. 6 de 19
7 3. Elegir el zoom o la lente de la cámara (Proyección). 4. Determinar el tamaño final de la fotografía (Transformación del viewport). Estos pasos se corresponden con el orden en que se especifican las transformaciones en el programa, y no necesariamente con el orden en que son realizadas las operaciones matemáticas asociadas en el interior de OpenGL. En la figura siguiente se muestra el orden de estas operaciones en el pipeline OpenGL: Las transformaciones del modelo, de la vista y la proyección se especifican mediante matrices 4x4 que multiplican a los vectores columna representativos de los vértices. La transformación del modelo y de la vista especificada se combinan en OpenGL para formar una única matriz denominada matriz de Modelo / Vista. Esta matriz se aplica a las coordenadas de los vértices para convertirlos al sistema de coordenadas de la vista. Posteriormente, OpenGL aplica la matriz de proyección para obtener las coordenadas de recortado. Esta transformación define un volumen de la vista; los objetos fuera de este volumen se recortan y no aparecerán en la imagen final. Tras esta operación, se realiza la división homogénea (o perspectiva) para producir coordenadas normalizadas, que finalmente se convierten a coordenadas de ventana aplicando la transformación del viewport. 4.1 Proyecciones en OpenGL En este apartado analizaremos cómo definir la matriz de proyección que también afecta a los vértices de la escena. Es importante recordar que de forma previa a la especificación de la matriz de proyección es necesario activar dicha matriz e inicializarla mediante las órdenes OpenGL: glmatrixmode(gl_projection); glloadidentity(); La proyección define el volumen del espacio que va a utilizarse para formar la imagen; en el caso de la proyección perspectiva este volumen es una pirámide truncada o frustum. Por lo tanto, en esta proyección se produce un efecto tamaño-distancia (los objetos aparecen más pequeños cuanto más alejados están del punto de vista) y es la proyección más usada en animación por ordenador o simulación visual, donde se requiere un alto grado de realismo. El frustum de visualización se define en OpenGL de la forma siguiente: void glfrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far) donde los parámetros left, right, bottom, top, near y far definen el frustum tal y como se muestra en la figura siguiente: Pág. 7 de 19
8 Tal y como se muestra en la figura, el frustum no tiene porqué ser simétrico respecto al eje Z, ya que es posible utilizar valores distintos para left y right, o para bottom y top. La especificación de una proyección perspectiva mediante glfrustum puede resultar complicada debido a que la forma de la definición no resulta intuitiva. En lugar de esta orden, podemos utilizar la rutina de la librería de utilidades GLU de OpenGL gluperspective. Esta rutina permite especificar el volumen de la vista (simétrico) de forma diferente, utilizando el ángulo de visión sobre el plano XZ (fovy) y el ratio de la anchura respecto a la altura (aspect). Mediante estos parámetros es posible determinar el volumen de la vista, tal y como se muestra en la figura siguiente: Pág. 8 de 19
9 Esta forma de definir la proyección resulta más intuitiva. La sintaxis de la rutina gluperspective 3 es la siguiente: void gluperspective (GLdouble fovy, GLdouble aspect, GLdouble near, GLdouble far) Cuando utilicemos la rutina gluperspective tendremos que tomar precauciones con respecto a los valores de fovy 4 y near. Una mala elección de dichos valores puede producir deformaciones en la imagen similares a las aberraciones ópticas habituales en las lentes fotográficas (p.e. efecto "ojo de pez"). Una forma de definir la manera en que una cámara sintética observa una escena es mediante dos posiciones en el espacio: la del punto de interés o punto al que la cámara está enfocando, y la del punto de vista o punto dónde se encuentra situada la cámara. Esta forma de definir la transformación de la vista es la que utiliza la orden de la librería de utilidades de OpenGL glulookat 5. La sintaxis de la orden es la siguiente: glulookat(gldouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centery, GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy, GLdouble upz); donde los parámetros eyex, eyey, eyez indican la posición del punto de vista; centerx, centery, centerz especifican el punto de interés y upx, upy, upz la dirección tomada como "arriba", o inclinación de la cámara. La proyección ortográfica define un volumen de la vista cuya geometría es la de un paralelepípedo rectangular (o informalmente, una "caja"). A diferencia de la proyección perspectiva, la distancia de un objeto a la cámara no influye en el tamaño final del mismo en la imagen. Este tipo de proyecciones son comunes en aplicaciones de diseño asistido por ordenador, ya que las medidas sobre la imagen son proporcionales a las reales de acuerdo a un determinado factor de escala. Entre las proyecciones ortográficas más comunes en este tipo de sistemas cabe destacar la proyección ortográfica (planta, alzado y perfil) y la proyección isométrica. La caja de visualización se define en OpenGL de la forma siguiente: void glortho (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far) donde los parámetros left, right, bottom, top, near y far definen la caja tal y como se muestra en la figura siguiente: 3 Deberemos seleccionar la matriz de proyección con glmatrixmode(gl_projection), inicializarla con glloadidentity() y finalmente invocar a gluperspective, diseñada esta función para que multiplique a la matriz de proyección y defina por tanto la proyección perspectiva. 4 fovy permite valores entre 0.0 y Los ángulos en OpenGL se expresan en grados. 5 glulookat está diseñada para multiplicar a la matriz modelo / vista, por tanto deberemos seleccionar esta matriz con glmatrixmode(g_modelview), inicializarla con glloadidentity() e invocar a glulookat. Podríamos conseguir lo mismo, por supuesto, con las adecuadas transformaciones gltranslate y glrotate, que es a fin de cuentas lo que realiza glulookat. Pág. 9 de 19
10 La librería de utilidades de OpenGL también nos proporcionan una función que facilita la definición de la proyección paralela para el caso en el que queramos usar OpenGL para el dibujo 2D, la función gluortho2d, que utilizamos ya en la práctica anterior: void gluortho2d(gldouble left, GLdouble right, GLdouble bottom, GLdouble top); Esta función llama a glortho con near a -1.0 y far a 1.0. Si usamos glvertex2* para definir la geometría de los objetos, la z se asume a 0.0, por lo que todo lo que dibujemos caerá en el interior del volumen de vista definido y no sufrirá recorte por su posición en z. 4.2 Transformación del viewport Volviendo a la analogía con la cámara fotográfica, la transformación del viewport se correspondería con el proceso en que se decide el tamaño final de la fotografía revelada. Definiremos un viewport como la porción de la ventana de la aplicación en la que se mostrará la imagen. El hecho de que el viewport sea una porción de una ventana implica que el encargado de crearlo y manejarlo será el sistema gestor de ventanas sobre el que se ejecute la aplicación (X-11, Windows, etc.) y no OpenGL. Por defecto, al crear una ventana se inicializa un viewport que ocupa toda el área gráfica disponible. Es posible cambiar este valor mediante la rutina OpenGL: void glviewport (GLint x, GLint y, GLsizei width, GLsizei height); El ratio del viewport (width / height) debería ser normalmente equivalente al definido en la proyección utilizada. Existen aplicaciones en las que se divide la ventana en distintos viewports para mostrar una vista distinta en cada uno de ellos (aplicaciones de diseño asistido por ordenador). Si queremos mantener la ventana de proyección y el viewport proporcionales, será necesario detectar los eventos de ventana (fundamentalmente el cambio de tamaño) y redefinir la proyección y el viewport de forma adecuada. Pág. 10 de 19
11 5 Un pequeño ejemplo de aplicación 3D Veamos un pequeño ejemplo de una aplicación OpenGL + GLUT que utiliza algunas de las características descritas hasta ahora. 5.1 El programa // Primero incluimos las cabeceras necesarias // para crear una aplicación OpenGL. #include <windows.h> #include <gl/gl.h> #include <gl/glu.h> #include <gl/glut.h> void inicializa (void) { /* selecciona el color de borrado */ glclearcolor (0.0, 0.0, 0.0, 0.0); } void display(void) { /* borra la pantalla */ glclear (GL_COLOR_BUFFER_BIT); /* seleccionamos la matriz modelo/vista */ glmatrixmode(gl_modelview); /* color */ glcolor3f(1.0, 1.0, 1.0); /* transformación modelo/vista */ glloadidentity(); gltranslatef(0.0, 0.0, -5.0); /* Dibujamos una tetera */ glutwireteapot(1.0); } /* Vacia el buffer de dibujo */ glflush (); void myreshape(int w, int h) { /* definemos el marco */ glviewport(0, 0, w, h); /* cambiamos a la matriz de proyección */ glmatrixmode(gl_projection); /* definimos una proyección perspectiva con un fovy de 60 grados y el near a 1.0 y el far a 20.0 */ glloadidentity(); gluperspective(60.0, GLfloat(w) / GLfloat(h), 1.0, 20.0); Pág. 11 de 19
12 } void main(int argc, char** argv) { // Inicializa la librería auxiliar GLUT glutinit(&argc, argv); // Inicializa el modo de visualización glutinitdisplaymode(glut_single GLUT_RGB); // Indica el tamaño de la ventana (ancho,alto) glutinitwindowsize(250, 250); // Indica la posición inicial (xmin,ymin) glutinitwindowposition(100, 100); // Abre la ventana con el título indicado glutcreatewindow("primera Práctica de TGC"); // Inicializar valores inicializa(); // Indica cual es la función de dibujo glutdisplayfunc(display); // Indica cual es la función para el cambio de tamaño de la ventana glutreshapefunc(myreshape); } // Comienza el bucle de dibujo y proceso de eventos. glutmainloop(); 5.2 Breves comentarios sobre el programa Vamos a describir el programa profudizando en las nuevas aportaciones y que caracterizan a una aplicación OpenGL 3D. En la función main, vemos que hemos añadido nuestra voluntad de gestionar el evento de cambio de tamaño de la ventana con: glutreshapefunc(myreshape); De esta forma, cada vez que se produzca un cambio en el tamaño de la ventana se llamará a la función myreshape. Es interesante controlar este cambio de tamaño ya que vamos a mantener la proporción entre el área de la ventana de la aplicación con la sección rectangular de la pirámide truncada. Este objetivo lo conseguimos definiendo las propiedades de la proyección en la función myreshape: Pág. 12 de 19
13 /* definemos el marco */ glviewport(0, 0, w, h); /* cambiamos a la matriz de proyección */ glmatrixmode(gl_projection); /* definimos una proyección perspectiva con un fovy de 60 grados y el near a 1.0 y el far a 20.0 */ glloadidentity(); gluperspective(60.0, GLfloat(w) / GLfloat(h), 1.0, 20.0); Así definimos el marco con glviewport(0,0,w,h) a todo el área de la ventana de la aplicación. A continuación seleccionamos la matriz de proyección y con gluperspective definimos el volumen de la vista. El volumen queda definido con unos parámetros que nos aportan un buen resultado, un ángulo de 60 grados, plano near a 1.0, plano far a 20.0 y, por último, el aspect o relación entre ancho y alto a la misma que el tamaño del área; asegurando así siempre proporcionalidad de la visión de mi modelo con independencia del tamaño de la ventana de la aplicación. Por último nos queda dibujar nuestro modelo, en este caso una tetera. Para ello en la función display lo primero que tenemos que hacer es seleccionar la matriz modelo / vista, inicializarla a la identidad y acometer los pasos necesarios que nos aseguren que nuestro modelo va a estar ubicado frente a la cámara. La cámara se encuentra en OpenGL en la posición (0,0,0) y mirando a z. Justamente con la matriz modelo / vista puedo acometer la transformación que permita situar mi modelo en el volumen de la vista 6. Si nuestra cámara está situada en el (0,0,0) mirando a z, tenemos una tetera centrada en (0,0,0), nuestro plano near está en z = -1.0 y el de far a z=-20.0, una buena posición para la tetera sería desplazar su centro a, por ejemplo, (0.0,0.0,-5.0). Esto lo podemos llevar a cabo con una traslación. /* seleccionamos la matriz modelo/vista */ glmatrixmode(gl_modelview); /* color */ glcolor3f(1.0, 1.0, 1.0); /* transformación modelo/vista */ glloadidentity(); gltranslatef(0.0, 0.0, -5.0); /* Dibujamos una tetera */ glutwireteapot(1.0); Otra forma alternativa podría se la siguiente: 6 Este proceso es del todo relativo, es decir, podemos pensar que modificamos nuestro modelo para que se ubique en el volumen de la vista de la cámara, o pensar que es la cámara la que se desplaza y se transforma para que su volumen vista abarque el modelo. Matemáticamente ambos conceptos se implementan de igual forma. Pág. 13 de 19
14 void display(void) { } /* borra la pantalla */ glclear (GL_COLOR_BUFFER_BIT); /* seleccionamos la matriz modelo/vista */ glmatrixmode(gl_modelview); /* color */ glcolor3f(1.0, 1.0, 1.0); /* transformación modelo/vista */ glulookat( 0.0, 0.0, 5.0, // punt de vista 0.0, 0.0, 0.0, // centro del objeto 0.0, 1.0, 0.0); // orientación de la // cámara (vector UP el eje y) /* Dibujamos una tetera */ glutwireteapot(1.0); /* Vacia el buffer de dibujo */ glflush (); Es decir, utilizar glulookat para definir la transformación modelo / vista, que generalmente puede resultar más cómoda. Volviendo al código anterior, si quisiéramos visualizar la tetera desde otro ángulo, podríamos, por ejemplo, aplicarle una rotación de 90 grados en y: /* transformación modelo/vista */ glloadidentity(); gltranslatef(0.0, 0.0, -5.0); glrotatef(90.0.0, 0.0, 1.0, 0.0); Hay que tener muy presente el orden en el que las funciones de transformación deben ser aplicadas en OpenGL, en este caso en primer lugar rotamos la tetera (la cual está centrada en el 0,0,0) 90 grados respecto al (0,0,0) y posteriormente la desplazamos 5 unidades hacia z. 6 Primera tarea a resolver: viendo todos los rincones de la tetera El objetivo en esta primera parte de la práctica es el conseguir visualizar la tetera desde cualquier ángulo, utilizando para ello las teclas del cursor. Para ello deberemos definir respuesta a los eventos de teclado, y respondiendo a ellos con giros de la tetera sobre el eje y y sobre el eje x. Por ejemplo las flechas arriba y abajo pueden variar el ángulo sobre el eje x y las de derecha e izquierda las del eje y. Funcionalidades adicionales Para todos aquellos que deseen obtener una mejor puntuación en la práctica pueden intentar abordar una o varias de las siguientes propuestas: Cambiar la proyección de perspectiva a paralela ortográfica y viceversa mediante algún juego de teclas Pág. 14 de 19
15 Acercarse o alejarse del modelo con algún juego de teclas Visualizar distintos tipos de objetos GLUT, e incluso varios simultáneamente 7 Segunda tarea a resolver: modelado poligonal mediante barrido rotacional Uno de los métodos de modelado de objetos 3D más utilizado es el modelado poligonal y OpenGL se centra básicamente en este tipo de modelado. El objetivo de esta segunda parte de la práctica consistirá en modelar utilizando OpenGL nuevos objetos 3D mediante modelado por barrido rotacional. El modelado por barrido es una técnica de modelado que consiste básicamente en: 1. Modelar en 2D (plano) una silueta o figura plana. 2. Definir un camino o trayectoria en el espacio 3D. 3. Hacer que la silueta 2D recorrar el camino. Durante este recorrido o barrido, a intervalos regulares, almacenamos los puntos 3D de la silueta en el espacio. 4. La correcta conexión de los puntos 3D almacenados configuran un conjunto de polígonos que a su vez modelan un objeto 3D. Por tanto, nuestro objetivo ahora será, utilizando el programa anterior, substituir el modelo de la tetera por un nuevo objeto 3D modelado mediante un barrido rotacional. El modelo se generará mediante la correcta especificación de un conjunto de vértices el par de primitivas OpenGL glbegin y glend. Veamos a continuación con más detalle las tareas a realizar: 7.1 La silueta 2D El primer paso consiste en trazo de una figura 2D. El trazo se materializa mediante el almacenamiento en un vector del conjunto de puntos 2D de la figura 2D. Las estructuras de datos necesarias para ello podrían ser las siguientes: typedef struct { double x, y; } punto2d; punto2d * vectorpuntos; vectorpuntos = (punto2d *) malloc(sizeof(punto2d) * numpuntos); Cojamos, por ejemplo, la siguiente figura: Pág. 15 de 19
16 (1,0.3) (1,1) (0.3,0.7) (0.2,0.5) (0.1,0.4) (0.1,0.2) (0,0.1) (0.4,0.1) (0,0) Estos valores podríamos introducirlos de la siguiente forma: vectorpuntos[0].x = 0.0; // Una copa vectorpuntos[0].y = 0.1; vectorpuntos[1].x = 0.4; vectorpuntos[1].y = 0.1; vectorpuntos[2].x = 0.1; vectorpuntos[2].y = 0.2; vectorpuntos[3].x = 0.1; vectorpuntos[3].y = 0.4; vectorpuntos[4].x = 0.2; vectorpuntos[4].y = 0.5; vectorpuntos[5].x = 0.3; vectorpuntos[5].y = 0.7; vectorpuntos[6].x = 0.3; vectorpuntos[6].y = 1.0; 7.2 El barrido rotacional El primer paso para el barrido rotacional consiste en situar la silueta en el espacio tridimensional. Esto lo podemos ver en la siguiente figura: Pág. 16 de 19
17 Eje Y (1,0.3) (1,1) (0.3,0.7) (0.2,0.5) (0.1,0.4) (0.1,0.2) (0,0.1) (0.4,0.1) (0,0) Eje X Eje Z Una vez ubicada, llevamos a cabo el barrido rotacional. Para ello aplicaremos una rotación a todos los puntos de la figura respecto al eje y. La matriz de rotación a aplicar es la siguiente: En el barrido rotacional, tenemos que decidir el número de pasos intermedios en los 2π radianes de la circunferencia y que, en definitiva, definirán el número total de vértices de la figura 3D generada. Para almacenar los vértices, una posible estructura podría ser la siguiente: Pág. 17 de 19
18 typedef struct { double x, y, z; } punto3d; punto3d * vectorvertices; vectorvertices = (punto3d *) malloc(sizeof(punto3d) * numpuntos * (numvertices + 1)); donde numpuntos es el número de puntos de la figura 2D y numvertices el número de vértices que se generan por cada punto de la figura 2D 7. Trabajo a desarrollar: Desarrollar el código necesario para inicializar el vectorvertices con los valores adecuados surgidos por el barrido rotacional de la figura 2D vista anteriormente. Hay que tener en cuenta que los vértices son puntos 3D y los puntos de la figura son originalmente 2D. Una forma de rellenar el vectorvertices podría ser la siguiente: k = 0; for (i = 0; i < numpuntos; i++) for (j = 0; j < numvertices + 1; j++) { vectorvertices[k].x =... vectorvertices[k].y =... vectorvertices[k].z =... k++; } Se ha dejado en puntos suspensivos el cálculo del vértice a partir del vector de puntos de la figura 2D. 7.3 Visualización del resultado Nuestro trabajo no termina con el cálculo y almacenamiento de los vértices. La visualización del objeto 3D no es un proceso directo. Partiendo del programa inicial, debemos substituir el dibujo de la tetera por una o varias parejas de instrucciones glbegin y glend. Mostrar el objeto 3D como un modelo alámbrico, implica el correcto lanzamiento del dibujo de líneas a partir de los vértices almacenados. Trabajo a desarrollar: Revisar las diferentes posibilidades de glbegin, y decidir la forma de trazar el modelo 3D almacenado de forma que generemos una visualización del tipo alámbrico. En la siguiente figura podemos ver una vista del modelo generado: 7 Cada punto 2D va a generar por rotación un total de numvertices puntos. Sumamos uno a numvertices para facilitar su posterior visualización y que el primer punto quede también incluido como último. Pág. 18 de 19
19 8 Integrando la práctica 2 y 3 La última tarea de la práctica consiste en la integración de nuestra herramienta de dibujo y nuestro generador de modelos por barrido rotacional. Esta integración puede llevarse a cabo mediante la ampliación de la aplicación de dibujo. Si en la aplicación de dibujo se traza (exclusivamente) una polilínea, podemos traducirla como un conjunto de puntos de entrada para el barrido rotacional. En este caso, y mediante la definición de una nueva herramienta (y su botón), podemos visualizar en una nueva ventana el modelo 3D generado, y habilitar sobre esta nueva ventana las mismas herramientas de cambio de vista que se han desarrollado en el presente práctica. Pág. 19 de 19
3.- Vista Tridimensional.
3.- Vista Tridimensional. 3.1.- Proceso de vista 3D 3.2.- Comandos de transformaciones de propósito general 3.3.- Transformaciones de modelo y vista 3.4.- Transformaciones de proyección 3.5.- Transformaciones
El pipeline gráfico Figura 3.1
El pipeline gráfico Para llevar a cabo una representación virtual de un ambiente tridimensional, se realiza un modelado del escenario. Dicho modelo incluye la representación geométrica de los objetos presentes,
Cámara. Práctica 5. 5.1. Introducción. 5.1.1. Proyección
Práctica 5 Cámara 5.1. Introducción En esta práctica se aborda la creación de la cámara virtual, esto es, el medio o forma mediante el cual vamos a poder observar los elementos de la escena. De nuevo,
Módulo I - Word. Iniciar Word... 2. Finalizar Word... 3. Definición de elementos de pantalla... 4. Escribir texto en un documento... 5. El cursor...
Módulo I - Word Índice Iniciar Word... 2 Finalizar Word... 3 Definición de elementos de pantalla... 4 Escribir texto en un documento... 5 El cursor... 5 Control de párrafos... 5 Nuevos párrafos... 5 Abrir
1. INTRODUCCIÓN A OPENGL: DIBUJANDO UNA TORTUGA CON OPENGL
1. INTRODUCCIÓN A OPENGL: DIBUJANDO UNA TORTUGA CON OPENGL 1.1 QUÉ ES OPENGL? Qué es OpenGL? OpenGL es una interfaz software de harware gráfico, es decir define las funciones que se pueden utilizar en
Actividades con GeoGebra
Conectar Igualdad - "Netbooks Uno a Uno" Actividades con GeoGebra Nociones básicas, rectas Silvina Ponce Dawson Introducción. El GeoGeobra es un programa que permite explorar nociones matemáticas desde
I.E.S. ANDRÉS DE VANDELVIRA DEPARTAMENTO DE TECNOLOGÍA SISTEMAS DE REPRESENTACIÓN GRÁFICA: PERSPECTIVA. J.Garrigós
I.E.S. ANDRÉS DE VANDELVIRA DEPARTAMENTO DE TECNOLOGÍA J.Garrigós I.E.S. ANDRÉS DE VANDELVIRA DEPARTAMENTO DE TECNOLOGÍA 1 1.INTRODUCCIÓN Los sistemas de representación en perspectiva, tienen como objetivo
TEMA 1: REPRESENTACIÓN GRÁFICA. 0.- MANEJO DE ESCUADRA Y CARTABON (Repaso 1º ESO)
TEMA 1: REPRESENTACIÓN GRÁFICA 0.- MANEJO DE ESCUADRA Y CARTABON (Repaso 1º ESO) Son dos instrumentos de plástico transparente que se suelen usar de forma conjunta. La escuadra tiene forma de triángulo
TIPOS DE RESTRICCIONES
RESTRICCIONES: Las restricciones son reglas que determinan la posición relativa de las distintas geometrías existentes en el archivo de trabajo. Para poder aplicarlas con rigor es preciso entender el grado
Roberto Quejido Cañamero
Crear un documento de texto con todas las preguntas y respuestas del tema. Tiene que aparecer en él todos los contenidos del tema. 1. Explica qué son los modos de presentación en Writer, cuáles hay y cómo
Draw: objetos en 3D, diagramas de flujo y exportación
1 de 15 30/11/2010 22:11 Draw: objetos en 3D, diagramas de flujo y exportación Draw es una herramienta de dibujo gráfico vectorial, aunque puede hacer algunas operaciones sobre graficos rasterizados. Ofrece
Operación de Microsoft Excel
Representación gráfica de datos Generalidades Excel puede crear gráficos a partir de datos previamente seleccionados en una hoja de cálculo. El usuario puede incrustar un gráfico en una hoja de cálculo,
Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)
Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.
La composición de una imagen, reglas
Componer una fotografía Saber mirar, algo que resulta difícil en fotografía pero a la vez indispensable para obtener buenas fotografías. Para ello se requiere sobre todo aprender a mirar. Para qué queremos
La ventana de Microsoft Excel
Actividad N 1 Conceptos básicos de Planilla de Cálculo La ventana del Microsoft Excel y sus partes. Movimiento del cursor. Tipos de datos. Metodología de trabajo con planillas. La ventana de Microsoft
Transformaciones con OpenGL
Transformaciones con OpenGL Pipeline:Transformaciones Transformaciones! Las operaciones con matrices en OpenGL glmatrixmode( GLenum mode ); mode: GL_MODELVIEW, GL_PROJECTION, GL_TEXTURE Es utilizada para
COORDENADAS CURVILINEAS
CAPITULO V CALCULO II COORDENADAS CURVILINEAS Un sistema de coordenadas es un conjunto de valores que permiten definir unívocamente la posición de cualquier punto de un espacio geométrico respecto de un
Trabajar con diapositivas
Trabajar con diapositivas INFORMÁTICA 4º ESO POWERPOINT Una vez creada una presentación podemos modificarla insertando, eliminando, copiando diapositivas, Insertar una nueva diapositiva.- Para insertar
Cómo creo las bandejas del Registro de Entrada /Salida y de Gestión de Expedientes?
Preguntas frecuentes Cómo creo las bandejas del Registro de Entrada /Salida y de Gestión de Expedientes? Atención! Esta opción es de configuración y solamente la prodrá realizar el administrador de la
Introducción a Inkscape
Introducción a Inkscape Introducción...2 Primeros pasos con InkScape...3 Entorno de InkScape...3 Operaciones básicas...7 Fijando el color de trazo y fondo...7 El zoom...7 Mover, escalar y girar...8 Cuadro
Centro de Capacitación en Informática
Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.
Illustrator CS4: guía de maquetación
Paso 1 de 12 En este tutorial vamos a ver cómo hacer un banner de página web. Al hacer este banner de página web aprenderemos varias técnicas de dibujo, como la utilización de la herramienta Elipse, la
Para ingresar a la aplicación Microsoft PowerPoint 97, los pasos que se deben seguir pueden ser los siguientes:
Descripción del ambiente de trabajo Entrar y salir de la aplicación Para ingresar a la aplicación Microsoft PowerPoint 97, los pasos que se deben seguir pueden ser los siguientes: A través del botón :
CÓMO CREAR NUESTRO CATÁLOGO
CÓMO CREAR NUESTRO CATÁLOGO Mediante la aplicación (http://www.prensasoft.com/programas/conline) podemos crear nuestros propios catálogos. Para crear un catálogo necesitamos: - Varios productos que mostrar,
01 Índice. GESTOR DE CONTENIDOS Manual de uso 01 ÍNDICE... 1 02 OBJETO DEL DOCUMENTO... 2 03 ESTRUCTURA GRÁFICA DEL SISTEMA... 3
01 Índice 01 ÍNDICE..... 1 02 OBJETO DEL DOCUMENTO..... 2 03 ESTRUCTURA GRÁFICA DEL SISTEMA..... 3 04 GESTIÓN DE TABLAS..... 5 05 USO DE TABLAS EN ENVIDUR..... 15 06 GESTIÓN DE FUNCIONALIDAD ADICIONAL.
Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation.
WINDOWS Windows, Es un Sistema Operativo. Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. Dentro de los tipos de Software es un tipo de software de Sistemas. Windows
13.1. Tablas dinámicas de Excel
13.1. Tablas dinámicas de Excel Una tabla dinámica consiste en el resumen de un conjunto de datos, atendiendo a varios criterios de agrupación, representado como una tabla de doble entrada que nos facilita
Diagrama de Gantt en Excel
Diagrama de Gantt en Excel Si pensabas que crear un Diagrama de Gantt en Excel es complicado, en este artículo te mostramos que puede ser muy sencillo en realidad. Tan sólo necesitarás un par de trucos
TEMA 1: DISEÑO Y DIBUJO DE OBJETOS.
TEMA 1: DISEÑO Y DIBUJO DE OBJETOS. Francisco Raposo Tecnología 3ºESO 1. LA REPRESENTACIÓN DE OBJETOS 1.1.EL DIBUJO TÉCNICO Es una de las técnicas que se utilizan para describir un objeto, con la intención
GENERACIÓN DE TRANSFERENCIAS
GENERACIÓN DE TRANSFERENCIAS 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de transferencias permite generar fácilmente órdenes para que la Caja efectúe transferencias, creando una base
Funciones, x, y, gráficos
Funciones, x, y, gráficos Vamos a ver los siguientes temas: funciones, definición, dominio, codominio, imágenes, gráficos, y algo más. Recordemos el concepto de función: Una función es una relación entre
Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos:
UNIDAD 8 Presentaciones Reunión. (ITE. Banco de imágenes) as presentaciones son documentos formados por una sucesión de páginas, llamadas diapositivas, que transmiten información estructurada de manera
Introducción al diseño híbrido con ZW3D
Introducción al diseño híbrido con ZW3D Con este tutorial podrá aprender el diseño 3D con un programa CAD 3D híbrido de modelado de sólidos y superficies combinadas. El objetivo es dibujar un grifo en
Imprimir códigos de barras
Imprimir códigos de barras Al igual que en Abies 1, podemos definir el papel de etiquetas que vamos a utilizar. Se nos dan tres tipos de etiquetas ya creadas, que podemos modificar o eliminar, para lo
Qcad. Es un programa de diseña asistido por ordenador en 2 dimensiones.
Qcad Es un programa de diseña asistido por ordenador en 2 dimensiones. 1. La ventana del Qcad Barra de títulos Barra de menús Barra de herramientas Área de dibujo Barra de herramientas de dibujo Barra
Programa Tracker : Cómo generar Vectores y sumarlos
Programa Tracker : Cómo generar Vectores y sumarlos Esta guía explica cómo usar vectores, la posibilidad de sumarlos, presentar los resultados directamente en pantalla y compararlos de forma gráfica y
5.4. Manual de usuario
5.4. Manual de usuario En esta sección se procederá a explicar cada una de las posibles acciones que puede realizar un usuario, de forma que pueda utilizar todas las funcionalidades del simulador, sin
MANUAL DE USUARIO Y EJEMPLO DE UTILIZACIÓN HERRAMIENTA DLP-DELPHI LEARNING PACKAGE
MANUAL DE USUARIO Y EJEMPLO DE UTILIZACIÓN HERRAMIENTA DLP-DELPHI LEARNING PACKAGE PROFESOR: Creación y puesta en marcha de un proceso de aprendizaje Delphi: En esta fase el profesor debe realizar las
SISTEMAS DE NUMERACIÓN
SISTEMAS DE NUMERACIÓN EL SISTEMA DECIMAL Es el sistema usado habitualmente en todo el mundo. Según los antropólogos, el origen del sistema decimal está en los diez dedos que tenemos los humanos en las
Traslaciones, Homotecias, Giros y Simetrías
Traslaciones, Homotecias, Giros y Simetrías Traslaciones Nombre e indicación Comando equivalente Vector entre Dos puntos Vector [A, B] Seleccionamos el icono correspondiente a la herramienta Vector entre
Capítulo 10. Gráficos y diagramas
Capítulo 10. Gráficos y diagramas 1. Introducción Los gráficos y diagramas que se acostumbran a ver en libros e informes para visualizar datos estadísticos también se utilizan con propósitos cartográficos,
Autodesk inventor 2010-2011
Autodesk inventor 2010-2011 INDICE -CREACIÓN DE PROTOTIPOS DIGITALES... 3 - INVENTOR 2010 Y 2011... 4 -CREACÍON DE IPARTS EN INVENTOR... 47 Autodesk inventor. Prototipage digital Autodesk inventor. Prototipage
Apoyo para la preparación de los estudios de Ingeniería y Arquitectura Física (Preparación a la Universidad) Unidad 4: Vectores
Apoyo para la preparación de los estudios de Ingeniería y Arquitectura Física (Preparación a la Universidad) Unidad 4: Vectores Universidad Politécnica de Madrid 5 de marzo de 2010 2 4.1. Planificación
Ministerio de Educación. Diseño de Presentaciones en la Enseñanza. Módulo 4: Tipos de gráficos
Ministerio de Educación Diseño de Presentaciones en la Enseñanza Módulo 4: Tipos de gráficos Instituto de Tecnologías Educativas 2011 Diseño de Presentaciones en la Enseñanza (OpenOffice) Tipos de gráficos
Accesibilidad web GUÍA FUNCIONAL
Accesibilidad web GUÍA FUNCIONAL 0 _ ÍNDICE 01_Introducción 02_Primeros pasos 03_Conceptos 04_Navegación por voz 05_Navegación por teclado 06_Navegación por sonido 07_Compatibilidad con lectores de pantalla
INDUCCION PIZARRAS TRACE BOARD TRECE BOOK
INDUCCION PIZARRAS TRACE BOARD TRECE BOOK USANDO LA PIZARRA Conexión Verificar conexión, pizarra computador. En la parte trasera de la pizarra se encuentra una pequeña caja con una luz verde indicando
Indicaciones específicas para los análisis estadísticos.
Tutorial básico de PSPP: Vídeo 1: Describe la interfaz del programa, explicando en qué consiste la vista de datos y la vista de variables. Vídeo 2: Muestra cómo crear una base de datos, comenzando por
TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS
TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS 1) EL PEQUEÑO EDITOR El Bloc de notas de Windows XP es un básico editor de texto con el que podemos escribir anotaciones, de hasta 1024 caracteres por línea y
EL PROGRAMA DE PRESENTACIONES IMPRESS (I)
Bollullos del Cdo. (Huelva) Centro TIC/DIG EL PROGRAMA DE PRESENTACIONES IMPRESS (I) Introducción Básicamente Impress es un programa de presentaciones proyectadas a través de diapositivas (pantallas completas)
Guía de uso del Cloud Datacenter de acens
guíasdeuso Guía de uso del Cloud Datacenter de Calle San Rafael, 14 28108 Alcobendas (Madrid) 902 90 10 20 www..com Introducción Un Data Center o centro de datos físico es un espacio utilizado para alojar
1. Duplicar la capa de fondo:
1. Duplicar la capa de fondo: Con nuestra foto recién abierta en el Photoshop, lo primero que tenemos que hacer es hacer una copia de nuestra capa de fondo, que es la capa que contiene nuestra foto y en
REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS
REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS Servicio DNS - 1 - Servicio DNS...- 3 - Definición... - 3 - Instalación... - 5 - Configuración del Servidor DNS...- 10 - - 2 - Servicio DNS Definición
ENTORNO DE TRABAJO DE WORD 2007
ENTORNO DE TRABAJO DE WORD 2007 Esta nueva versión de Office no contiene las 4 barras que son comunes a versiones anteriores, en esta ocasión solo contiene una barra llamada barra de título, una banda
Estadística con Excel Informática 4º ESO ESTADÍSTICA CON EXCEL
1. Introducción ESTADÍSTICA CO EXCEL La estadística es la rama de las matemáticas que se dedica al análisis e interpretación de series de datos, generando unos resultados que se utilizan básicamente en
CASO PRÁCTICO DISTRIBUCIÓN DE COSTES
CASO PRÁCTICO DISTRIBUCIÓN DE COSTES Nuestra empresa tiene centros de distribución en tres ciudades europeas: Zaragoza, Milán y Burdeos. Hemos solicitado a los responsables de cada uno de los centros que
BARRA DE HERRAMIENTAS DE BOCETO:
INTRODUCCIÓN: Autodesk Inventor es un sistema de modelado sólido basado en operaciones geométrica, que proporciona todas las herramientas necesarias para ejecutar proyectos de diseño, desde el primer boceto
Nuestros proyectos tecnológicos suelen tener una parte física, un cuerpo que necesitamos preparar, diseñar, montar, construir, etc.
Nuestros proyectos tecnológicos suelen tener una parte física, un cuerpo que necesitamos preparar, diseñar, montar, construir, etc. Para poder realizar la parte física necesitamos plasmar nuestras ideas
Winplot DIBUJAR LA GRÁFICA DE UNA FUNCIÓN. Ventana > 2-dim: aparece la ventana sinnombre1.wp2. Ecua > Explícita: aparece la ventana de edición y=f(x).
1 DIBUJAR LA GRÁFICA DE UNA FUNCIÓN Winplot Ventana > 2-dim: aparece la ventana sinnombre1.wp2. Ecua > Explícita: aparece la ventana de edición y=f(x). En el recuadro f(x)= se escribe la expresión de la
Comentario sobre el entorno de desarrollo Microsoft Visual Studio 2005 Juan Manuel Lucas
Comentario sobre el entorno de desarrollo Microsoft Visual Studio 2005 Juan Manuel Lucas Introducción El entorno de desarrollo Visual Studio 2005 o 2008 es una potente herramienta desarrollada por Microsoft
Introducción al Programa ImageJ
Introducción al Programa ImageJ Autor Darío Kunik Contacto [email protected] El ImageJ es una herramienta muy interesante para el procesado de imágenes. Se pueden hacer operaciones muy sencillas sobre imágenes
Tema 2. Espacios Vectoriales. 2.1. Introducción
Tema 2 Espacios Vectoriales 2.1. Introducción Estamos habituados en diferentes cursos a trabajar con el concepto de vector. Concretamente sabemos que un vector es un segmento orientado caracterizado por
1.- MENU DE CONTROL O MENU VENTANA: permite cerrar la ventana cambiarla de tamaño y pasar a otra ventana
EXCEL PRÓLOGO Microsoft Excel es una hoja de cálculo de gran capacidad y fácil uso. Excel no solo es una hoja de calculo, sino también tiene capacidad para diseñar bases de datos (listas) de forma totalmente
MICROSOFT WORD 2007 AVANZADO. Unidad Didáctica Nº 1
MICROSOFT WORD 2007 AVANZADO Unidad Didáctica Nº 1 I Tablas A) Explicación conceptual y de uso de una tabla B) Creación de tablas C) Trabajo con tablas D) Formato de las tablas Ejercicio de Repaso Portal
Definición de vectores
Definición de vectores Un vector es todo segmento de recta dirigido en el espacio. Cada vector posee unas características que son: Origen: O también denominado Punto de aplicación. Es el punto exacto sobre
TABLAS Y GRÁFICOS DINÁMICOS
TABLAS Y GRÁFICOS DINÁMICOS Una tabla dinámica nos permite modificar el aspecto de una lista de elementos de una forma más m s fácil, f cómoda c y resumida. Además, podemos modificar su aspecto y mover
Ajustes de sombras. 1) Añadir localización
Ajustes de sombras El cuadro de diálogo "Ajustes de sombras" se utiliza para controlar las funciones de proyección de sombras de SketchUp, incluyendo su visibilidad, la fecha y la hora, la posición geográfica
Tema 6: Introducción a los gráficos en 3 dimensiones
Tema 6: Introducción a los gráficos en 3 dimensiones 1. Introducción Matlab está preparado para realizar diversos tipos de gráficos en tres dimensiones. Ya se ha comentado que por las características del
6. VECTORES Y COORDENADAS
6. VECTORES Y COORDENADAS Página 1 Traslaciones. Vectores Sistema de referencia. Coordenadas. Punto medio de un segmento Ecuaciones de rectas. Paralelismo. Distancias Página 2 1. TRASLACIONES. VECTORES
Manual de la aplicación de seguimiento docente en la UJI
Manual de la aplicación de seguimiento docente en la UJI Introducción El objetivo del presente documento es, fundamentalmente, informar al PDI sobre el funcionamiento de la aplicación informática de apoyo
1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE
MANUAL DE USUARIO DE ABANQ 1 Índice de contenido 1 ÁREA DE FACTURACIÓN......4 1.1 ÁREA DE FACTURACIÓN::PRINCIPAL...4 1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA...4 1.1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA::General...4
A continuación se describen cuáles son los elementos principales de las tablas, cómo crear una y cómo modificarla.
4. TABLAS A continuación se describen cuáles son los elementos principales de las tablas, cómo crear una y cómo modificarla. 4.1. Principales Elementos Al momento de generar y diseñar una tabla es importante
Muchas veces hemos visto un juego de billar y no nos percatamos de los movimientos de las bolas (ver gráfico 8). Gráfico 8
Esta semana estudiaremos la definición de vectores y su aplicabilidad a muchas situaciones, particularmente a las relacionadas con el movimiento. Por otro lado, se podrán establecer las características
PATRONES DE SOMBRA MANUAL DE USUARIO APLICACIÓN PARA DISPOSITIVOS ANDROID VERSIÓN 1.0. Carlos Tascón. Abril 2.013
PATRONES DE SOMBRA VERSIÓN 1.0 MANUAL DE USUARIO APLICACIÓN PARA DISPOSITIVOS ANDROID Carlos Tascón Abril 2.013 INDICE 1.PRESENTACIÓN... 1 2.DEFINICIÓN DE PATRÓN DE SOMBRAS...2 2.1.Carta solar... 2 2.2.Representación
Crear presentaciones con Impress de OpenOffice
Pintura de Acción. Expresionismo abstracto: Resinas acrílicas y píxeles en la Web 2.0. Aprender y compartir con blogs, podcasts, videos, en la Red como plataforma Crear presentaciones con Impress de OpenOffice
CAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de
CAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de cualquier modelo en el software Algor. La preparación de un modelo,
open green road Guía Matemática TRANSFORMACIONES ISOMÉTRICAS tutora: Jacky Moreno .cl
Guía Matemática TRANSFORMACIONES ISOMÉTRICAS tutora: Jacky Moreno.cl 1. Transformaciones isométricas Las transformaciones geométricas están presentes en diversos campos de la actividad humana así como
DISEÑADOR DE ESCALERAS
DISEÑADOR DE ESCALERAS Guia del usuario DesignSoft 1 2 DISEÑADOR DE ESCALERAS El Diseñador de Escaleras le hace más fácil definir y colocar escaleras personalizadas en su proyecto. Puede empezar el diseñador
GENERACIÓN DE ANTICIPOS DE CRÉDITO
GENERACIÓN DE ANTICIPOS DE CRÉDITO 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de anticipos de crédito permite generar fácilmente órdenes para que la Caja anticipe el cobro de créditos
Gestión de Retales WhitePaper Noviembre de 2009
Gestión de Retales WhitePaper Noviembre de 2009 Contenidos 1. Introducción 3 2. Almacén de retales 4 3. Propiedades de los materiales 6 4. Alta de retales 8 5. Utilización de retales en un lote de producción
CREACIÓN DE PLANOS A PARTIR DE MODELOS 3D DE PIEZAS
CREACIÓN DE PLANOS A PARTIR DE MODELOS 3D DE PIEZAS Las últimas versiones de Autocad tienen herramientas que facilitan tanto la obtención de planos de modelos 3D de piezas como su representación, una vez
GedicoPDA: software de preventa
GedicoPDA: software de preventa GedicoPDA es un sistema integrado para la toma de pedidos de preventa y gestión de cobros diseñado para trabajar con ruteros de clientes. La aplicación PDA está perfectamente
Paso 1 de 13. Paso 2 de 13. Guía de aprendizaje de Flash CS5 Tutorial 3. Creación de un logotipo textual.
Guía de aprendizaje de Flash CS5 Tutorial 3. Creación de un logotipo textual. Paso 1 de 13 En este tutorial vamos a crear un logotipo basado en un texto al que aplicaremos algunos efectos utilizando filtros
MCBtec Mas información en
MCBtec Mas información en www.mcbtec.com INTRODUCCIÓN A LA SIMULACION POR ORDENADOR Indice: Objetivo de este texto. Simulación por ordenador. Dinámica y simulación. Ejemplo disparo de un proyectil. Ejemplo
CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP
CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP Características del Explorador de Windows El Explorador de Windows es una de las aplicaciones más importantes con las que cuenta Windows. Es una herramienta indispensable
Como veremos a continuación, llegaremos a desarrollar diferentes montajes de video a través de 3 tareas básicas:
Edición de video Windows Movie Maker 1º.- Introducción Windows Movie Maker es editor de video que aúna sencillez, versatilidad y modo de trabajo intuitivo, que se incluye en las últimas versiones del sistema
ESCUELA SUPERIOR DE INFORMATICA Prácticas de Estadística UNA SESIÓN EN SPSS
UNA SESIÓN EN SPSS INTRODUCCIÓN. SPSS (Statistical Product and Service Solutions) es un paquete estadístico orientado, en principio, al ámbito de aplicación de las Ciencias sociales, es uno de las herramientas
Ecuaciones de primer grado con dos incógnitas
Ecuaciones de primer grado con dos incógnitas Si decimos: "las edades de mis padres suman 120 años", podemos expresar esta frase algebraicamente de la siguiente forma: Entonces, Denominamos x a la edad
Redes de área local: Aplicaciones y servicios WINDOWS
Redes de área local: Aplicaciones y servicios WINDOWS 4. Servidor DNS 1 Índice Definición de Servidor DNS... 3 Instalación del Servidor DNS... 5 Configuración del Servidor DNS... 8 2 Definición de Servidor
PRÁCTICA - I DETERMINACION DE LOS ELEMENTOS CARDINALES DE UN SISTEMA ÓPTICO
PRÁCTICA - I DETERMINACION DE LOS ELEMENTOS CARDINALES DE UN SISTEMA ÓPTICO 1- OBJETIVO Y FUNDAMENTO TEORICO A efectos de cálculo, el comportamiento paraxial de un sistema óptico puede resumirse en el
MÓDULO 2: TRATAMIENTO DE DATOS CON HOJA DE CÁLCULO. Tema 1: Gestión de listas de datos y tablas dinámicas. Leire Aldaz, Begoña Eguía y Leire Urcola
MÓDULO 2: TRATAMIENTO DE DATOS CON HOJA DE CÁLCULO Tema 1: Gestión de listas de datos y tablas dinámicas Leire Aldaz, Begoña Eguía y Leire Urcola Índice del tema - Introducción a las listas de datos -
Operación Microsoft Access 97
Trabajar con Controles Características de los controles Un control es un objeto gráfico, como por ejemplo un cuadro de texto, un botón de comando o un rectángulo que se coloca en un formulario o informe
port@firmas V.2.3.1 Manual de Portafirmas V.2.3.1
Manual de Portafirmas V.2.3.1 1 1.- Introducción 2.- Acceso 3.- Interfaz 4.- Bandejas de peticiones 5.- Etiquetas 6.- Búsquedas 7.- Petición de firma 8.- Redactar petición 9.- Firma 10.- Devolución de
WINDOWS 2008 5: TERMINAL SERVER
WINDOWS 2008 5: TERMINAL SERVER 1.- INTRODUCCION: Terminal Server proporciona una interfaz de usuario gráfica de Windows a equipos remotos a través de conexiones en una red local o a través de Internet.
15 CORREO WEB CORREO WEB
CORREO WEB Anteriormente Hemos visto cómo funciona el correo electrónico, y cómo necesitábamos tener un programa cliente (Outlook Express) para gestionar los mensajes de correo electrónico. Sin embargo,
FUNCIONES CUADRÁTICAS Y RACIONALES
www.matesronda.net José A. Jiménez Nieto FUNCIONES CUADRÁTICAS Y RACIONALES 1. FUNCIONES CUADRÁTICAS. Representemos, en función de la longitud de la base (), el área (y) de todos los rectángulos de perímetro
El e-commerce de Grupo JAB es una herramienta que permite a los clientes del Grupo, realizar un amplio conjunto de servicios de consulta, petición y
El de Grupo JAB es una herramienta que permite a los clientes del Grupo, realizar un amplio conjunto de servicios de consulta, petición y compra en los diversos almacenes del Grupo JAB. En concreto podremos:
Este programa mueve cada motor de forma independiente, y cuando termina una línea pasa a la siguiente.
1 Programa 1 Utilizando el icono añadimos un movimiento a por cada línea de programa. Podremos usar 8 posibles líneas de programa (Base, Hombro, Codo, Muñeca, Pinza, Salida 1, Salida 2 y línea en blanco).
INSTRUCTIVO PARA LA CREACIÓN DE PÓSTER DIGITAL CON PowerPoint Versión 2010
INSTRUCTIVO PARA LA CREACIÓN DE PÓSTER DIGITAL CON PowerPoint Versión 2010 Abrir el programa PowerPoint desde el menú INICIO TODOS LOS PROGRAMAS MICROSOFT OFFICE MICROSOFT OFFICE POWERPOINT (Fig. 1) (Fig.
