SlideShare uma empresa Scribd logo
1 de 6
Baixar para ler offline
Algoritmos Raster
Objetivos: Rasterizar (asignar intensidad a pixeles) para dibujar / pintar primitivas
gráficas
• líneas
• polígonos
• círculos, etc Incluye algoritmos de clipping
Algoritmos raster para dibujar líneas
1. Algoritmo incremental (método de diferencias similar a métodos para EDP)
• Aritmética entera
y = mx + B pendiente m =
Supuesto: |m| ≤ 1
Se avanza de izquierda a derecha
Observaciones
• x, y definidos en función de valores previos en el paso anterior
• No se necesita calcular intersección en y
• No se ocupan multiplicaciones
• Si |m| > 1, invertir roles de x e y (paso unitario en y e incremento de y en 1/m)
• Se puede generalizar a aritmética de punto flotante
Algoritmo Básico
procedure Line( {Asuma -1 ≤ m ≤ 1, x0 > x1}
x0, y0 {Punto izquierdo}
x1, y1, {Punto derecho}
value: integer); {Valor a poner en los pixeles de la línea}
var
x : integer; {x varía entre x0 y x1 en incrementos unitarios}
dy, dx, y, m : real;
begin
dy :=y1 - y0;
dx :=x1 - x0;
m :=dy|dx;
y :=y0;
for x := x0 to x1 do
begin
WritePixel (x, Round(y), value); {Asigne value al pixel}
y := y + m {Incremente y en la pendiente m}
end
end;
Desventajas del algoritmo incremental básico
• La función Round toma mucho tiempo
• y, m son reales
Algoritmo de Bresenham
- Bresenham desarrolló un algoritmo incremental clásico que usa solo aritmética
entera evitando la función Round
- La técnica se generaliza al dibujo de círculos
- Bresenham demostró que sus algoritmos generan las aproximaciones que
minimizan el error (distancia)
Algoritmo de Bresenham (variación)
procedure MidpointLine (x0, y0, x1, y1, value: integer);
var
dx, dy, incrE, incrNE, d, x, y : integer;
begin
dx := x1 - x0;
dy := y1 - y0;
d := 2 * dy -dx; {valor inicial para d}
incrE := 2 * dy; {Incremento usado para moverse a E}
incrNE := 2 * (dy - dx); {Incremento usado para moverse a NE}
x := x0;
y := y0;
WritePixel (x, y, value); {Pixel de partida}
while x < x1 do
begin
if d <= 0 then
begin {Elija NE}
d := d + incrE;
x := x + 1
end
else
begin {Elija NE}
d := d + incrNE;
x := x + 1
y := y + 1
end;
WritePixel (x, y, value) {Elige pixel más cercano a la línea}
end{while}
end;
Observaciones:
• Para eliminar la fracción se redefine (no afecta el signo)
• El algoritmo trabaja solo para 0 <m < 1 Otras pendientes se manejan por
reflexiones con respecto a ejes del sistema de coordenadas.
• No se han considerado casos particulares líneas verticales y horizontales de
pendientes ± 1
Obs:
Distinto grosor dependiendo de la pendiente ¿Cómo tratarlo?
• Variación de la intensidad en función de la pendiente
• Tratando la línea como rectángulo
Algoritmos de Punto medio: Bresenham
Un algoritmo preciso y efectivo para la generación de líneas de rastreo,
desarrollado por Bresenham, convierte mediante rastreo las líneas al utilizar sólo
cálculos incrementales con enteros que se pueden adoptar para desplegar
circunferencias y otras curvas.
El algoritmo de línea de Bresenham se basa en probar el signo de un parámetro
entero, cuyo valor es proporcional a la diferencia entre las separaciones de las dos
posiciones de pixel de la trayectoria real de la línea.
Para realizar el trazo de línea de Bresenham para una línea con una pendiente
positiva menor que 1 se deben seguir los siguientes pasos:
1.Se capturan los dos extremos de la línea y se almacena el extremo izquierdo en
(x0 , y0).
2.Se carga (x0 , y0)en el búfer de estructura; es decir, se traza el primer punto.
3.Se calculan las constantes Δx , Δy, 2Δy y 2Δy-2Δx y se obtiene el valor inicial
para el parámetro de decisión como p0 = 2Δy - Δx.
4.En cada xk,a lo largo de la línea, que inicia en k=0, se efectúa la prueba
siguiente: si pk <0, el siguiente punto que se debe trazar es (xk +1, yk) y pk +1 =
pk + 2Δy. De otro modo, el siguiente punto que se debe trazar es (xk +1, yk+1)
y pk +1 = pk + 2Δy - 2Δx
5.Se repite el paso 4 Δx veces.
Algoritmo de Flood Fill
En muchas ocasiones se desea llenar un área que no se define dentro de una
frontera de un solo color. Es posible pintar esa área al sustituir un color interior
específico, en lugar de buscar un valor del color de la frontera. Este planteamiento
se denomina algoritmo de llenado con flujo o Flood Fill.
El algoritmo consiste seleccionar un punto interior específico (x, y) y
posteriormente se vuelven a establecer los valores de pixel que ahora se definen
en un color interior determinado con el color de llenado que se desea. Si el área
que se quiere pintar tiene más de un color interior, primero se vuelve a establecer
los valores de pixel, de modo que todos los puntos interiores tengan el mismo
color. Si se utiliza ya sea el planteamiento de las 4 regiones conectadas o de las 8
regiones conectadas, se pasa por las posiciones de pixel hasta que se repinten
todos los puntos interiores.

