miércoles, 18 de septiembre de 2013

UNIDAD 2

GRAFICACION 2D

La computación gráfica 2D es la generación de imágenes digitales por computadora - sobre todo de modelos bidimensionales (como modelos geométricos, texto y imágenes digitales 2D) y por técnicas específicas para ellos. La palabra puede referirse a la rama de las ciencias de la computación que comprende dichas técnicas, o a los propios modelos.
La computación gráfica 2D se utiliza principalmente en aplicaciones que fueron desarrolladas originalmente sobre tecnologías de impresión y dibujo tradicionales, tales como tipografía, cartografía, dibujo técnico, publicidad, etc. En estas aplicaciones, la imagen bidimensional no es sólo una representación de un objeto del mundo real, sino un artefacto independiente con valor semántico añadido; los modelos bidimensionales son preferidos por lo tanto, porque dan un control más directo de la imagen que los gráficos 3D por computadora



 (cuyo enfoque es más semejante a la fotografía que a la tipografía).


2.1 TRAZO DE LINEAS RECTAS



Una línea es una sucesión continua de puntos (trazado), como por ejemplo un trazo o un guion. Las líneas suelen utilizarse en la composición artística, se denomina en cambio «raya» a trazos rectos sueltos, que no forman una figura o forma en particular.

En matemáticas y geometría, línea suele denotar línea recta o curva. 
Otro concepto de línea desde la teoría de Kandinsky es, la línea geométrica es un ente invisible. La línea es un punto en movimiento sobre el plano; al destruirse el reposo del punto este se mueve por el espacio dando origen a la línea.


La línea es el elemento más básico de todo grafismo y uno de los sumamente utilizados. Representa la forma de expresión más sencilla y pura, que a la vez puede ser dinámica y variada. Enrique Lipszyc expresa: la línea que define un contorno es una invención de los dibujantes, ya que en la naturaleza un objeto es distinguido de otro por su diferencia de color o de tono.


FORMAS DE GRAFICAR UNA LINEA
ALGORITMO  DDA (Analizador Diferencial Digital)
Este algoritmo sirve para generar líneas rectas haciendo uso de la pendiente Y y de los incrementos en X,Y. La implementación de hardware o software de un Analizador Diferencial Digital se usa para la interpolación lineal de variables sobre un intervalo entre un punto de comienzo y un punto de fin. Los DDAs se usan para rastreo de lineas, triangulos y polígonos. En la implementación mas simple del algoritmo DDA interpola valores en intervalo [(xinicio, yinicio), (xfin, yfin)] por calculo para cada xi las ecuaciones xi = xi−1+1, yi = yi−1 + Δy/Δx, donde Δx = xfin − xinicio y Δy = yfin − yinicio.

Si m>=0 (pendiente positiva)

  Si m<=1
    de izquierda a derecha
       * muestreo de x (Δx =1)
       * yk+1 = redondeo(yk + m) k=1,2,...
    de derecha a izquierda
       * muestreo de x (Δx =-1)
       * yk+1 = redondeo(yk - m) k=1,2,...
  Si m > 1 (para evitar la aparición de agujeros)
    de izquierda a derecha
       * muestreo de y (Δy =1)
       * xk+1 = redondeo(xk + 1/m) k=1,2,...
    de derecha a izquierda
       * muestreo de y (Δy =-1)
       * xk+1 = redondeo(xk - m) k=1,2,...
Si m<0 (pendiente negativa)
  Si |m|<1
    de izquierda a derecha
       * muestreo de x (Δx =1)
       * yk+1 = redondeo(yk + m) k=1,2,...
    de derecha a izquierda
       * muestreo de x (Δx =-1)
       * yk+1 = redondeo(yk - m) k=1,2,...
  Si |m| > 1 (para evitar la aparición de agujeros)
    de izquierda a derecha
       * muestreo de y (Δy =1)
       * xk+1 = redondeo(xk + 1/m) k=1,2,...
    de derecha a izquierda
       * muestreo de y (Δy =-1)
       * xk+1 = redondeo(xk - m) k=1,2,...     
                       
