geometria de figuras
DESCRIPTION
GEOMETRIA DE FIGURAS. ÍNDICE. Geometría de Interacción con Figuras. 1.1 Análisis de Conversión 1.2 Distancia de un punto a un objeto 1.3 Límites de un objeto 1.4 punto más cercano a un objeto. 1.5 Intersecciones 1.6 Interior/Exterior. 2. Ecuaciones geométricas: - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/1.jpg)
GEOMETRIA DE FIGURAS
![Page 2: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/2.jpg)
ÍNDICE1. Geometría de Interacción con Figuras.
1.1 Análisis de Conversión1.2 Distancia de un punto a un objeto1.3 Límites de un objeto1.4 punto más cercano a un objeto.1.5 Intersecciones1.6 Interior/Exterior.
2. Ecuaciones geométricas:2.1 Implícitas.2.2 Paramétricas
3. Figuras de Trayectorias Definidas 3.1 Líneas. 3.2 Círculos 3.3 Arcos 3.4 Elipses y Arcos Elípticos. 3.5 Curvas 3.6 Figuras de trayectorias troceadas
4. Figuras Rellenas. 4.1. Rectángulos. 4.2.Círculos y Elipses. 4.3. Pie Shapes. 4.4 Figuras de Límite definido.
![Page 3: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/3.jpg)
1.Geometría de Figuras.Introducción:
• La parte central de la mayoría de las aplicaciones consiste en el despliegue de objetos que el usuario está intentando manipular.
• Necesitamos entender la geometría de esos objetos, para escribir código que interactúe con esas figuras:– Hablaremos sobre las ecuaciones geométricas para figuras primitivas.
– Veremos los tipos de problemas geométricos a los que nos enfrentaremos cuando interactuamos con estas figuras.
![Page 4: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/4.jpg)
1. Geometría de Interacción con Figuras
• La geometría de casi todos los objetos está basada en un conjunto de puntos de control.– Puntos de control: son puntos en el plano 2D que pueden usarse para
definir la geometría deseada.
– No son la única forma en la que la geometría puede ser definida.
– La razón de su uso es la naturaleza interactiva de estos modelos.
• Expresaremos la geometría por medio de puntos de control y resolveremos las ecuaciones para propósitos interactivos.
![Page 5: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/5.jpg)
1.1 Análisis de conversión
• Es un problema importante en gráficos de computadora.
• Consiste en tomar la especificación geométrica de un objeto y derivar el conjunto de pixeles a algún buffer que corresponda a ese objeto.– Es esencial para el proceso de dibujo por lo que debe ser rápido.
– Todos las de herramientas interactivas proporcionan rutinas que realizan estas tareas.
![Page 6: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/6.jpg)
1.2 Distancia de un punto a un objeto.
• Se trata de ser capaces de seleccionar un objeto con el ratón.
• Interactivamente es difícil posicionar el ratón exactamente sobre una línea
• La geometría elemental que se requiere para este problema es el cálculo de la distancia perpendicular entre un punto y una línea u otra figura.
• Conocida la distancia se prueba si está lo suficientemente cerca para la selección.
![Page 7: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/7.jpg)
1.3Límites de un objeto
• Selección de un objeto:
– Cuando ocurre un evento de ratón debemos ser capaces de determinar cuál objeto de un conjunto de objetos está siendo referenciado.
• El cálculo de la distancia perpendicular a cada objeto es bastante costoso.
• Cálculo del rectángulo limitado para un objeto.
– Dando los puntos de control, su cálculo es fácil.
– Primero calculamos el rectángulo limitado de cada objeto, y realizamos entonces la geometría más costosa sólo si el ratón está realmente en el interior de rectángulo limitado.
![Page 8: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/8.jpg)
1.4 Punto más cercano a un objeto.
• Necesitamos determinar el punto de la figura que está más próximo a la posición del ratón.
1.5 Intersecciones.
• Cálculo de intersecciones de dos objetos– Métodos algebraicos:
• Líneas: dos ecuaciones lineales.• Círculos , arcos y elipses: ecuaciones cuadráticas.
– Métodos numéricos:• Elipses rotadas: polinomios de grado 4.• Splines y curvas: ecuaciones cúbicas.
1.6 Interior/Exterior– La selección de figuras rellenas (círculos, rectángulos, polígonos)
se realiza haciendo la prueba del rectángulo limitado y después se realiza la prueba más costosa.
![Page 9: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/9.jpg)
2. Ecuaciones geométricas.
• 2.1Ecuaciones Implícitas :– Son de la forma: F(x,y) = 0
– Ventajas:• Dividen el plano 2D en dos semiespacios, esto sirve para calcular si
un punto está dentro o fuera de alguna región.
• Podemos normalizar la ecuación para que nos de la distancia real a un objeto , multiplicando los coeficientes por alguna constante.(No funciona para todas las figuras.)
• 2.2 Ecuaciones Paramétricas:– Descripción de figuras 1D: usan un solo parámetro:
• x=G(t) y=H(t)
– Descripción de figuras 2D: usan dos parámetros.• x=K(s,t) y=(s,t)
![Page 10: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/10.jpg)
3. Figuras de Trayectorias definidas• Definición: Son objetos 1D dibujados en 2D. No tienen
exterior ni interior.
• La geometría de una figura se determina por la geometría de la trayectoria que es fronteriza.
• Tipos de Trayectorias:
– Líneas.
– Círculos.
– Arcos.
– Elipses y arcos elípticos
– Curvas.
![Page 11: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/11.jpg)
3.1 Líneas
• Ecuación implícita:– Ax+By+C=0
El vector [A,B] se calcula a partir de los puntos de control:
A=Y1-Y2
B=X2-X1
Se sustituye un punto de la línea y se calcula para C:
C= -AX1- BY1
Sustituyendo cualquier punto (x,y) en la siguiente ecuación, nos dará
la distancia de la línea en múltiplos de la longitud de [A,B]:
línea(x,y)=AX+BY+C
– Línea(x,y) resuelve varios problemas geométrico:• Si línea(x,y)=0 , entonces el punto (x,y) reside en la línea
• Probar si un punto está próximo a la línea
![Page 12: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/12.jpg)
• Ecuación Paramétrica:– Usamos un vector con inicio en (X1,Y1) y fin en (X2,Y2).
• t: Fracción de distancia que queremos mover a lo largo del vector.
x = (X2+X1)t + X1 si t=0 => (X1,Y1) y = (Y2+Y1)t + Y1 si t=1=> (X2,Y2) si 0 < t < 1=>puntos intermedios
• Rectángulo Limitado– Propiedad de “Cubierta-Convexa”:
• Es el polígono más pequeño que contiene a todos los puntos..Si un objeto cumple esta propiedad , el cálculo del rectángulo-limitado es fácil.
– Cálculo del rectángulo limitado para una línea por sus puntos de control:• Izquierda=Min(coordenadas X de todos los puntos de control)• Tope=Min(coordenadas y de todos los puntos de control)• Derecha=Max(coordenadas X de todos los puntos de control)• Fondo=Max(coordenadas y de todos los puntos de control)
![Page 13: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/13.jpg)
3.2 círculos
• Modelo de centro y radio
• Cálculo del radio a partir de los puntos de control:
• Ecuación Implícita:– Círculo: conjunto de puntos a una distancia fija del punto central.
– Ecuación para un círculo de R=1 y centro en el origen: (x2+y2)-1=0• (x2+y2) = cuadrado de la distancia entre (x,y) y el origen.
– Se puede describir un círculo con centro (Xc,Yc) y radio R con la ecuación:
![Page 14: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/14.jpg)
• Ecuación Paramétrica:– Basada en trigonometría:
• Dado el ángulo a , las ecuaciones son:– x = Xc + R*cos(a)– y = Yc + R*sen(a)El ángulo a varía de 0 a 2
• Reformulamos las ecuaciones en función del parámetro t– x = Xc + R*cos(2t)– x = Xc + R*cos(2t)El parámetro t varía de 0 a 1.
• Distancia de un punto a un círculo:– Se deriva a partir de la ecuación implícita del círculo:
• Los puntos con distancias negativas están dentro • Los puntos con distancias positivas permanecen dentro del
círculo.
![Page 15: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/15.jpg)
• Punto más cercano a un círculo:
Usaremos un modelo de vector:
– (Xn,Yn) = distancia R desde (Xc,Yc) a lo largo de un vector en dirección (x,y).
– 1º: construimos un vector de longitud 1 desde el centro a (x,y)
– 2º: obtenemos un vector en la misma dirección con longitud R, multiplicando por R:
![Page 16: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/16.jpg)
• Límites de un círculo.– Cálculo del rectángulo limitado:
• Se usan las ecuaciones paramétricas calculando los puntos para t=0.0,
t=0.25, t=0.5 y t=0.75
![Page 17: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/17.jpg)
3.3 Arcos
• Arco: fragmento de un círculo. Podemos definir un arco usando las mismas ecuaciones paramétricas que un círculo.
– Hay que definir la parte restringida del círculo que forma el arco
• 2 parámetros– Parámetro inicio = 0.3– Parámetro fin =0.5
• Reformulamos las ecuaciones:– x= Xc +R*cos(2(b 0.2 +0.3))– y= Yc +R*cos(2(b 0.2 +0.3))
b= 0 a b=1 es igual que t=0.3 a t=0.5
.
![Page 18: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/18.jpg)
• Selección de un punto en un arco.– (X1,Y1): punto de selección introducido por el usuario. Si está
bastante cercano, consideraríamos el arco como seleccionado:
• 1º calculamos (Xn,Yn), punto más cercano al círculo.
• 2º calculamos el parámetro t para este punto más cercano• 3º Comprobar que t se encuentra entre 0.3 y 0.5.
• Límites de un arco.– Los puntos de control de un arco no cumplen la propiedad de
“cubierta convexa”.
– Por simplicidad, se usa el rectángulo limitado del círculo del arco en lugar de un rectángulo más pequeño para el propio arco.
![Page 19: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/19.jpg)
3.4 Elipses y Arcos Elípticos• Elipses cuyos ejes mayor y menor son paralelos a los ejes x e y.
• Elipse: círculo de radio 1 que ha sido estirado en x por una distancia W, y estirado en y por una distancia H.
– (L,T) Y (R,B): puntos de control del rectángulo limitado.
– (Xc,Yc),W y H son calculados a partir de los puntos de control.
![Page 20: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/20.jpg)
• Ecuación Implícita y Paramétrica de una Elipse:Estas ecuaciones se crean a partir de las ecuaciones para un círculo.
– Ecuación Implícita para una Elipse:
• Ecuación Paramétrica para una Elipse:• Sustituimos W y H, por el radio en cada dimensión:
– x = Xc +W*cos (2t)
– y = Xc +H*sen (2t)
las ecuaciones para un círculo son un caso especial de las ecuaciones para una elipse.
![Page 21: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/21.jpg)
3.5 Curvas
• Spline: curva que se descompone en varias curvas cúbicas que son fácilmente conectadas.
– Tipos de spline: curvas Bezier, curvas B-Spline, curvas Catmull-Rom.
– Hay una curva entre cada par de puntos de control adyacentes.
– Motivos:
• una única curva de alto grado polinomial es difícil de manejar interactivamente.
• Se trata de:
1. Definir la geometría de una única curva cúbica.
2. Definir el modo en el que se unen las curvas
![Page 22: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/22.jpg)
• Ecuación cúbica:– Forma matricial:
• C=matriz de coeficientes.
– 1ºDefinición de la matriz de coeficientes a partir de los puntos de control:
• S, matriz de coeficientes constantes, característica para cada tipo de curva.
Definición completa:
• Requisitos de continuidad .– C(0): propiedad por la que dos curvas adyacentes comparten el
mismo punto en el lugar en donde se unen. Fácil de garantizar.
– C(1):Las derivadas son iguales en el punto de unión. Requisito más común para unir curvas suaves.
– C(2):Las curvaturas son las mismas en el punto de unión. Requisito bastante especializado.
![Page 23: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/23.jpg)
Curvas Bézier• Definidas por dos puntos de control intermedios y por dos puntos
finales.
• Proporciona a los usuarios un modelo interactivo para la manipulación de la curvatura a través de los puntos de control.
• Conexión de dos curvas Bezier:– C(0) es fácil haciendo P4 de la 1ªcurva = P1 de la 2ª curva.
– C(1) se obtiene haciendo colineal P3 y P4 de la 1ª curva con P1 y P2 de la 2ª.
– C(2) no ocurre de un modo fácil.
• Característica: los puntos de control cumplen la propiedad “cubierta convexa”. Si tomamos el máximo y el mínimo para los cuatro puntos de control se obtiene el rectángulo limitado para la curva.
![Page 24: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/24.jpg)
Curvas B-Spline• Número arbitrario de puntos de control P0 a Pn.
• Esta curva está formada por tres curvas cúbicas.
– Cada una tiene 4 puntos de control : de P(i-1) a P(i+2).
– Cada par de curvas adyacentes comparten tres puntos de control.Esto garantiza que se cumple la continuidad C(2).
• Tiene la propiedad “ cubierta convexa”, entonces podemos calcular el rectángulo limitado tomando el máximo y el mínimo de los puntos de control.
![Page 25: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/25.jpg)
Curvas Catmull-Rom
• La curva pasa por unos puntos específicos:
• La formulación para una Catmull-Rom es la misma que para una B-spline:
• No tiene la propiedad “cubierta convexa”. Se resuelve convirtiendo la geometría Catmull-Rom en una geometría de Bézier:
![Page 26: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/26.jpg)
3.6 Figuras de trayectorias troceadas
• Figuras creadas con la conexión de objetos primitivos.
• La geometría está determinada por la geometría de las figuras que la componen.
• El rectángulo redondeado se compone de 4 líneas y 4 arcos elípticos.
• la otra figura es una concatenación de líneas rectas y curvas cúbicas.
![Page 27: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/27.jpg)
4. Figuras Rellenas• Figuras 2D con interior:
– Rectángulos
– Círculos y elipses.
– Pie Shapes.– Figuras de límite definido.
• Determinar si un punto específico está dentro de la figura o fuera:
Si el ratón está dentro de la figura cuando se presiona el botón entonces la figura será seleccionada. Si el ratón está fuera entonces no será seleccionada.
![Page 28: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/28.jpg)
4.1 Rectángulos• La más simple de todas las figuras rellenas.
• Dando sus coordenadas podemos determinar fácilmente si está dentro, con las ecuaciones:– Izquierda X Derecha
– Tope Y Fondo
• Ecuación paramétrica para puntos interiores y exteriores:
Se define un eje para cada uno de los dos parámetros s y t, con origen en la esquina superior-izquierda.– X=Izquierda + s(Derecha –Izquierda)
– Y=Tope+t(Fondo-Tope)
– Para determinar si un punto (x,y) está dentro del rectángulo, se resuelve para los parámetros s y t y se determina si permanecen dentro del rango de 0 a 1.
![Page 29: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/29.jpg)
4.2 Círculos y Elipses.• Ecuaciones paramétricas para el interior de un círculo:
– x=Xc+s* R* cos(2t)– y=Xc+s*R*sen(2t) – S es un parámetro radial.
• si s=0 entonces (x,y) está en el centro del círculo.• si s=1 entonces las ecuaciones son las mismas que para una
circunferencia.– t rodea a la circunferencia.
• Ecuaciones paramétricas para el interior de un Elipse:– x=Xc+s* W* cos(2t) ; W radio en el eje x– y=Xc+s*H*sen(2t) ; H radio en el eje y– Si conocemos x e y, resolvemos las ecuaciones para s y t. Si están
dentro del rango de 0 a 1, entonces el punto (x,y) está dentro de la elipse.
![Page 30: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/30.jpg)
4.3 Pie Shapes• Para determinar si un punto (x,y) está dentro de esta Pie shape elíptica
se resuelven las ecuaciones para s y t:
–x=Xc+s* W* cos(2(t(end-start)+start))
– y=Xc+s*H*sen (2(t(end-start)+start))
![Page 31: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/31.jpg)
4.4 Figuras de límite definido
• Figuras sin geometría regular, compuestas por un número de piezas, cada una de las cuales es una figura de trayectoria definida. Pueden estar formadas por:
– Líneas rectas y curva cúbicas.
– Polígonos de líneas rectas.
– Curvas cúbicas.
– Curvas cúbicas y líneas rectas.
• Determinar si un punto de selección (x,y) está dentro o fuera de la figura:
– 1º: Prueba de la caja limitada:
• Fácil y rápida, que descartará un gran número de figuras.
• Se construye tomando la unión de las cajas limitadas para cada objeto.
– 2º: Si el punto de selección está dentro de la caja limitada se aplica la prueba Par/Impar Interior/Exterior.
![Page 32: GEOMETRIA DE FIGURAS](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815455550346895dc26ec3/html5/thumbnails/32.jpg)
• Construimos una línea horizontal a través del punto.• Realizamos las intersecciones de la línea horizontal con los bordes de la
figura.• Contamos el número de intersecciones a la derecha del punto de selección.
Si es un número impar, el punto está dentro de la figura; de otro modo está fuera.– Excepción: Cuando un punto de intersección forma parte de dos
bordes.• Bordes lineales: Se calcula la tangencia, si el borde es tangente a la línea
horizontal se cuenta dos veces(x2,y2), y si el borde atraviesa la línea se cuenta una(x3,y3).
• Bordes curvados.(x4,y4) se calcula el punto de tangencia con la curva, si dY/dX=0 se cuenta dos veces en vez de una.