Mais conteúdo relacionado

Mais procurados

Ecuaciones paramétricas
Ecuaciones paramétricas  Ecuaciones paramétricas
Ecuaciones paramétricas claudiabolivar3
 
Extrapolación Richardson
Extrapolación RichardsonExtrapolación Richardson
Extrapolación RichardsonEric Sira
 
Funciones de Varias Variables
Funciones de Varias VariablesFunciones de Varias Variables
Funciones de Varias Variablesjosegonzalez1606
 
Método de jacobi Métodos Númericos
Método de jacobi Métodos NúmericosMétodo de jacobi Métodos Númericos
Método de jacobi Métodos NúmericosTensor
 
INTEGRALES IMPROPIAS
INTEGRALES IMPROPIASINTEGRALES IMPROPIAS
INTEGRALES IMPROPIASDi Pater
 
47427701 ejercicios-cinematica-soluciones
47427701 ejercicios-cinematica-soluciones47427701 ejercicios-cinematica-soluciones
47427701 ejercicios-cinematica-solucionespedreroguadarramaerik
 
Tabla de coeficientes adiabaticos de gases
Tabla de coeficientes adiabaticos de gasesTabla de coeficientes adiabaticos de gases
Tabla de coeficientes adiabaticos de gasesHugo Fco. Perez Zermeño
 
Clase 5 - Diseño de controladores por LGR
Clase 5 - Diseño de controladores por LGRClase 5 - Diseño de controladores por LGR
Clase 5 - Diseño de controladores por LGRguest21fbd4
 
Criterio de bode y nyquist matlab
Criterio de bode y nyquist matlabCriterio de bode y nyquist matlab
Criterio de bode y nyquist matlabAle Perez Ortiz
 
Sesión 03,Plano tangente, derivadas parciales y derivada direccional
Sesión 03,Plano tangente, derivadas parciales y derivada direccionalSesión 03,Plano tangente, derivadas parciales y derivada direccional
Sesión 03,Plano tangente, derivadas parciales y derivada direccionalJuan Carlos Broncanotorres
 
Ecuaciones diferenciales exactas
Ecuaciones diferenciales exactasEcuaciones diferenciales exactas
Ecuaciones diferenciales exactasNyckyiret Florez
 
Ventajas y Desventajas de Métodos de Bisección, Secante y Newton Raphson
Ventajas y Desventajas de Métodos de Bisección, Secante y Newton RaphsonVentajas y Desventajas de Métodos de Bisección, Secante y Newton Raphson
Ventajas y Desventajas de Métodos de Bisección, Secante y Newton RaphsonDiana Laura Ochoa Gallegos
 

Mais procurados (20)