ALGORITMO DE BRESENHAM
El algoritmo de Bresenham es un algoritmo creado para dibujar rectas en los dispositivos de gráficos  rasterizados, como por ejemplo un monitor de ordenador, que determina qué pixeles se rellenarán, en función de la inclinación del ángulo de la recta a dibujar.
Es un algoritmo preciso para la generación de líneas de ratreo que convierte mediante rastreo las líneas al utilizar solo cálculos incrementales con enteros que se pueden adaptar para desplegar circunferencias y curvas. Los ejes verticales muestran las posiciones de rastreo y los ejes horizontales identifican columnas de pixel.

Si 0<|m|<1
  *Se capturan los extremos de la línea y se almacena el extremo izquierdo en (x0,y0).
  *Se carga (x0,y0) en el bufer de estructura (se traza el primer punto)
  *Se calculan las constantes Δx,Δy, 2Δy y 2Δy-Δx y se obtiene el valor inicial para el
    parametro de decisión p0=2Δy-Δx.
  Para j=0 mientras j<Δx
  *En cada xk a lo largo de la línea, que inicia en k=0 se efectúa la prueba siguiente:
      Si pk<0
          *Trazamos (xk+1,yk).
          *Asignamos pk+1= pk+2Δy.
      Sino
          *Trazamos (xk+1,yk+1).
          *Asignamos pk+1= pk+2Δy-2Δx.
  Fin Para
Si |m|>1
   *Recorremos la dirección en pasos unitarios y calculamos los valores sucesivos   
     de x que se aproximen más a la trayectoria de la línea.

2.2  REPRESENTACIÓN Y TRAZO DE POLÍGONOS

En geometría, un polígono es una figura plana compuesta por una secuencia finita de segmentos rectosconsecutivos que cierran una región en el espacio. Estos segmentos son llamados lados, y los puntos en que se intersecan se llaman vértices. El interior del polígono es llamado área. El polígono es el caso bidimensional del politopo, figura geométrica general definida para cualquier número de dimensiones. a noción geométrica elemental ha sido adaptada de distintas maneras para servir a propósitos específicos. A los matemáticos a menudo les interesan sólo las líneas poligonales cerradas y los polígonos simples (aquellos en los cuales sus lados sólo se intersecan en los vértices), y pueden definir un polígono de acuerdo a ello. Es requisito geométrico que dos lados que se intersecan en un vértice formen un ángulo no llano (distinto a 180º), ya que de otra manera los segmentos se considerarían partes de un lado único; sin embargo, esos vértices podrían permitirse algunas veces. En el ámbito de la computación, la definición de polígono ha sido ligeramente alterada debido a la manera en que las figuras son almacenadas y manipuladas en la computación gráfica para la generación de imágenes.
Un polígono, por la forma de su contorno, se denomina
Simple, si ningún par de aristas no consecutivas se corta.
Complejo, si dos de sus aristas no consecutivas se intersecan.
Convexo, si al atravesarlo una recta lo corta en un máximo de dos puntos, es el que tiene todos sus ángulos menores que 180º.
Cóncavo, si al atravesarlo una recta puede cortarlo en más de dos puntos; es el que tiene uno o varios ángulos mayores que 180º.
Equilátero, si tiene todos sus lados iguales.
Equiángulo, si tiene todos sus ángulos iguales.
Regular, si es equilátero y equiángulo a la vez.
Irregular, si tiene sus ángulos y lados desiguales.
Ortogonal o isotético, si todos sus lados son paralelos a los ejes cartesianos x o y.6
Alabeado, si sus lados no están en el mismo plano.
Estrellado, si se construye a partir de trazar diagonales en polígonos regulares. Se obtienen diferentes construcciones dependiendo de la unión de los vértices: de dos en dos, de tres en tres, etc.


TABLA DE POLÍGONOS

Una vez que el usuario haya definido cada superficie del polígono, el paquete de graficas organiza los datos de entrada en las tablas que utilizaran en el procesamiento y despliegue de las superficies. Las tablas de datos contienen las propiedades geométricas y de atributos del objeto, organizadas para facilitar el procesamiento. Las tablas de datos geométricos contienen coordenadas y parámetros de fronteras para identificar la orientación en el espacio de las superficies poligonales. La información de atributo del objeto incluye designaciones de cualquier modelo de color y sombreado que se aplicara a las superficies.


