40
14 DE OCTUBRE DEL 2013 Flores carrera Cristina

UNIDAD 3 GRAFICACION 3D · Web view14 DE OCTUBRE DEL 2013 UNIDAD 3 GRAFICACION 3DGRAFICACION • Cuando el objeto mismo es una superficie que podemos suponer sin grosor (por ejemplo,

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

14 DE OCTUBRE DEL 2013

Flores carrera Cristina

UNIDAD 3 GRAFICACION 3D

INDICE

3.4LINEAS Y SUPERFICIES CURVAS…………………………………….03

3.3TRANSFORMACIONES TRIDIMENSIONAL………………………05

3.1REPRESENTACION DE OBJETOS EN 3D…………………………..13

CONCLUSION……………………………………………………………………..32

Flores Carrera Cristina Página 2

UNIDAD 3 GRAFICACION 3D

3.1REPRESENTACION DE OBJETOS EN 3D

MODELOS DE SUPERFICIESExisten varias razones para querer representar un objeto mediante un modelo de superficie:• Cuando el objeto mismo es una superficie que podemos suponer sin grosor (por ejemplo, la chapa metálica del capó de un vehículo). Este tipo de representación nos permite visualizar superficies abiertas, mientras que los sólidos se caracterizarán por tener su superficie necesariamente cerrada sobre sí misma.• Cuando tan sólo nos interesa visualizar su aspecto visual externo, sin detalles sobre su estructura interna, aunque el objeto ocupe un cierto volumen.• Cuando deseamos realizar una visualización en tiempo real, y para ello utilizamos hardware o software gráfico que está sólo preparado para visualizar polígonos.En cualquiera de estos casos es conveniente utilizar una representación de la superficie del objeto.En principio la información sobre una superficie debe dar cuenta de su geometría, de sus propiedades visuales (cómo se comporta frente a la luz 1) y quizás también de alguna propiedad física (como la elasticidad) si se va a efectuar una simulación física sobre el objeto.

MODELO POLIÉDRICOConsiste en definir el objeto a través de una superficie formada por polígonos que comparten sus aristas y vértices, es decir, de un poliedro, que puede ser abierto o cerrado. La exigencia de que sea una variedad bidimensional se traduce, en este caso, en la restricción de que los polígonos no se intersectenentre sí excepto en las aristas, y que en una arista no puedan confluir más de dos polígonos. En un vértice

Pueden coincidir cualquier número de polígonos.

SUPERFICIES CURVASLa ventaja de las representaciones poliédricas es que son más adecuadas para la visualización enTiempo real, cuyas técnicas se basan la proyección y rellenado de triángulos. El problema que plantean esQue la mayoría de los objetos no son realmente poliedros, sino que están compuestos por superficiesContinuas y curvadas.Para representar un objeto complejo se puede utilizar una descomposición de la superficie en trozos

Flores Carrera Cristina Página 3

UNIDAD 3 GRAFICACION 3D

O parches (patches) triangulares o cuadrangulares, cada uno de los cuales se suele modelar conSuperficies paramétricas (superficies de Bezier, NURBS...). Esta representación permite modificar laForma de la superficie con mucha facilidad: en lugar de cambiar las coordenadas de un gran número de

Vértices, solo necesitamos cambiar unos cuantos parámetros en las ecuaciones.

MODELO DE SÓLIDOSExisten dos tipos básicos de representaciones:• Representaciones de frontera (boundary rep o b-rep). Se describe la frontera del objetoUtilizando un modelo de superficie con información topológica, tal como vimos en el apartadoAnterior, teniendo en cuenta que esta superficie deberá siempre ser cerrada.• Representaciones sólidas o de volumen. No se emplea la superficie sino que se efectúa unaDescomposición del espacio mismo, indicando qué partes caen dentro o fuera del objeto. EstosMétodos permiten además asignar propiedades no solo a la superficie (por ejemplo, cómoResponde a la iluminación), sino también al interior del objeto. Son los que vamos a estudiar enEste apartado.Al igual que en las superficies formadas por polígonos podían plantear situaciones no regulares,También las representaciones de volumen pueden dar lugar a singularidades (p. ej. objetos de volumenNulo) o incoherencias (p. ej. autointersecciones en las que una misma parte del objeto se representa dos

Veces).

Flores Carrera Cristina Página 4

UNIDAD 3 GRAFICACION 3D

3.3TRANSFORMACIONES TRIDIMENSIONAL

Sistemas de Coordenadas• Una escena 3D se define por los puntos, líneas y planos que la componen• Necesitamos un sistema para poder referenciar las coordenadas, al igual que ocurría en 2 dimensiones• Hace falta un tercer eje, Z, perpendicular al X y al Y• Cualquier punto se describe entonces como una terna de valores (x, y, z)• Para el sentido del eje Z se usa la regla de la mano derecha

Flores Carrera Cristina Página 5

UNIDAD 3 GRAFICACION 3D

Flores Carrera Cristina Página 6

UNIDAD 3 GRAFICACION 3D

Flores Carrera Cristina Página 7

UNIDAD 3 GRAFICACION 3D

Flores Carrera Cristina Página 8

UNIDAD 3 GRAFICACION 3D

Flores Carrera Cristina Página 9

UNIDAD 3 GRAFICACION 3D

Flores Carrera Cristina Página 10

UNIDAD 3 GRAFICACION 3D

Flores Carrera Cristina Página 11

UNIDAD 3 GRAFICACION 3D

3.4LINEAS Y SUPERFICIES CURVAS

LINEAS

La  recta  es una  sucesión infinita o continua de puntos a lineados en una sola dirección. Es una de las primitivas gráficas en computación gráfica viene dada por la ecuación  y= m.x+b , donde m es la pendiente de la recta y v es el corte con el eje y.

Como los pixeles se grafican en posiciones enteras, la línea trazada solo puede aproximar posiciones de líneas reales entre los puntos extremos especificados.

Una línea recta debe dibujarse como una sucesión de pixeles.

Efecto de escalera que se produce cuando se genera una línea como una serie de pixeles .

Flores Carrera Cristina Página 12

UNIDAD 3 GRAFICACION 3D

TRASFORMAR PRIMITIVAS EN PIXELES

Las coordenadas de los pixeles deben estar lo mas cerca posible de una línea recta real.

Un algoritmo debe cumplir con:

*La secuencia de pixeles debe ser lo mas 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.

ALGORITMOS PARA TRAZO DE LINEAS

ALGORITMO DDA

El analizador diferencial digital(DDA) es un algoritmo que sirve para calcular posiciones de pixeles a lo largo de una línea, mediante el uso de la ecuación.

                                                    ∆y=m.∆x

Flores Carrera Cristina Página 13

UNIDAD 3 GRAFICACION 3D

                       

Ecuación básica de la recta y=m.x+b

m es la pendiente y  v es la intersección con el eje y

ALGORITMO DE BRESENHAM

Calcula cual de dos pixeles es el mas cercano a la trayectoria de una línea.

El pixel x(i),y(i) se divide en (xi+1,yi)(xi+1,yi+1) hay que decidir cual pintar calculando la distancia vertical entre el centro de cada pixel y la línea real.

Las  posiciones de los pixeles se representan por las áreas rectangulares  numeradas.

Flores Carrera Cristina Página 14

UNIDAD 3 GRAFICACION 3D

Sección de una retícula de la pantalla donde se desplegara una línea que pasara por:

(Xi,Yi)

De aquí se tiene y=m(xi+1)+b

Definimos: 

d1=y-yi =m(xi+1)+b-yi

d2=(y1+1)-y

=y1+1-m(xi+1)-b

Flores Carrera Cristina Página 15

UNIDAD 3 GRAFICACION 3D

La diferencia es :

Definimos pi como:

Donde c es:

Obtenemos pi+1 de pi

Como:

Flores Carrera Cristina Página 16

UNIDAD 3 GRAFICACION 3D

ATRIBUTOS DE LAS PRIMITIVAS DE SALIDA

Estilo de líneas

*Los atributos de estilo de línea determinan la forma en que se desplegara  una línea por medio de una rutina de trazo de líneas. Los atributos de línea son su tipo, su anchura y su color.

Tipo de línea

Los atributos de línea incluyen las líneas solidas, líneas punteadas con líneas y punteadas.

El método setStrokeStyle permite cambiar el estilo de línea.

Este método acepta los siguientes valores:

a)  Graphics. SOLID - linea solida