Tangentes en coordenadas polares
Tangentes en coordenadas polaresTangentes en coordenadas polares
Tangentes en coordenadas polares
 
La Derivada
La DerivadaLa Derivada
La Derivada
 
Derivadas parciales
Derivadas parcialesDerivadas parciales
Derivadas parciales
 
Calculo II Integrales
Calculo II IntegralesCalculo II Integrales
Calculo II Integrales
 
Ecuaciones paramétricas
Ecuaciones paramétricas  Ecuaciones paramétricas
Ecuaciones paramétricas
 
Ecuaciones Diferenciales 1.pptx
Ecuaciones Diferenciales 1.pptxEcuaciones Diferenciales 1.pptx
Ecuaciones Diferenciales 1.pptx
 
Extrapolación Richardson
Extrapolación RichardsonExtrapolación Richardson
Extrapolación Richardson
 
Funciones de Varias Variables
Funciones de Varias VariablesFunciones de Varias Variables
Funciones de Varias Variables
 
Método de jacobi Métodos Númericos
Método de jacobi Métodos NúmericosMétodo de jacobi Métodos Númericos
Método de jacobi Métodos Númericos
 
INTEGRALES IMPROPIAS
INTEGRALES IMPROPIASINTEGRALES IMPROPIAS
INTEGRALES IMPROPIAS
 
47427701 ejercicios-cinematica-soluciones
47427701 ejercicios-cinematica-soluciones47427701 ejercicios-cinematica-soluciones
47427701 ejercicios-cinematica-soluciones
 
Tabla de coeficientes adiabaticos de gases
Tabla de coeficientes adiabaticos de gasesTabla de coeficientes adiabaticos de gases
Tabla de coeficientes adiabaticos de gases
 
Campos vectoriales con Matlab y Mathematica
Campos vectoriales con Matlab y MathematicaCampos vectoriales con Matlab y Mathematica
Campos vectoriales con Matlab y Mathematica
 
CLASE N 02-USAT MED. (4).pdf
CLASE N 02-USAT MED. (4).pdfCLASE N 02-USAT MED. (4).pdf
CLASE N 02-USAT MED. (4).pdf
 
Clase 5 - Diseño de controladores por LGR
Clase 5 - Diseño de controladores por LGRClase 5 - Diseño de controladores por LGR
Clase 5 - Diseño de controladores por LGR
 
Criterio de bode y nyquist matlab
Criterio de bode y nyquist matlabCriterio de bode y nyquist matlab
Criterio de bode y nyquist matlab
 
Sesión 03,Plano tangente, derivadas parciales y derivada direccional
Sesión 03,Plano tangente, derivadas parciales y derivada direccionalSesión 03,Plano tangente, derivadas parciales y derivada direccional
Sesión 03,Plano tangente, derivadas parciales y derivada direccional
 
Ecuaciones diferenciales exactas
Ecuaciones diferenciales exactasEcuaciones diferenciales exactas
Ecuaciones diferenciales exactas
 
Ventajas y Desventajas de Métodos de Bisección, Secante y Newton Raphson
Ventajas y Desventajas de Métodos de Bisección, Secante y Newton RaphsonVentajas y Desventajas de Métodos de Bisección, Secante y Newton Raphson
Ventajas y Desventajas de Métodos de Bisección, Secante y Newton Raphson
 
Integrales complejas
Integrales complejasIntegrales complejas
Integrales complejas
 

Semelhante a Algoritmos Raster jairo andres rincon

Trazado de lineas rectas
Trazado de lineas rectasTrazado de lineas rectas
Trazado de lineas rectasSam Rdgz
 
Algoritmos2d
Algoritmos2dAlgoritmos2d
Algoritmos2dozkar Yn
 
UNIDAD 7 y 8 Intergración numérica y Ec Dif.pptx
UNIDAD 7 y 8  Intergración numérica y Ec Dif.pptxUNIDAD 7 y 8  Intergración numérica y Ec Dif.pptx
UNIDAD 7 y 8 Intergración numérica y Ec Dif.pptxPaulaInes2
 
