A chronological and mathematical overview of digital circle generation algorithms – introducing efficient 4- and 8-connected circles

Circles are one of the basic drawing primitives for computers and while the naive way of setting up an equation for drawing circles is simple, implementing it in an efficient way using integer arithmetic has resulted in quite a few different algorithms. We present a short chronological overview of the most important publications of such digital circle generation algorithms. Bresenham is often assumed to have invented the first all integer circle algorithm. However, there were other algorithms published before his first official publication, which did not use floating point operations. Furthermore, we present both a 4- and an 8-connected all integer algorithm. Both of them proceed without any multiplication, using just one addition per iteration to compute the decision variable, which makes them more efficient than previously published algorithms.

[1]  Eric Andres,et al.  Digital circles, spheres and hyperspheres: From morphological models to analytical characterizations and topological properties , 2013, Discret. Appl. Math..

[2]  Ernst Denert A method for computing points of a circle using only integers , 1973, Comput. Graph. Image Process..

[3]  Robert Lachlan,et al.  An Elementary Treatise on Modern Pure Geometry , 2009, Nature.

[4]  C. V. Kameswara Rao Comment on a Method for Computing Points of a Circle Using Only Integers , 1975 .

[5]  Berthold K. P. Horn Comments on: “A note on the paper by B. K. P. Horn” by Zenon Kulpa , 1979 .

[6]  Gaëlle Largeteau-Skapin,et al.  Optimal Consensus Set for Annulus Fitting , 2011, DGCI.

[7]  P. Lappalainen,et al.  A novel digital method of generating a circle test pattern for television , 1972 .

[8]  Chul E. Kim,et al.  Digital Convexity, Straightness, and Convex Polygons , 1982, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[9]  Son Pham Digital circles with non-lattice point centers , 2005, The Visual Computer.

[10]  Marek Doros,et al.  Algorithms for generation of discrete circles, rings, and disks , 1979 .

[11]  Willem F. Bronsvoort,et al.  An Integrated Line Tracking and Vectorization Algorithm , 1994, Comput. Graph. Forum.

[12]  Jack Bresenham,et al.  Algorithm for computer control of a digital plotter , 1965, IBM Syst. J..

[13]  P. W. Baker,et al.  On Digital Differential Analyzer (DDA) Circle Generation for Computer Graphics , 1975, IEEE Transactions on Computers.

[14]  Berthold K. P. Horn Circle generators for display devices , 1976 .

[15]  James D. Foley,et al.  Fundamentals of interactive computer graphics , 1982 .

[16]  Per-Erik Danielsson Comments on circle generator for display devices , 1978 .

[17]  Eric Andres,et al.  Discrete circles, rings and spheres , 1994, Comput. Graph..

[18]  Won L. Chung On circle generation algorithms , 1977 .

[19]  Tim Paterson Circles and the digital differential analyzer , 1990 .

[20]  Jerry Van Aken An Efficient Ellipse-Drawing Algorithm , 1984, IEEE Computer Graphics and Applications.

[21]  Eric Andres,et al.  The Discrete Analytical Hyperspheres , 1997, IEEE Trans. Vis. Comput. Graph..

[22]  Norman I. Badler Disk Generators for a Raster Display Device , 1977 .

[23]  James F. Blinn How Many Ways Can You Draw a Circle? , 1987, IEEE Computer Graphics and Applications.

[24]  John E. Howland,et al.  Computer graphics , 1990, IEEE Potentials.

[25]  Michael L. V. Pitteway "Integer Circles, Etc." - some further thoughts , 1974, Comput. Graph. Image Process..

[26]  Michael L. V. Pitteway,et al.  "Integer Circles, Etc." - three move extension of Bresenham's algorithm , 1974, Comput. Graph. Image Process..

[27]  Jack Bresenham,et al.  A linear algorithm for incremental digital display of circular arcs , 1977, CACM.

[28]  Zenon Kulpa A note on the paper by B. K. P. Horn: “Circle generators for display devices” , 1979 .