b)  Graphics.DOTTED- linea de puntos

     GRAPHICS 2D SETSTROKE

Un objeto basicstroke contiene información sobre la anchura de la línea, estilo de uniones, estilos finales, y estilo de punteado. Esta información se usa cuando se dibuja una Shape  con el método DRAW.

La anchura de línea es la longitud de la línea medida perpendicularmente a su trayectoria. La anchura de la línea se especifica como un valor flota en las unidades de coordenadas de usuario, que es equivalente 1/72 pulgadas cuando se utiliza la transformación por defecto.

Nota:

Para rellenar o puntear un gráfico primitivo, necesitamos hacer dos llamadas separadas a métodos  fill o drawString para rellenar el interior y draw para dibujar el exterior.

Los 3 estilos de línea usados en este ejemplo ancho, estrecho y punteado son ejemplares de:

Flores Carrera Cristina Página 17

UNIDAD 3 GRAFICACION 3D

BasicStroke:

// Sets the Stroke.

...

case 0 : g2.setStroke(new BasicStroke(3.0f)); break;

case 1 : g2.setStroke(new BasicStroke(8.0f)); break;

case 2 : float dash[] = {10.0f};

g2.setStroke(new BasicStroke(3.0f,

BasicStroke.CAP_BUTT,

BasicStroke.JOIN_MITER,

10.0f, dash, 0.0f));

