Computación Gráfica Diseño asistido por computadora. Uno de los mayores usos de los gráficos por computadora se encuentra en los procesos de diseño, particularmente en la arquitectura e ingenieria, aunque ahora muchos productos se diseñan por computadora. Generalmente se conoce como (CAD, Computer Aided Design, Diseño asistido por computadora) o (CADD, Computer Aided Drafting and Design). Estos métodos se emplean rutinariamente en el diseño de edificios, automóviles, aeronaves, barcos, naves espaciales, computadoras, telas, electrodomésticos y muchos otros productos. Gráficas de presentación. La generación de representaciones gradeas de conjunto de datos o procesos de naturalezas científicas, de ingenieria o de medicina es otra nueva aplicación de los gráficos por computadora. Generalmete esto se conoce como visualización científica. Y el término visnalización de negocios se usa para conjunto de datos relacionados con el comercio, la industría y otras áreas no científicas. Investigadores analístas y demas, frecuentemente necesitan tratar con grandes cantidades de información o estudiar el comportamiento de procesos de elevada complejidad. Las simulaciones numéricas por computadora, por ejemplo normalmente producen grandes cantidades de archivos de datos que contienen miles o incluso de millones de valores. De modo similar, las cámaras de un satélite u otras fuentes de grabación acumulan archivos de datos más rápido de lo que pueden ser interpretados. Rastrear estos grandes conjuntos de números para determinar tendencias y relaciones es un proceso tedioso y totalmente inefectivo. Sin embargo, si los datos se convierten en un formato gráfico, las tendencias y relaciones aparecen inmediatamente. Arte por computadora Tanto el arte puro como el comercial hacen uso de los métodos de los gráficos por computadora los artistas tiene disponible una variedad de métodos y herramientas, incluyendo hardware especializado, paquetes de software comercial (como lumena). Programas de matemáticas simbólica como matemática. Paquetes CAD, sofware de escritorio para publicación y sistemas de animación de proporciona capacidades para diseñar formas de objetos y especificár sus movimientos. Entretenimiento. Las producciónes de televición, las peliculas de cine, y los videos musicales usan de manera rutinaria los gráficos por computadora. Algunas veces estas imagenes se convinan con actores reales y escenas filmadas, a veces la pelicula esta generada mediante rendering/acción por computadora y técninas de animación. Muchas series de televisión utilizan metedos para producir efectos especiales basados en los gráficos por computadora. Algunos programas de televisión utilizan técnicas de animación para convinar figuras de personas, animales o personajes de dibujos animados, generados por computadora con actores reales, también se transforma la cara de un actor en otra forma. Muchos programas también usan los gráficos por computadora para generar edificios, trazos de terreno u otros fondos de escena. Los efectos especiales, las animaciones, personajes y escenas generadas por computadora están ampliamete extendidas en las peliculas de hoy en día. Educación y capacitación Los modelos generados por computadora de sistemas físicos, financieros, políticos, sociales, económicos y otros se usan frecuentemente como ayuda para la educación. Modelos de procesos físicos, psicológicos, tendencias de la población, equipamiento, etc. Puede ayudar a los alumnos a comprender la operación de un sistema. En algunas aplicaciones de formación se necesitan equipos especiales de hardware. Ejemplo de este tipo de sistemas son los simuladores para las sesiones prácticas de formación de capitanes de barco, pilotos de aeronaves, operadores de maquinaria pesadas, personal del control de tráfico aereo. Algunos simuladores no tienen pantallas de video, como por ejemplo un simulador de vuelo con solo un panel instrumental de vuelo. Pero la mayoría de los simuladores proporcionan pantallas para mostrar visualizaciones del entorno exterior. Procesamiento de imágenes. La modilcación o interpretación de imágenes existe en canaies de TV, es conocida como procesamiento de imágenes. Aunque los métodos empleados en los gráficos por computadora y el procesado de imágenes se solapan. Las dos áreas que están dedicadas a operaciones fundamentales diferentes. En los gráficos por computadora, la computadora se utiliza para crear una imágen. Por otra parte las técnicas de procesamiento de imágenes se utilizan para la mejorar la calidad de un dibujo, analizar las imágenes o reconocer patrones visuales para aplicaciones robotizadas. Sin embargo, los métodos de procesamiento de imágenes se utilizan frecuentemente en los gráficos por computadora, y los métodos de los gráficos por computadora se aplican tambien en el procesamiento de imágenes. Por lo general, antes de procesar una imágen o una fotografia, primero se almacena en un archivo de imágenes. Entonces es cuando se pueden aplicar los métodos digitales de reorganización de las partes de la imágenes, para resallar separaciones de color, o mejorar la calidad del sombreado. Un ejemplo de los métodos de procesamiento de imágenes es el realce de la calidad de una imagen. Estas técnicas se usan de manera amplia en las aplicaciones de arte comercial que se implica en el retoque y reestructuración de secciones de fotografias y otras obras artisticas. Técnicas similares se utilizan para analizar las fotografías de la tierra tomada por un satelite y las grabaciones de distribuciones de estrellas en las galaxias hechas por un telescopio. Las aplicaciones médicas también hacen uso de las técnicas de procesamiento de imágenes para el realce de tomografías y simulaciones en operaciones quirurgicas. La lomografa es un tipo de fotografía de rayos X que permiten mostrar vistas de secciones transversales de sistemas fisiológicos. Tomografla computarizada por rayos X (JC), Tomografia emisiva de Posición (TEP) y Tomografta Axial Computarizada (TAC) utilizan métodos computacionales para reconstruir secciones cruzadas a partir de datos digitales. Estas técnicas se utilizan para monitorizar funciones internas y mostrar secciones durante las intervenciónes quirurgicas. Otras técnicas de imágenes médicas incluyen ultrasonido y scaneres médicos nucleares. Con los ultrasonidos, se usan ondas de sonido de alta frecuencia en lugar de rayos X para generar los datos digitales. Clase 2 Unidad II Primitivas de salida ¿Qué son las primitivas de salida? Son objetos gráficos que se generan sobre las diapositivas de salida, están compuestos de primitivas de salida. Las primitivas de salida son los elementos básicos de lo que disponemos para realizar cualquier representación gráfica entre los cuales tenemos el punto, las líneas que son las primeras primitivas de graficación Unas clasificaciones de esta pueden ser las siguientes: Punto Región rellena Imagen Rasterizada Polilinea Texto Estas primitivas gráficas tienen los atributos que son las características que afecta su apariencia. Un atributo (o parámetro de atributo) es cualquier parámetro que afecta la forma en que una primitiva es mostrada Los atributos pueden incorporarse como parámetros a las primitivas y setearse separadamente Primitivas de salida – El punto ¿Qué es el punto? Es la primitiva básica de salida más simple. Se especifican mediante las coordenadas los distintos atributos que pueden tener un punto. Ejemplo: algoritmo para dibujar un punto en OpenGL DibujarPunto(Glintx, Glinty) GL(Begin(GL_points)) GL(Vertex2; (x,y)) GLEnd(); Los distintos atributos que pueden tener un punto son color y su tamaño. Primitivas de salida – Polilineas ¿Qué es una polilinea? Es un segmento de recta y se especifican mediante dos puntos que son el punto inicial y el punto final. Están compuestas de varias líneas cada una de estas se denomina segmento, dos segmentos adyacentes se unen en un vértice. Las polilineas se especifican mediante una secuencia de vértices Primitivas de salida – Líneas Los atributos básicos de los segmentos de línea son: 1. Tipo 2. Ancho 3. Color Para dibujar la recta hay que hallar todos los puntos medios entre el inicial y el final. El problema es que la ubicación de cada pixel se representa con un entero y las posiciones halladas mediante la ecuación son valores reales. Por lo tanto, se necesitan formas eficientes de dibujar la recta lo más parecida posible a la realidad, a pesar de las limitaciones que las pantallas de pixeles nos pongan. Las coordenadas de los píxeles deben estar lo más cerca posible de una línea recta real. Un algoritmo debe cumplir con, la secuencia de píxeles debe ser lo más recta que se pueda, las líneas deben tener el mismo grosor e intensidad sin importar el grado de inclinación, las líneas deben dibujarse lo más rápido posible Algoritmo DDA Busca determinar los valores enteros correspondientes más próximos a la trayectoria de la línea para la otra coordenada. Para una pendiente positiva | m | <= 1, se realiza en muestreo de x en intervalos y se calcula el valor sucesivo de y con la siguiente ecuación: YK + 1 = YK + m El subíndice K crece con razón 1 hasta alcanzar el valor final, y m toma valores entre 0 y 1 reales, los valores de y calculados deben ser redondeados. Si la pendiente es negativa, se utiliza un caso análogo con la siguiente ecuación: XK + 1 = XK + 1/m Algoritmo del punto medio para circunferencias En computación gráfica, el algoritmo del punto medio para circunferencia es un algoritmo usado para determinar los puntos necesarios para rasterizar una circunferencia. El algoritmo se puede generalizar a curvas cónicas. Funcionamiento Una circunferencia se define como un conjunto de puntos que se encuentran, en su totalidad, a una distancia determinada r de posición central. Es posible reducir el cálculo al considerar la simetría de las circunferencias, la forma de la circunferencia es similar entre cuadrantes y simétrica entre octantes Unidad III Transformaciones Bidimensionales Traslación Se aplica una traslación a un objeto para cambiar su posición a lo largo de la trayectoria de una línea recta en una dirección de coordenadas a otra. Convertimos un punto bidimensional al agregar las distancias de traslación tx y ty la posición de coordenadas original (x,y). El par de distancia de una traslación se llama vector de traslación o vector de cambio. Se pueden expresar ecuaciones anteriores en una sola ecuación matricial al utilizar vectores de columna para representar las posiciones de coordenadas y el vector de traslación. Los polígonos se trasladan al sumar el vector de traslación a la posición de coordenadas de cada vértice y se vuelve a generar el polígono utilizando un nuevo conjunto de coordenadas y vértices y las especificaciones actuales de los atributos. Se traslada cada punto P(x,y) dx unidades paralelamente al eje x y dy unidades paralelamente al eje y, hacia el nuevo punto P’(x’,y’). Las ecuaciones quedan: x’ = x + dx y’ = y + dy Si se definen vectores columna queda: 𝑑𝑥 𝑥 𝑥′ P = (𝑦), P’ = (𝑦′), T = ( ) 𝑑𝑦 Entonces la ecuación puede ser expresada como P’ = P + T Una forma de efectuar la traslación de un objeto es aplicándole a cada punto del mismo la ecuación. Para trasladar los puntos de una línea, simplemente se traslada los puntos extremos. Dada la figura – Trasladar el objeto 3 unidades en x, y 4 unidades en y x1’ = x + dy x2’ = x + dy x1’ = 4 + 3 = 7 x2’ = 7 + 3 = 10 y1’ = y + dy y2’ = y + dy y1’ = 5 - 4 = 1 y2’ = 5 – 4 = 1 Escalación o Escalamiento Una transformación de escalación altera el tamaño de un objeto. Se puede realizar esta operación para polígonos al multiplicar los valores de coordenadas (x, y) de cada vértice por los factores de escalación Sx y Sy para producir coordenadas transformadas (x’, y‘) El escalamiento se realiza con un factor Sx en el eje x, y un factor Sy en el eje y. Escalamiento uniforme Sx = Sy Escalamiento diferencial. La transformación de escalamiento puede expresarse con las siguientes multiplicaciones. x’ = Sx . x y’ = Sy . y En forma matricial 𝑥′ 𝑥 𝑆𝑥 0 ( )= [ ] . ( ) <=> 𝑃′ = 𝑆. 𝑃 0 𝑆𝑦 𝑦′ 𝑦 Computación Gráfica Ejercicio: Dado el concepto de escalamiento, escalar x en ½ e y ¼, de la siguiente figura. (Aplicar ecuación) Rotación Se aplica una rotación bidimensional en un objeto al cambiar su posición a lo largo de la trayectoria de una circunferencia en el plano de x e y. Para generar una rotación, especificamos un ángulo de rotación y la posición (xr, yr) del punto de rotación en torno al cual se gira el objeto Los puntos también pueden ser rotados con relación a un ángulo ϴ con respecto al origen x’ = x cos ϴ - y sen ϴ y’ = x sen ϴ + y cos ϴ Ecuación En forma matricial 𝑥′ cos 𝛳 [ ]= [ 𝑦′ 𝑠𝑒𝑛 𝛳 −𝑠𝑒𝑛 𝛳 𝑥 ] . [ ] <=> 𝑃′ = 𝑅. 𝑃 + cos 𝛳 𝑦 Ejemplo rotación de 45°, con respecto al origen Coordenadas homogéneas y representación matricial En las aplicaciones de diseño y de creación de imágenes, realizamos traslaciones, rotaciones y escalaciones para ajustar los componentes de la imagen en sus posiciones apropiadas. En ese concepto consideramos como se puede volver a formular las representaciones de la matriz de modo que se puedan procesar de manera eficiente esas secuencias de transformaciones. Es posible expresar cada una de las transformaciones básicas en la forma de matriz general con las posiciones de coordenadas P y P’ representadas como columnas de vector. Composición de transformaciones bidimensionales Con las representaciones de matriz, podemos establecer una matriz para cualquier secuencia de transformaciones como una matriz de transformación compuesta al calcular el producto de la matriz de las transformaciones individuales. La creación de productos de matrices de transformación a menudo se conoce como concatenación o composición de matrices Rotación del punto pivot general Es la función de girar objetos con respecto al origen de coordenadas, podemos generar casi cualquier punto pivot seleccionado al realizar la siguiente secuencia de operaciones de traslación-rotación-traslación: 1. Se traslada el objeto de modo a que se mueva la posición del punto pivot al origen de las coordenadas 2. Gire el objeto con respecto al origen de las coordenadas Escalación del punto fijo general Significa utilizar una función de escalación que solo pueda escalar en relación con el origen de las coordenadas