Metodos numericos capitulo 6
Metodos numericos capitulo 6Metodos numericos capitulo 6
Metodos numericos capitulo 6Juan Timoteo Cori
 
C) trazado de lineas rectas
C) trazado de lineas rectasC) trazado de lineas rectas
C) trazado de lineas rectasyesuam
 
Funcion lineal ultima
Funcion lineal ultimaFuncion lineal ultima
Funcion lineal ultimaJuliana Isola
 
resolucion de ecuaciones diferenciales con MATLAB
resolucion de ecuaciones diferenciales con MATLAB resolucion de ecuaciones diferenciales con MATLAB
resolucion de ecuaciones diferenciales con MATLAB Raul Ibañez
 
clase modelo derivada de funciones reales RAUL BEJAR.pptx
clase modelo derivada de funciones reales RAUL BEJAR.pptxclase modelo derivada de funciones reales RAUL BEJAR.pptx
clase modelo derivada de funciones reales RAUL BEJAR.pptxRAULBEJARBELLIDO
 
Técnicas de integración
Técnicas de integración Técnicas de integración
Técnicas de integración Bryan Tuñon
 
La Integral definida
La Integral definidaLa Integral definida
La Integral definidaKike Prieto
 
Capitulo 1.laintegralindefinida
Capitulo 1.laintegralindefinidaCapitulo 1.laintegralindefinida
Capitulo 1.laintegralindefinidaKike Prieto
 
Integral Indefinida. Generalidades, Reglas de integración
Integral Indefinida. Generalidades, Reglas de integraciónIntegral Indefinida. Generalidades, Reglas de integración
Integral Indefinida. Generalidades, Reglas de integraciónvane sanchez
 
Ejercicios cal-integral-2013
Ejercicios cal-integral-2013Ejercicios cal-integral-2013
Ejercicios cal-integral-2013Fermin Aguilar
 
Alea 0506 resumen-----simulacion
Alea 0506 resumen-----simulacionAlea 0506 resumen-----simulacion
Alea 0506 resumen-----simulacionjosetax
 
Derivadas algebraicas
Derivadas algebraicasDerivadas algebraicas
Derivadas algebraicaswwwoscar
 

Semelhante a Algoritmos Raster jairo andres rincon (20)

Trazado de lineas rectas
Trazado de lineas rectasTrazado de lineas rectas
Trazado de lineas rectas
 
Algoritmos2d
Algoritmos2dAlgoritmos2d
Algoritmos2d
 
UNIDAD 7 y 8 Intergración numérica y Ec Dif.pptx
UNIDAD 7 y 8  Intergración numérica y Ec Dif.pptxUNIDAD 7 y 8  Intergración numérica y Ec Dif.pptx
UNIDAD 7 y 8 Intergración numérica y Ec Dif.pptx
 
59563233 algoritmo-bresenham
59563233 algoritmo-bresenham59563233 algoritmo-bresenham
59563233 algoritmo-bresenham
 
Metodos numericos capitulo 6
Metodos numericos capitulo 6Metodos numericos capitulo 6
Metodos numericos capitulo 6
 
Metodos iterativos
Metodos iterativosMetodos iterativos
Metodos iterativos
 
Trazado de líneas rectas
Trazado de líneas rectasTrazado de líneas rectas
Trazado de líneas rectas
 
C) trazado de lineas rectas
C) trazado de lineas rectasC) trazado de lineas rectas
C) trazado de lineas rectas
 
Funcion lineal ultima
Funcion lineal ultimaFuncion lineal ultima
Funcion lineal ultima
 
resolucion de ecuaciones diferenciales con MATLAB
resolucion de ecuaciones diferenciales con MATLAB resolucion de ecuaciones diferenciales con MATLAB
resolucion de ecuaciones diferenciales con MATLAB
 
clase modelo derivada de funciones reales RAUL BEJAR.pptx
clase modelo derivada de funciones reales RAUL BEJAR.pptxclase modelo derivada de funciones reales RAUL BEJAR.pptx
clase modelo derivada de funciones reales RAUL BEJAR.pptx
 
Técnicas de integración
Técnicas de integración Técnicas de integración
Técnicas de integración
 
