2.1 Trazo de líneas rectas
Linea Recta:
En geometría euclidiana, la recta o la línea recta, se extiende en una misma dirección, existe en una sola dimensión y contiene infinitos puntos; está compuesta de infinitos segmentos (el fragmento de línea más corto que une dos puntos). También se describe como la sucesión continua e indefinida de puntos en una sola dimensión, es decir, no posee principio ni fin.
Algoritmo de Bresenham para trazar líneas
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
Polígono
Un polígono es una figura bidimensional compuesta por una secuencia finita de segmentos rectos consecutivos 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.
Polígono
(lados rectos) |
No es un polígono
(tiene una curva) |
No es un polígono (abierto, no cerrado) |
Tipos de polígonos
· Simple o complejo
Un polígono simple sólo tiene un borde que no se cruza con él mismo. Uno complejo se interseca consigo mismo.
Polígono
simple
(este es un pentágono) |
Polígono
complejo
(también es un pentágono) |
· Cóncavo o convexo
Un polígono convexo no tiene ángulos que apunten hacia dentro. En concreto, los ángulos internos no son mayores que 180°.
Si hay algún ángulo interno mayor que 180° entonces es cóncavo.
Convexo
|
Cóncavo
|
· Regular o irregular
Si todos los ángulos son iguales y los lados también, es regular, si no es irregular
Regular
|
Irregular
|
2.3 Transformación bidimensional
2.3.1 Traslación
Una traslación es el movimiento en línea recta de un objeto de una posición a otra.
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:
Una forma de efectuar la traslación de un objeto es aplicándole a cada punto del mismo la ecuación 1. Para trasladar todos los puntos de una línea, simplemente se traslada los puntos extremos.
En la figura se muestra el efecto de trasladar un objeto 3 unidades en x y -4 unidades en y.
Esto se cumple también para el escalamiento y la rotación.
2.3.2 Escalamiento
Una transformación para alterar el tamaño de un objeto se denomina escalación.
Dependiendo del factor de escalación el objeto sufrirá un cambio en su tamaño pasando a ser mayor, o menor en su segmento de longitud.
El escalamiento se hace con un factor sx en el eje x y en un factor sy en el eje y. Escalamiento uniforme sx = sy
Escalamiento diferencial.
La transformación de escalamiento puede expresarse con las siguientes multiplicaciones
En forma matricial
Se escala a ½ en el eje x y a ¼ en el eje y .
El escalamiento se efectúa con respecto al origen;
2.3.3 Rotación
Para rotar un objeto (en este caso bidimensional), se ha de determinar la cantidad de grados en la que ha de rotarse la figura. Para ello, y sin ningún tipo de variación sobre la figura, la cantidad de ángulo ha de ser constante sobre todos los puntos.
Los puntos también pueden ser rotados un ángulo θ con respecto al origen
En forma matricial
En la figura se muestra la rotación de la casa 45º, con respecto al origen.
2.4 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 este tema consideramos cómo se pueden volver a formular las representaciones de la matriz de modo que se pueden procesar de manera eficiente esas secuencias de transformación. 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.
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.
· Traslaciones
Se se aplican dos vectores de traslación sucesivos (tx1, t y1) y (tx2 , t y2 ) en la posición de coordenadas P, la localización transformada final P, la localización transformada final P’ se calcula como: P'=T(t x2,t2)·T(tx1,ty1)·P}{=T(tx2, 2)·T(t x1,t y1)}{·P
Donde se representan P y P’ como vectores de columna de coordenadas homogéneas. Podemos verificar este resultado al calcular el producto de la matriz para las dos agrupaciones asociativas. Asimismo, la matriz de transformación compuesta para esta secuencia de transformaciones.
· Rotaciones
Dos rotaciones sucesivas que se aplican en el punto P producen la posición transformada P'=R(θ2)·R(θ1){·P}=R(θ2){· (θ1)}·P
Al multiplicar las dos matrices de rotación, podemos verificar que dos rotaciones sucesivas son aditivas
· Escalamiento
La siguiente figura ilustra una secuencia de transformación para producir escalación con respecto de una posición fija seleccionada (xf,f) al utilizar una función de escalación que sólo puede escalar en relación con el origen de las coordenadas

Propiedades de concatenación
La multiplicación de matrices es asociativa. Para tres matrices cualesquiera A, B y C, el producto matricial A·B·C se puede llevar a cabo al multiplicar primero a por B o multiplicar primero B por C:2.35.A · BC=( A· B)·C =A·( B·C)
Por tanto, podemos evaluar los productos matriciales al utilizar una agrupación asociativa ya sea de izquierda a derecha o de derecha a izquierda. Por otro lado, los productos de la transformación tal vez no sean conmutativos. En general el producto matricial A·B no es igual que B·A. Esto significa queremos trasladar y girar un objeto, debemos tener cuidado sobre el sentido en que se evalúa la matriz compuesta.

2.5 Ventana y puerto de visión
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. La figura ilustra el trazo o planimetría de la selección de una imagen que queda dentro del área de ventana en una puerta de visión designada. Esta planimetría se llama transformación de la visión o bien transformación de normalizació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.
Las posiciones de coordenadas que se expresan en coordenadas de dispositivo normalizadas deben convertirse a las coordenadas del dispositivo antes de que un dispositivo de salida específico haga el despliegue. Una rutina específica del dispositivo se incluye en paquetes de gráficas con este fin. La ventaja de emplear coordenadas de dispositivo normalizadas es que el paquete de gráficas es considerablemente independiente del dispositivo. Pueden utilizarse distintos dispositivos de salida ofreciendo los conductores adecuados del dispositivo.
Cambiando la posición de la puerta de visión, los objetos pueden desplegarse en diferentes posiciones en un dispositivo de salida. Asimismo, variando el tamaño de las puertas de visión, el tamaño y las proporciones de los objetos pueden alterarse. Cuando se trazan en forma sucesiva ventanas de diferentes tamaños en una puerta de visión, pueden lograrse efectos de acercamiento. Conforme las ventanas se hacen pequeñas, un usuario puede lograr el acercamiento de alguna parte de una escena para visualizar detalles que no se muestran con las ventanas mayores.
Analógicamente, puede obtener un panorama general más amplio realizando un acercamiento de una sección de escena con ventanas cada vez más mayores. Los efectos de toma panorámica se producen moviendo o desplazando una ventana de tamaño fijo a través de una imagen grande.

Conclusiones :
En esta unidad aprendimos
acerca de los gráficos 2D o bidimensionales. Éstos solo cuentan con 2 propiedades,
largo y ancho, y en un plano, ocuparían los ejes x e y.
Un ejemplo muy de un grafo de
una sola dimensión es una línea, que es una sucesión de puntos infinitos que
cuenta con un punto inicial y un punto final.
Existen diversos algoritmos
para trazar lineas rectas como el Analizador Diferencial Digital, pero uno mas
especializado a lineas rectas es el algoritmo de Bresenham que determina que
pixeles se rellenaran en función al grado de inclinación de la recta.
A partir de estas lineas
rectas unidimensionales podemos crear figuras bidimensionales, como lo son los
polígonos, los cuales están formados por lineas que encierran una determinada
área. A las lineas que forman al polígono se les llama lados o aristas y al
punto donde se unen dos lineas se llama vértice.
Existe una clasificación para
polígonos, si son simples o complejos, cóncavos o convexos (ángulos) o
regulares o irregulares (lados iguales). En este caso, para trazar polígonos en
una computadora, es mas efectivo el algoritmo diferencial digital.
Los objetos bidimensionales
pueden transformarse. Si cambian su posición en el plano, se le llama
Traslación. Si aumenta o disminuye su tamaño, se llama Escalamiento. Si gira o
cambia su posición respecto a los grados de algún punto, se llama Rotación.
Además, para poder visualizar
determinada parte de algún objeto bidimensional, se hace uso de las ventanas o
puerto de visión, los cuales, de determinado objeto creado, permite visualizar
en el monitor un área seleccionada.