break;

BASICSTROKE SOPORTA 3 ESTILOS DE UNIÓN:

*JOIN_BEVEL

*JOIN_MITER

*JOIN_ROUND

El estilo de finales es la decoración que se aplica cuando un segmento de línea termina.                     

BASICSTROKE soporta 3 estilos de finalización:

*CAP_BUTT

*CAP_ROUND

*CAP_SQUARE

Flores Carrera Cristina Página 18

UNIDAD 3 GRAFICACION 3D

El elemento 0 representa el primer punteado , el elemento 1 el primer espacio , etc. La fase de punteado es un desplazamiento en el patrón de punteado, también especificado en unidades de coordenadas de usuario. La fase de punteado indica que parte del patrón de punteado se aplica al principio de la línea.

SUPERFICIES CURVAS 

Los despliegues tridimensionales de las superficies curvas pueden generarse a partir de un conjunto de entrada de las funciones matemáticas que define las superficies o bien a partir de un conjunto de puntos de datos especificados por el usuario. Cuando se especifican funciones de curvas, un paquete puede emplear las ecuaciones definidoras para localizar y gráfica posiciones de pixeles a lo largo de la trayectoria de la curva, casi igual como sucede con las curvas en dos dimensiones. Un ejemplo de la clase de superficies que pueden generarse a partir de una definición funcional seda en la figura. A partir de un conjunto de datos de entrada, un paquete determina las descripciones funcionales de la curva que mejor se ajusta a los puntos de datos según las restricciones de la aplicación  En la figura 1.7 se muestra un objeto cuya superficies curvas pueden ser definidas por un conjunto de entrada de punto de datos.

Flores Carrera Cristina Página 19

UNIDAD 3 GRAFICACION 3D

Podemos representar una línea curva tridimensional en forma analítica con la pareja de funciones.

y=f(x),    z=g(x)