Los datos geométricos pueden organizarse de varias maneras. Un método adecuado para almacenar información de coordenadas consiste en crea tres listas: una tabla de vértices, una de aristas y una de polígonos. Los valores coordenados de cada vértice del objeto se almacenan en la tabla de vértices. La tabla de aristas enlistan los vértices extremos que definen (a cada arista. Cada polígono se define en la tabla de polígonos como una lista de aristas componentes. Este esquema se ilustra la figura 1.2 para un objeto que consta de dos superficies poligonales. La tabla de polígonos contiene apuntadores que indican la tabla de aristas, la cual, a su vez, contiene apuntadores que señalan los valores coordenados en la tabla de vértices. Cuando en una escena se va a representar más de un objeto, cada uno puede identificarse en una tabla de objetos por medio del conjunto de superficies poligonales en la tabla de polígonos que definen a ese objeto.



El listado de los datos geométricos en tres tablas, como se muestra en la figura 1.2, ofrece una referencia adecuada de los componentes vértices, aristas y polígonos) de un objeto. Así mismo, el objeto puede desplegarse eficazmente mediante el uso de datos de la tabla de aristas para trazar las líneas componentes. Sin la tabla de aristas, el objeto se desplegaría utilizando datos de la tabla de polígonos y esto quiere decir que algunas líneas se trazarían dos veces. Si tampoco se dispusiera de la tabla de vértices, la tabla de polígonos tendría que enlistar coordenadas explicitas de cada uno de los vértices de cada polígono. Toda la información referente a vértices y aristas tendría que reconstruirse a partir de la tabla de polígonos y las posiciones coordenadas se duplicarían para los vértices situados en la frontera de dos o más polígonos.


2.3  TRANSFORMACIÓN BIDIMENSIONAL

Se realiza mediante la inclusión de compensaciones en sus propias coordenadas, para generar una nueva posición de coordenadas.
Las operaciones que se aplican a descripciones geométricas de un objeto para cambiar su posición, orientación o tamaño se llaman transformaciones geométricas.
Transformación de modelado. Dan una descripción jerárquica de un objeto complejo que está compuesto por distintas partes mas simples

2.3.1 TRASLACION

Se aplica una traslación en un objeto para cambiar su posición a lo largo de la trayectoria de una línea recta de 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 traslación se llama vector de traslación o vector de cambio. Se pueden expresar las 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 decoordenadas de cada vértice y se vuelve a generar el polígono utilizando un nuevo conjuntode coordenadas y vértices y las especificaciones actuales de los atributos.

2.3.2  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 s x y s  y para producir las coordenadas transformadas (x’, y’ )

 

2.3.3  ROTACION

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 xy . Para generar una rotación, especificamos un ángulo de rotación θ y la posición (x r , y r ) del punto de rotación (o punto pivote) en torno al cual se gira el objeto.


2.4 REPRESENTACION MATRICIAL

Una animación requiere que los objetos se trasladen y roten en cada fotograma y un diseño CAD requiere muchas transformaciones hasta obtener el resultado final. Debemos formular de forma muy eficiente toda la secuencia de transformaciones.

Cada transformación puede representarse como P’ = P M1+ M2
• La matriz M1 contiene la información de ángulos y factores de escala
• La matriz M2 contiene los términos de traslación asociados al punto fijo y al centro de rotación
• Para producir una secuencia de transformaciones hay que calcular las nuevas coordenadas en cada transformación!
P’’ = P’ M3+ M4= ... = P M1M3+ M2M3+ M4
• Buscamos una solución más eficiente que permita combinar las transformaciones 
para obtener directamente las coordenadas finales a partir de las iniciales

2.5 VENTANA Y PUERTO DE VISIÓN