La Integral definida
La Integral definidaLa Integral definida
La Integral definida
 
Capitulo 1.laintegralindefinida
Capitulo 1.laintegralindefinidaCapitulo 1.laintegralindefinida
Capitulo 1.laintegralindefinida
 
Integral Indefinida
Integral IndefinidaIntegral Indefinida
Integral Indefinida
 
7414
74147414
7414
 
Integral Indefinida. Generalidades, Reglas de integración
Integral Indefinida. Generalidades, Reglas de integraciónIntegral Indefinida. Generalidades, Reglas de integración
Integral Indefinida. Generalidades, Reglas de integración
 
Ejercicios cal-integral-2013
Ejercicios cal-integral-2013Ejercicios cal-integral-2013
Ejercicios cal-integral-2013
 
Alea 0506 resumen-----simulacion
Alea 0506 resumen-----simulacionAlea 0506 resumen-----simulacion
Alea 0506 resumen-----simulacion
 
Derivadas algebraicas
Derivadas algebraicasDerivadas algebraicas
Derivadas algebraicas
 

Último

Introduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdfIntroduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdfjhorbycoralsanchez
 
LIQUIDACION OBRAS PUBLICAS POR CONTRATA.pdf
LIQUIDACION OBRAS PUBLICAS  POR CONTRATA.pdfLIQUIDACION OBRAS PUBLICAS  POR CONTRATA.pdf
LIQUIDACION OBRAS PUBLICAS POR CONTRATA.pdfManuelVillarreal44
 
01 COSTOS UNITARIOS Y PRESUPUESTO DE OBRA-EXPEDIENTE TECNICO DE OBRA.pptx
01 COSTOS UNITARIOS Y PRESUPUESTO DE OBRA-EXPEDIENTE TECNICO DE OBRA.pptx01 COSTOS UNITARIOS Y PRESUPUESTO DE OBRA-EXPEDIENTE TECNICO DE OBRA.pptx
01 COSTOS UNITARIOS Y PRESUPUESTO DE OBRA-EXPEDIENTE TECNICO DE OBRA.pptxluiscisnerosayala23
 
Ley 29783 ALCANCES E INTERPRETACION ----
Ley 29783 ALCANCES E INTERPRETACION ----Ley 29783 ALCANCES E INTERPRETACION ----
Ley 29783 ALCANCES E INTERPRETACION ----AdministracionSSTGru
 
4.3 Subestaciones eléctricas componentes principales .pptx
4.3 Subestaciones eléctricas componentes principales .pptx4.3 Subestaciones eléctricas componentes principales .pptx
4.3 Subestaciones eléctricas componentes principales .pptxEfrain Yungan
 
Revista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de ProyectosRevista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de ProyectosJeanCarlosLorenzo1
 
electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejerciciosEfrain Yungan
 
Sistema de Base de Datos para renta de trajes
Sistema de Base de Datos para renta de trajesSistema de Base de Datos para renta de trajes
Sistema de Base de Datos para renta de trajesjohannyrmnatejeda
 
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdfPRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdfAuraGabriela2
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaANDECE
 
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfCONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfErikNivor
 
POBLACIONES CICLICAS Y NO CICLICAS ......
POBLACIONES CICLICAS Y NO CICLICAS ......POBLACIONES CICLICAS Y NO CICLICAS ......
POBLACIONES CICLICAS Y NO CICLICAS ......dianamontserratmayor
 
Tema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieriaTema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieriaLissetteMorejonLeon
 
La mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacionLa mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacionnewspotify528
 
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTACUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTAvanessaecharry2511
 
Informe Mensual MARZO DE SUPERVISION.docx
Informe Mensual MARZO DE SUPERVISION.docxInforme Mensual MARZO DE SUPERVISION.docx
Informe Mensual MARZO DE SUPERVISION.docxTAKESHISAC
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidasNelsonQuispeQuispitu
 
Procedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnasProcedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnasAhmedMontaoSnchez1
 
Proyecto de Base de Datos de César Guzmán
Proyecto de Base de Datos de César GuzmánProyecto de Base de Datos de César Guzmán
Proyecto de Base de Datos de César Guzmáncesarguzmansierra751
 
Trabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruanaTrabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruana5extraviado
 

Último (20)

Introduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdfIntroduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdf
 
LIQUIDACION OBRAS PUBLICAS POR CONTRATA.pdf
LIQUIDACION OBRAS PUBLICAS  POR CONTRATA.pdfLIQUIDACION OBRAS PUBLICAS  POR CONTRATA.pdf
LIQUIDACION OBRAS PUBLICAS POR CONTRATA.pdf
 
01 COSTOS UNITARIOS Y PRESUPUESTO DE OBRA-EXPEDIENTE TECNICO DE OBRA.pptx
01 COSTOS UNITARIOS Y PRESUPUESTO DE OBRA-EXPEDIENTE TECNICO DE OBRA.pptx01 COSTOS UNITARIOS Y PRESUPUESTO DE OBRA-EXPEDIENTE TECNICO DE OBRA.pptx
01 COSTOS UNITARIOS Y PRESUPUESTO DE OBRA-EXPEDIENTE TECNICO DE OBRA.pptx
 
Ley 29783 ALCANCES E INTERPRETACION ----
Ley 29783 ALCANCES E INTERPRETACION ----Ley 29783 ALCANCES E INTERPRETACION ----
Ley 29783 ALCANCES E INTERPRETACION ----
 
4.3 Subestaciones eléctricas componentes principales .pptx
4.3 Subestaciones eléctricas componentes principales .pptx4.3 Subestaciones eléctricas componentes principales .pptx
4.3 Subestaciones eléctricas componentes principales .pptx
 
Revista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de ProyectosRevista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de Proyectos
 
electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicios
 
Sistema de Base de Datos para renta de trajes
Sistema de Base de Datos para renta de trajesSistema de Base de Datos para renta de trajes
Sistema de Base de Datos para renta de trajes
 
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdfPRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes Granada
 
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfCONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
 
POBLACIONES CICLICAS Y NO CICLICAS ......
POBLACIONES CICLICAS Y NO CICLICAS ......POBLACIONES CICLICAS Y NO CICLICAS ......
POBLACIONES CICLICAS Y NO CICLICAS ......
 
Tema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieriaTema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieria
 
La mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacionLa mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacion
 
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTACUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
 
Informe Mensual MARZO DE SUPERVISION.docx
Informe Mensual MARZO DE SUPERVISION.docxInforme Mensual MARZO DE SUPERVISION.docx
Informe Mensual MARZO DE SUPERVISION.docx
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidas
 
Procedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnasProcedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnas
 
Proyecto de Base de Datos de César Guzmán
Proyecto de Base de Datos de César GuzmánProyecto de Base de Datos de César Guzmán
Proyecto de Base de Datos de César Guzmán
 
Trabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruanaTrabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruana
 