Con la coordenada x seleccionada como variable independiente.los valores de las variables dependientes yaz se determinan después a partir de las ecuaciones 1.6 a medida que se avanza a través de valores de x de un extremo de la línea al otro. Esta representación tiene algunas desventajas. Si se desea una gráfica alisada, se debe cambiar la variable independiente siempre que la primera derivada (pendiente) de f(x) o bien g (x) se vuelve mayor que 1.Esto significa que se debe verificar continuamente los valores de las derivadas, que pueden volverse infinitas en algunos puntos. Así mismo, las ecuaciones anteriores ofrecen un formato desproporcionado para representar funciones con valores múltiples. Una representación mas propicia de las curvas para las aplicaciones de las gráficas es en términos de ecuaciones paramétricas.

Flores Carrera Cristina Página 20

UNIDAD 3 GRAFICACION 3D

ECUACIONES PARAMETRICAS

Mediante la introducción de un curto parámetro, u, en la descripción coordenada de una curva, se puede expresar cada una de las tres coordenadas cartesianas en forma paramétricas. Cualquier punto de la curva puede representarse entonces por medio de la función vectorial.

p(u)=(x(u),y(u),z(u))

Por lo general, las ecuaciones paramétricas se constituyen de manera que el parámetro se define en el intervalo de 0 a 1.Por ejemplo una circunferencia en el plano xy con centro en el origen coordenado podría definirse en forma paramétricas como:

También son posibles otras formas paramétricas para describir circunferencias y arcos circulares.

En el caso de una curva arbitraria, puede ser difícil idear un conjunto de ecuaciones paramétricas que definen completamente la forma de la curva. Pero cualquier curva puede aproximarse utilizando diferentes conjuntos de funciones paramétricas, sobre partes diferentes de la curva. Por lo general estas aproximaciones se forman con funciones poligonales. Dicha construcción por partes de una curva debe implantarse cuidadosamente para asegurar de que haya transición sencilla de una sección de la curva a la siguiente.la uniformidad de una curva puede describirse a partir de la continuidad de la curva entre las secciones. La continuidad de orden 0 se refiere simplemente a que las curvas se interceptan. Continuidad de

Flores Carrera Cristina Página 21

UNIDAD 3 GRAFICACION 3D

primer orden significa que las líneas tangentes(primeras derivadas) de dos secciones adyacentes de la curva son la misma en el punto de adyacencia. 

Continuidad de segundo orden quiere decir que las curvaturas(segundas derivadas) de las dos secciones de la curva son la misma en la intersección. La figura 1.8 muestra ejemplos de los tres órdenes de continuidad.

Las ecuaciones paramétricas de las superficies se formulan con dos parámetros u y v. Una posición coordenada de una superficie se representa entonces por medio de la función vectorial paramétricas.

p(u,v)= (x(u,v),y(u,v),z(u,v))

Las ecuaciones de las coordenadas x,y,z a menudo se acomodan de modo de que los parámetros u y v estén definidos dentro del intervalo de 0 a 1.Por ejemplo una superficie esférica puede describirse con las ecuaciones.

Flores Carrera Cristina Página 22

UNIDAD 3 GRAFICACION 3D

Donde r es el radio de la esfera. El parámetro u describe líneas de latitud constante sobre la superficie, mientras que el parámetro v describe líneas de longitud constante. Al mantener uno de estos parámetros fijo mientras que se varia el otro sobre cualquier valor dentro del intervalo 0 a 1, se podrían trazar líneas de latitud y longitud de cualquier sección esférica (fig. 1.9).

En aplicaciones de diseño, una curva o superficie a menudo se define especificando interactivamente un conjunto de puntos de control, los cuales indican la forma de la curva. Estos puntos de control son usados por el paquete para formal ecuaciones paramétricas poligonales para desplegar la curva definida. Cuando la curva desplegada pasa

Flores Carrera Cristina Página 23

UNIDAD 3 GRAFICACION 3D

a través de los punto de control, como en la figura 1.10 se dice que interpola los puntos de control.