El puerto de visión es el área de la ventana grafica en la que se colocan las fotografias de la cámara virtual. Normalmente el puerto de visión coincide con toda el área de la ventana grafica, pero es posible tener varios puertos de visón en una sola ventana.
Los programas de aplicaciones definen imágenes en un sistema de coordenadas mundiales. Este puede ser cualquier sistema de coordenadas Cartesianas que un usuario halle conveniente. Las imágenes definidas en coordenadas mundiales son procesadas por el sistema de graficas en coordenadas de dispositivo. Comúnmente, un paquete de graficas permite a un usuario especificar qué área de la definición de la imagen se desplegara y donde se colocara en el dispositivo de despliegue. Podría elegirse una sola área para el dispositivo de despliegue o bien podrían seleccionarse varias áreas. Estas áreas pueden colocarse en localidades aparte del despliegue o bien un área puede servir como una pequeña inserción en un área mayor. Este proceso de transformación implica operaciones para trasladar y escalar áreas seleccionadas y para borrar partes de la imagen que estén fuera de las áreas. Estas operaciones se conocen como colocación de ventanas y recorte.

CONCEPTOS DE COLOCACIÓN DE VENTANAS
Un área rectangular que se especifica en coordenadas mundiales se denomina ventana. El área rectangular en el dispositivo de despliegue en el cual se coloca la ventana se llama puerta de visión

Los límites de la ventana se especifican en coordenadas mundiales. Las coordenadas de dispositivo normalizadas se usan con mayor frecuencia para la especificación de la puerta visión, aunque las coordenadas del dispositivo pueden emplearse si hay solamente un dispositivo de salida en el sistemas. Cuando se usan coordenadas de dispositivo normalizadas, el programador considera el dispositivo de salida como aquel que tiene valores coordenados dentro del intervalo de 0 a 1.





CONCLUSION UNIDAD 2:


Dado a la investigación hecha podemos concluir que la computación grafica específicamente en la graficacion bidimensional ha cobrado mucha fuerza porque desde los conceptos más simples como lo es el trazado de una línea recta podemos notar que no es tan simple como se ve ya que existen diferentes formas de hacerlo que nos brindaran una eficacia distinta, además de todo esto podemos hallar también diferentes métodos para poder trazar las distintas clases de polígonos, así como conocer sus propiedades para poder proceder a realizar una transformación en dos dimensiones en la cual podemos realizar distintas acciones ya que dentro de la rotación, traslación y el escalamiento existe un concepto más profundo de todo lo que comprenden ya que existen muchos fundamentos y una forma más especializada de realizarlos, por último en cuanto a la representación matricial se refiere esto es un campo ya antes estudiado ya que la computación y sobre todo la graficacion por computadora abarca en un sentido amplio la organización de datos en matrices lo que nos lleva a una representación de imágenes y formas por medio de matrices que guardan respectivos datos para poder hacer la representación correspondiente con las correspondientes dimensiones y todo esto para que en el momento de la aplicación final, el despliegue grafico sea adecuado y con un margen y punto de visión adecuado para el usuario donde este pueda gozar de un óptimo manejo de los graficos y su captura.


FUENTES:
http://es.wikipedia.org/wiki/Computaci%C3%B3n_gr%C3%A1fica_2D
http://es.wikipedia.org/wiki/Analizador_Diferencial_Digital_(algoritmo_gr%C3%A1fico)
http://graficacionitca3d.blogspot.mx/2012/03/24-transformacion-ventana-area-de-vista.html
http://garciaoscar10110795.blogspot.mx/p/unidad-iii.html
http://ortiz-aangelica.blogspot.mx/2013/04/investigacion.html
http://es.wikipedia.org/wiki/Pol%C3%ADgono_(geometr%C3%ADa)
http://roble.pntic.mec.es/jarran2/cabriweb/Poligonos.htm
http://arantxa.ii.uam.es/~pedro/graficos/teoria/Primitivas/Primitivas.htm
http://cannes.itam.mx/Alfredo/Espaniol/Cursos/Grafica/Linea.pdf
http://iscitver2011.files.wordpress.com/2011/02/2-6representacic2a6n-matricial-de-transformaciones-tridimensionales.pdf
http://andrewcomputaciongrafic.blogspot.mx/p/transformaciones-geometricas.html
https://sites.google.com/site/materiagraficacion/
http://juangonzalezgraficacion.blogspot.mx/2012/02/trazo-de-lineas-rectas-y-poligonos.html





No hay comentarios.: