Graficación IA7200-T Algoritmos Clásicos.

Slides:



Advertisements
Presentaciones similares
Continuidad Definición de Continuidad
Advertisements

Integrales VI Sesión.
Funciones y recursividad
Descartes 2.0 Edición de de escenas Escena Acceso al editor Doble clic dentro de la escena.
Introducción a los Algoritmos
DERIVADA DE UNA FUNCION REAL
Estructuras de Control
Problemas de Valores en la Frontera en Otros Sistemas Coordenados
¿Qué es un algoritmo? “(del árabe al-Khowârizmî, sobrenombre del célebre matemático árabe Mohámed ben Musa). Conjunto ordenado y finito de operaciones.
Solución de ecuaciones no lineales
DERIVADAS PARCIALES Gráficas.
La derivada de la función inversa y de funciones especiales
Juan José Cortés Orozco. Antonio Muñoz Torres.
PRIMITIVAS DE SALIDA Curso de graficación I.
Primitivas de Despliegue 2D
Guías Modulares de Estudio MATEMATICAS III Parte A
Programación en Matlab
Solución de Ecuaciones Diferenciales.
Desigualdades lineales en una variable
COMPORTAMIENTO PLÁSTICO: Deformación Plana
Introducción al análisis de algoritmos
Estructura de Datos y Algoritmos
Capítulo 1 “Elementos de Programación”
FUNCION LINEAL Matemáticas Básicas.
MATEMÁTICAS II 2º BACH CYT
Rendering.
Análisis de algoritmos
Ecuaciones Algebraicas
UNIVERSIDAD POPULAR DEL CESAR
Juego de Preguntas y Respuestas
Graficación II. Algoritmos.
Guías Modulares de Estudio Cálculo diferencial – Parte B
M.C. Jesús Antonio Jashimoto B.
Métodos de calibración: regresión y correlación
M. en C. José Andrés Vázquez Flores
REPETITIVAS (CÍCLICAS)
la ecuacion de una recta
45 Integrales Longitud de arco
Interpolación y aproximación polinomial
Función lineal Lic. Andrés Latorre.
Graficación IA7200-T Líneas Ocultas.
29 La integral definida. INTEGRALES.
FUNCION LINEAL.
Sesión 14: Python (5) – Aplicaciones. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Informática.
HERAMIENTAS DE PRODUCCIÓN
Regla de Simpson 1/3 simple
INAOE CURSO PROPEDEUTICO PARA LA MAESTRIA EN ELECTRONICA
Tangentes y Áreas Cálculo IV Prof. Antonio Syers.
Luciano Reyes Itzel Elvira
Unidad 1: ECUACIONES DIFERENCIALES DE PRIMER ORDEN
Sistema de Referencia sistema de coordenadas cartesiano o
EL MÉTODO DE LA SECANTE Y SECANTE MODIFICADA
Ecuación de la recta.
Conceptos Básicos.  Alumno: Javier Sánchez Sánchez  Registro:  Grupo: B207  Fecha: 12/02/10.
CINEMÁTICA EN UNA DIMENSIÓN
 Un sistema de ecuaciones es un grupo de ecuaciones que representan líneas rectas.  Una ecuación es una igualdad en la que los términos pueden ser conocidos.
Método Simplex Es un procedimiento sistemático y eficiente para encontrar y probar soluciones situadas en los puntos extremos de la región de soluciones.
Resolución de Problemas Método Gráfico
6. Sistemas de ecuaciones diferenciales lineales
1. Introducción a las Ecuaciones Diferenciales
ECACEN UNIDAD 2. LA ESTRATEGIA ORGANIZACIONAL Curso académico JUEGO GERENCIAL Cód Programa Administración de Empresas Bogotá, 2015 IR AL INICIO.
U2 Tipos de datos, referenciación y errores 1. Datos problema simple enteroreal carácter booleano Ingeniero = Oreja+catalejo modelo ordenador solución.
Tema 1 : Introducción y errores
Método Simplex Es un procedimiento sistemático y eficiente para encontrar y probar soluciones situadas en los puntos extremos de la región de soluciones.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Arreglo.
Condición inicial y(t = t o ) = y o En donde f(t,y) es una función arbitraria. Remplazando la derivada por un esquema de diferencias finitas adelantado.
Método de Diferencias Finitas para Ecuaciones en Derivadas Parciales Ecuaciones Elípticas y Parabólicas.
Ecuación de la recta.
ALGORITMO DE CIRCUNFERENCIAS DISCRETIZACION. La ecuación de un círculo centrado en el origen es: x2 + y2 = R2 por lo cual, una primera aproximación para.
Teorema de Jordan 7 de julio de 2006.
Transcripción de la presentación:

Graficación IA7200-T Algoritmos Clásicos

Una Línea Ideal Solo podemos lograr una aproximación Iluminar pixeles tan cerca a la línea ideal como sea posible Pixel e {0,1} Graficación

Linea Ideal Recta y continua Se debe interpolar Debe ser eficiente Solo es posible a 0 y 45o Se debe interpolar Debe ser eficiente Se requiere dibujar muchas!!! Graficación

Linea Simple Basada en la ecuación: y = mx + b Solución: incrementa x, resuelve para y Se require aritmética de Punto Flotante Graficación

Funciona? Sí, para líneas con m<=1. Si m>1, la línea se hace muy discontinua. Se requiere mas de 1 pixel por columna Solución? - simetría. Graficación

Modificar algoritmo por octante o incrementar en x si dy<dx, si no, incrementar en y Graficación

Algoritmo DDA Inicio - Fin - DDA = Digital Differential Analyser Differencias finitas Tratar la linea como una ecuación paramétrica en t : Inicio - Fin - Important algorithm. Graficación

Algoritmo DDA Empezar en t = 0 En cada paso, incrementar t en dt Elegir un valor para dt Asegurar que se nos pasan pixeles: Implica y dt = maximum(dx, dy) Graficación

Algoritmo DDA line(int x1, int y1, int x2, int y2) { float x,y; int dx = x2-x1, dy = y2-y1; int n = max(abs(dx),abs(dy)); float dt = n, dxdt = dx/dt, dydt = dy/dt; x = x1; y = y1; while( n-- ) { point(round(x),round(y)); x += dxdt; y += dydt; } n – rango de t. Graficación

Algoritmo DDA Aun se necesitan muchas operaciones de PF. 2 ‘round’s y 2 adds por pixel. Hay una manera más simple? Podemos usar solo aritmética entera? Mas fácil de implementar en hardware Graficación

Observación en Líneas while( n-- ) { draw(x,y); move right; if( below line ) move up; } Graficación

Arriba o Debajo de la Línea? Test para pixel Escribir la línea en forma implícita: F<0 para puntos arriba de la línea, F>0 para puntos debajo. Graficación

Testing for the side of a line. Need to find coefficients a,b,c. Recall explicit, slope-intercept form : So: Graficación

Variable de Decisión Se llama variable de decisión Evaluar F ent M NE Very important. M E Pixel anterior (xp,yp) Posible pixel actual Posibles pixeles siguientes Graficación

Variable de Decisión Si se elige E: Recuerden: Evaluatar d para el siguiente pixel. Depende si se elige E o NE: Si se elige E: Recuerden: NE M E Entonces: Pixel Previos (xp,yp) Posible Pixel Siguiente Posible Pixel Actual Graficación

Variable de Decisión Si se elige NE: So : M NE E Pixel Previos (xp,yp) Posible Pixel Siguiente Posible Pixel Actual Graficación

Resumen del Algoritmo de Punto Medio Elegir entre 2 pixelse en cada iteración, dependiendo del signo de la var. de decisión Atualizar la variable de decisión dependiendo de que pixel es elegido Comenzar en (x1,y1) Calcular en valor inicial de d Graficación

Valor Inicial de d Inicioo: (x1,y1) Pero (x1,y1) es un punto en la línea, F(x1,y1) =0 Multiplicar por 2 para remover la fracción  no afecta el signo Graficación

Algoritmo de Bresenham void MidpointLine(int x1,y1,x2,y2) { int dx=x2-x1; int dy=y2-y1; int d=2*dy-dx; int increE=2*dy; int incrNE=2*(dy-dx); x=x1; y=y1; WritePixel(x,y); while (x < x2) { if (d<= 0) { d+=incrE; x++ } else { d+=incrNE; x++; y++; } WritePixel(x,y); Graficación

Bresenham no fue el final! Algoritmo doble de Xiaolin Wu: El programa de dibujado es un autómata (máquina de estados finitos). i.e. Checar los siguientes dos pixeles de la línea. Solo existen un número finito (pequeño) de posibilidades. El algoritmo doble explota simetría dibujando simultáneamente de ambos extremos hacia el centro. Graficación

Algoritmo Doble Las posiciones posibles de los dos pixeles siguientes dependen de la pendiente – pixel actual en azul: 0<=m<=½ ½<=m<=1 1<=m<=2 m>2 Graficación

Círculos Podemos usar Bresenham para círculos Usar simetría 8-tuple E Pixel Previos Posible Pixel Actual Posible Pixel Siguiente Graficación

Círculos La forma Implícita de un círculo es: Las Funciones son ecuaciones lineales en términos de (xp,yp) Llamado punto de evaluación Graficación