Skip to main content
Log in

Digital circles with non-lattice point centers

  • Published:
The Visual Computer Aims and scope Submit manuscript

Abstract

Digitization of a real circle is defined as the set of closest pixels (integer lattice points) to the circle. These pixels form a digital circle. First, this paper defines the term “closest pixels” and provides an algorithm to digitize an arbitrary circle, i.e., one whose radius is not necessarily an integer, and whose center is not necessarily a lattice point. This digitizing algorithm is simplified to the case of integer radius and integer-coordinate center so that it can be compared to two well-known algorithms: the Bresenham algorithm and an algorithm using the Digital Differential Analyzer (DDA) technique. As a result, the new algorithm consumes only 77% and 40% of the time required for Bresenham and DDA algorithms, respectively. Second, we investigate the problem of finding, for a given digital circle and center, the set of possible real radii that generate that digital circle. For some integerr, we look at all digital circles centered at the origin with real radius in the interval [r−0.5,r+0.5) and determine the paritions of this interval into sub-intervals of real radii generating the same digital circles. Third, we study fixing the digital circle and radius, and finding the set of possible centers. For some pixel (x c,y c), we find the partitions of the unit square [x c −0.5,x c +0.5)×[y c −0.5,y c +0.5) such that for each partition each center in that partition generates the same digital circle. The partition boundaries can be constructed by compass and ruler. Finally, the paper uses these results to determine whether or not a given finite set of pixels is a digital circle segment and if so, shows how to construct its region of possible centers by ruler and compass. We also present an algorithm to detect whether a closed digital are is a digital circle.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Abrash M (1990) Faster circle for the VGA. Programmer's J 8(2):18–22

    Google Scholar 

  • Aken JV, Novak M (1985) Curve drawing algorithms for raster displays. ACM Trans Graph 4(2):147–169

    Google Scholar 

  • Austin JD (1990) Euclidean circles and their modular images. Math Comput Ed 24(1):11–21

    Google Scholar 

  • Bao PG, Rokne JB (1989) Quadruple-step line generation. Comput Graph (Pergamon) 13(4):323–328

    Google Scholar 

  • Blinn JF (1987) How many ways can you draw a circle? IEEE CGA 7:39–44

    Google Scholar 

  • Bresenham JE (1977) A linear algorithm for incremental digital display of circular arcs. Commun ACM 20(2):100–106

    Google Scholar 

  • Callaway M (1984) Eight circles. Pract Comput 7(12):97–99

    Google Scholar 

  • Cook R (1990) Full circle. Byte 15:211–214

    Google Scholar 

  • Danielson E (1970) Incremental curve generation. IEEE Trans Comput C 19(9):783–793

    Google Scholar 

  • Danielson E (1978) Comments on circle generator for display device. Comput Graph Image Proc 7:300–301

    Google Scholar 

  • Doros M (1979) Algorithms for generation of discrete circles, rings and disks. Comput Graph Image Proc 10:366–371

    Google Scholar 

  • Freeman H (1961) Techniques for the digital computer analysis of chain-encoded arbitrary plane curves. Proc Natl Electron Conf 17:421–432

    Google Scholar 

  • Horn BKP (1976) Circle generators for display devices. Comput Grapb Image Proc 5:280–288

    Google Scholar 

  • Jordan BW, Lennon WJ, Homm BD (1973) An improved algorithm for the generation of nonparametric curves. IEEE Trans Comput C 22(12):1052–1060

    Google Scholar 

  • Kim CE (1981) Digital convexity straightness and convex polygons. TR-1055. Computer Science Center, University of Maryland, College Park, MD

    Google Scholar 

  • Kulpa Z (1979a) A note on the paper by B.K.P. Horn: circle generators for display devices. Comput Graph Image Proc 9(1):102–104

    Google Scholar 

  • Kulpa Z (1979b) On the properties of discrete circles, rings and disks. Comput Graph Image Proc 10(4):348–365

    Google Scholar 

  • Kulpa Z, Doros M (1981) Freeman digitization of integer circles minimizes the radial error. Comput Graph Image Proc 17:181–184

    Google Scholar 

  • Lee D (1983) A fast circle routine. Dr. Dobb's J 8(5):32, 35–37

    Google Scholar 

  • McIlroy MD (1983) Best approximate circles on integer grids, ACM Trans Graph 2(4):237–263

    Google Scholar 

  • Nakamura A, Aizawa K (1984) Digital circles. Comput Vision, Graph Image Proc 26(2):242–255

    Google Scholar 

  • Paterson T (1990) Circles and the differential analyzer. Dr. Dobb's Journal 15(7):30–32, 34–35, 96

    Google Scholar 

  • Pitteway MLV, Botting JR (1974) Integer circles, etc. Three moves extension of Bresenham's algorithm. Computer Graph Image Proc 3:260–261

    Google Scholar 

  • Suenaga Y, Kamae T, Kobayashi T (1979) A high-speed algorithm for the generation of straight lines and circular arcs. IEEE Trans Comput C 28(10):728–736

    Google Scholar 

  • Rao CVK (1975) Comment on a method far computing points of a circle using only integers. Computer Graph Image Proc 4

  • Zigon R (1990) Parametric circles. Dr. Dobb's J 15(1):60–63

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Pham, S. Digital circles with non-lattice point centers. The Visual Computer 9, 1–24 (1992). https://doi.org/10.1007/BF01901025

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01901025

Key words

Navigation