Por otro lado, se dice que los puntos de control se aproximan si la curva desplegada pasa cerca de ellos (fig. 1.11).Existen muchas técnicas para constituir ecuaciones paramétricas poligonales de curvas y superficies, dada las coordenadas de los puntos de control. Entre los métodos básicos para desplegar curvas específicas con punto de control se incluyen las formulaciones de Bezier y "Spline".

Flores Carrera Cristina Página 24

UNIDAD 3 GRAFICACION 3D

REPRESENTACIONES DE "SPLINE"

Un spline es una curva diferenciable definida en porciones mediante polinomios.Para el ajuste de curvas, los splines se utilizan para aproximar formas complicadas.

La simplicidad de la representación y la facilidad de cómputo de los splines los hacen oculares para la representación de curvas en informática  particularmente en el terreno de los gráficos por ordenador. 

Flores Carrera Cristina Página 25

UNIDAD 3 GRAFICACION 3D

Curvas B-spline

Son las más utilizadas en la práctica:

1.-b-splines cuadráticos: fuentes True Taype.

2.-b-splens cúbicos: los más comunes en programas de diseño gráfico.

En general, no pasa por ningún punto de control (ni siquiera los extremos) , aunque se pude forzar que lo haga.

Principales ventajas sobre las curvas de Bezier:

1.Es de grado acotado (aun definida por n puntos)

2. Sobre todo, mas apropiada para el diseño interactivo: mas "suaves", control local.

Flores Carrera Cristina Página 26

UNIDAD 3 GRAFICACION 3D

Dado un conjunto de puntos P0,...Pn,obtenemos una curva de aproximación compuesta por varios tramos, y las ecuaciones de cada tramo están influenciadas solamente por K vértices del polígono de control siendo K (orden de la B-spline ) un parámetro elegido a voluntad por el diseñador y lógicamente, K <n+1:

Los parámetros que intervienen en una curva B-spline se enumeran a continuación:

P0,...Pn,n+1 vértices o puntos de control. Ni,K: funciones B-spline basica de orden K. d: grado de las B-spline basicas (eleccion usual,d=3). K:orden de la B-spline: K=d+1. N° de tramos:n-d+1. suavidad global de la curva: CK-2=Cd-1.Propiedades

No interpolen(salvo en P0,Pn, si así se especifica). Paramétricas P(t)=(x(t),y(t)). Suavidad Ck-2:K es el orden de la B-spline. No oscilan. Locales

Flores Carrera Cristina Página 27

UNIDAD 3 GRAFICACION 3D

Difíciles de calcular salvo casos especiales con formula matricial: B-spline uniformes, Bezier. Mayor flexibilidad: elección de nodos permiten más tipos de curva.CURVAS Y SUPERFICIES DE BEZIER

Pierre Bezier, ingeniero francés desarrollo este método de aproximación de spline para utilizarlo en el diseño de carrocerías de los automóviles Renault. Las spline de Bezier tienen varias propiedades que hacen que sean muy útiles y convenientes para el diseño de curvas y superficies. Así mismo, es fácil implementarla. Por esos motivos las splines de Bezier están disponibles en forma común en varios sistemas de CAD, en paquetes generales de gráficas y en paquetes seleccionados de dibujo y pintura.

Curvas de Bezier

En general, es posible ajustar una curva de Bezier para cualquier número de puntos de control. El numero de puntos de control que se debe aproximar y su posición relativa determina el grado de polinomio de Bezier.

La idea de definir geométricamente las formas no es demasiado compleja: un punto del plano puede definirse por coordenadas. Por ejemplo, un conjunto A tiene unas coordenadas(x1, y1) y aun punto B le corresponde (x2, y2).para trazar una recta entre ambos basta con conocer su posición.

.

Si en lugar de unir dos puntos con una recta se unen con una curva, surgen los elementos esenciales de una curva  Bezier: los puntos se denominan puntos de anclaje o nodos. La forma de la curva se define por unos puntos invisibles en el dibujo, denominados puntos de control, manejadores o manecillas.