Algoritmos Raster jairo andres rincon

  • 1. Algoritmos Raster Objetivos: Rasterizar (asignar intensidad a pixeles) para dibujar / pintar primitivas gráficas • líneas • polígonos • círculos, etc Incluye algoritmos de clipping Algoritmos raster para dibujar líneas 1. Algoritmo incremental (método de diferencias similar a métodos para EDP) • Aritmética entera y = mx + B pendiente m = Supuesto: |m| ≤ 1 Se avanza de izquierda a derecha Observaciones • x, y definidos en función de valores previos en el paso anterior • No se necesita calcular intersección en y • No se ocupan multiplicaciones • Si |m| > 1, invertir roles de x e y (paso unitario en y e incremento de y en 1/m) • Se puede generalizar a aritmética de punto flotante
  • 2. Algoritmo Básico procedure Line( {Asuma -1 ≤ m ≤ 1, x0 > x1} x0, y0 {Punto izquierdo} x1, y1, {Punto derecho} value: integer); {Valor a poner en los pixeles de la línea} var x : integer; {x varía entre x0 y x1 en incrementos unitarios} dy, dx, y, m : real; begin dy :=y1 - y0; dx :=x1 - x0; m :=dy|dx; y :=y0; for x := x0 to x1 do begin WritePixel (x, Round(y), value); {Asigne value al pixel} y := y + m {Incremente y en la pendiente m} end end; Desventajas del algoritmo incremental básico • La función Round toma mucho tiempo • y, m son reales
  • 3. Algoritmo de Bresenham - Bresenham desarrolló un algoritmo incremental clásico que usa solo aritmética entera evitando la función Round - La técnica se generaliza al dibujo de círculos - Bresenham demostró que sus algoritmos generan las aproximaciones que minimizan el error (distancia) Algoritmo de Bresenham (variación) procedure MidpointLine (x0, y0, x1, y1, value: integer); var dx, dy, incrE, incrNE, d, x, y : integer; begin dx := x1 - x0; dy := y1 - y0; d := 2 * dy -dx; {valor inicial para d} incrE := 2 * dy; {Incremento usado para moverse a E} incrNE := 2 * (dy - dx); {Incremento usado para moverse a NE} x := x0; y := y0; WritePixel (x, y, value); {Pixel de partida} while x < x1 do begin if d <= 0 then begin {Elija NE} d := d + incrE;
  • 4. x := x + 1 end else begin {Elija NE} d := d + incrNE; x := x + 1 y := y + 1 end; WritePixel (x, y, value) {Elige pixel más cercano a la línea} end{while} end; Observaciones: • Para eliminar la fracción se redefine (no afecta el signo) • El algoritmo trabaja solo para 0 <m < 1 Otras pendientes se manejan por reflexiones con respecto a ejes del sistema de coordenadas. • No se han considerado casos particulares líneas verticales y horizontales de pendientes ± 1 Obs: Distinto grosor dependiendo de la pendiente ¿Cómo tratarlo? • Variación de la intensidad en función de la pendiente • Tratando la línea como rectángulo
  • 5. Algoritmos de Punto medio: Bresenham Un algoritmo preciso y efectivo para la generación de líneas de rastreo, desarrollado por Bresenham, convierte mediante rastreo las líneas al utilizar sólo cálculos incrementales con enteros que se pueden adoptar para desplegar circunferencias y otras curvas. El algoritmo de línea de Bresenham se basa en probar el signo de un parámetro entero, cuyo valor es proporcional a la diferencia entre las separaciones de las dos posiciones de pixel de la trayectoria real de la línea. Para realizar el trazo de línea de Bresenham para una línea con una pendiente positiva menor que 1 se deben seguir los siguientes pasos: 1.Se capturan los dos extremos de la línea y se almacena el extremo izquierdo en (x0 , y0). 2.Se carga (x0 , y0)en el búfer de estructura; es decir, se traza el primer punto. 3.Se calculan las constantes Δx , Δy, 2Δy y 2Δy-2Δx y se obtiene el valor inicial para el parámetro de decisión como p0 = 2Δy - Δx. 4.En cada xk,a lo largo de la línea, que inicia en k=0, se efectúa la prueba siguiente: si pk <0, el siguiente punto que se debe trazar es (xk +1, yk) y pk +1 = pk + 2Δy. De otro modo, el siguiente punto que se debe trazar es (xk +1, yk+1) y pk +1 = pk + 2Δy - 2Δx 5.Se repite el paso 4 Δx veces. Algoritmo de Flood Fill En muchas ocasiones se desea llenar un área que no se define dentro de una frontera de un solo color. Es posible pintar esa área al sustituir un color interior específico, en lugar de buscar un valor del color de la frontera. Este planteamiento se denomina algoritmo de llenado con flujo o Flood Fill. El algoritmo consiste seleccionar un punto interior específico (x, y) y posteriormente se vuelven a establecer los valores de pixel que ahora se definen en un color interior determinado con el color de llenado que se desea. Si el área que se quiere pintar tiene más de un color interior, primero se vuelve a establecer los valores de pixel, de modo que todos los puntos interiores tengan el mismo color. Si se utiliza ya sea el planteamiento de las 4 regiones conectadas o de las 8
  • 6. regiones conectadas, se pasa por las posiciones de pixel hasta que se repinten todos los puntos interiores.