2 research outputs found

    New Approaches and Techniques for Drawing Lines on Raster Devices.

    Get PDF
    Two basic approaches to drawing lines on raster devices are discussed and improved upon. The first is the recursive bisection algorithm, a method recently proposed by John Rankin, which uses a fractal approach to draw lines. The second is the double-step algorithm, a method proposed by Xiaolin Wu and Jon Rokne, which is based on the traditional Bresenham approach to drawing lines. Although a number of line drawing algorithms exist, the algorithms presented are of interest because the double-step algorithm is one of the fastest line drawing algorithms. Furthermore, since lines are self-similar and fractals have been found to be useful in drawing other self-similar objects such as coastlines, plants, and terrain, the investigation of such an approach appears to be a worthwhile endeavor. In addition, some of the ideas presented can be applied to other line drawing algorithms and related problems such as incremental linear interpolation. Regarding the recursive bisection algorithm, modifications making it faster than the traditional Bresenham method while reducing the logarithmic space requirements to a constant are discussed. A more detailed examination of the error analysis is presented as well. A parallel version of the algorithm is also developed in which only two operations reducible to multiplication/division are required, equaling the lower bound and half the amount needed by the parallel Bresenham algorithm. In addition, the amount of logic needed is small. In the second part, modifications to the double-step line drawing algorithm are presented that allow additional pixels to be determined during some of the loop iterations. It is then shown that the resulting algorithm reduces the number of iterations by up to 33% while keeping the same worst case performance, code complexity, and initialization costs as the double-step algorithm. Lastly, this approach is generalized and applied to one of the fastest incremental linear interpolation algorithms, giving similar results

    Aplicaciones de la aritmética en coma fija a la representación de primitivas gráficas de bajo nivel

    Full text link
    La aritmética en coma fija tiene la propiedad de realizar operaciones con números decimales con un coste computacional entero. A pesar de no estar soportada de forma nativa por los lenguajes de programación y por las CPUs generalistas, es la aritmética ideal para aplicaciones de control industrial, simulación, informática gráfica, multimedia y señal digital, etc. Su falta de normalización y soporte impide su uso extendido en muchos campos de la informática. Esta tesis justifica la utilización de esta aritmética en el campo de los gráficos por computador. A partir de un estudio de implementación y normalización de la aritmética, se estudian incrementos de potencia relativos y precisiones obtenidas y su aplicación a la simulación discreta y de vuelo. Se analizan los algoritmos de dibujo de primitivas básicas como las líneas, con y sin aliasing, su recortado y el dibujo de circunferencias y elipses. Se presentan algunas implementaciones de algoritmos basados en la coma fija y se analiza la mejora del coste computacional y de la precisión obtenida respecto de los algoritmos de fuerza bruta y de los tradicionales. Mientras los algoritmos tradicionales suelen entregar un error comprendido entre los 0.32 y 0.45 píxeles, dependiendo de la primitiva analizada, los algoritmos basados en la coma fija no superan los 0.25 de media, igualando el error teórico generado por los algoritmos de fuerza bruta. Por otro lado, los algoritmos basados en la aritmética en coma fija suelen mejorar la velocidad media de los algoritmos tradicionales, pudiéndose a veces conseguir aceleraciones elevadas si se utilizan técnicas de paralelización. Éste sería el caso de la versión paralela del algoritmo DDA con y sin antialiasing que podría dibujar una recta con coste temporal logarítmico respecto de su longitud en píxeles. Los algoritmos obtenidos son tan sencillos que pueden ser implementados algunos de ellos en hardware dentro de un procesador gráfico de forma muy eficiente.Mollá Vayá, RP. (2001). Aplicaciones de la aritmética en coma fija a la representación de primitivas gráficas de bajo nivel [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/15406Palanci
    corecore