Flores Carrera Cristina Página 28

UNIDAD 3 GRAFICACION 3D

Curvas lineales( grado 1)

 

Solo dos puntos de control (P0,P1). Son líneas rectas. Podemos recorrer la curva con un parámetro  t  [0,1]є  que recorre la recta de P0 a P1.

La curva viene dada por la expresión: 

 B(t)=P0+(P1-P0) t=(1-t) P0+tP1, t  є  [0,1] .

La t en la función para curva lineal de Bezier se puede considerar como un descriptor de  cuan lejos esta B(t) de P0 a P1. Por ejemplo cuando T= 0.25, B(t) es un cuarto de la longitud entre el punto P0 y el punto P1. Como t varia entre 0 y 1 , B(t) describe una línea recta de P0 a P1.

 

Flores Carrera Cristina Página 29

UNIDAD 3 GRAFICACION 3D

Curvas cuadráticas (grado 2)

Tres puntos de control (P0, P1 y P2). Se construyen dos curvas lineales de Bezier entre P0-P1 y P1-P2. Se construye una tercera curva lineal de Bezier entre las dos anteriores. La t que recorre esta tercera recta, forma nuestra curva. Una curva cuadrática de Bezier es el camino trazado por función  B(t), dado los puntos: P0,P1 y  P2, 

B(t)=(1-t)^2  P0 +2t (1-t) P1+t^2 P2,t є  [0,1] .

Para curvas cuadráticas se pueden construir puntos intermedios desde Q0 a Q1  tales que t varia de 0 a 1:

Punto Q0 varía de P0 a P1 y describe una curva lineal de Bezier. Punto Q1 varía de P1 a P2 y describe una curva lineal de Bezier. Punto B(t) varía de Q0 a Q1 y describe una curva cuadrática de Bezier.

Flores Carrera Cristina Página 30

UNIDAD 3 GRAFICACION 3D

Propiedades de Bezier.

1. El grado de la base de polinomios es uno menos que la cantidad de puntos de control.2. El primer y último punto de la curva coincide con  el primer y ultimo punto del grafo de control.3. El vector tangente en los extremos de la curva tiene la misma dirección que el primer y ultimo segmento del grafo de control respectivamente.4. El tiene control global.

Desventajas de las curvas de Bezier

Para grafos de control complejos(formados por muchos puntos)

1. El grado de la base es elevado2. Tienden a suavizar demasiado la geometría del grafo de control.3. Se tornan insensibles a pequeños cambios locales. El desplazamiento de un solo punto de control casi no produce efecto en la curva.4. El control global provoca que el desplazamiento de un solo punto de control modifique a toda la curva.

Flores Carrera Cristina Página 31

UNIDAD 3 GRAFICACION 3D

Aplicaciones de la curva de Bezier

Las curvas de Bezier han sido ampliamente usadas en los gráficos generados por ordenador para modelado de curvas suaves. Como la curva esta completamente contenida en la envolvente convexa de los puntos de control, dichos puntos pueden ser suavizados gráficamente sobre el área de trabajo y usados para manipular la curva de una forma muy intuitiva.las transformaciones afines tales como traslación y rotación pueden ser aplicadas con gran facilidad a las curvas, aplicando las transformaciones respectivas sobre los puntos de control.

  

CONCLUSION

Esta unidad me ayudo a saber mas sobre una área que no conocía ni un poco, muchas ocasiones nos preguntamos para que nos sirve, ahora lo se por ejemplo calculo vectorial o simplemente algebra, en este caso matrices, tantas ocupaciones y nosotros sin saberlo que hermosa es esta área, una traslaciones o simplemente ver una imagen en forma real es algo que se pensó que no se vería mas aquí esta es hermosa.

BIBLIOGRAFIA

GRAFICACION POR COMPUTADORA DONALD HERAN /M.PAULINE BAKER

http://www.graficacionitca3d.blogspot.mx/

Flores Carrera Cristina Página 32