Issue No. 05 - May (1987 vol. 7)
Jack Bresenham , IBM Communication Products Division
In implmenting rater grahic algorithms, it is impotant to toroughly understand behavior and implicit defaults inherent in each algorithm. Design choices must balance performance with respect to drawing speed, circult count, code space, picture fidelity, system complexity, and system consistency. For example, "close" may sound appealing when describing the match of the rastered representation to a geometirc line. An implementation, however, must quantily an error metric?such as minimum normal distance between candidate raster grid points and the geometric line?and resolve "ties" in which two candidate grid points have an equal error metric. Equal error metric ambiguity can permit algorithimic selection of raster points for a line from (X0, Y0) to (X1, Y1) to differ from points selected rastering the same line back from (X1, Y1) to (X0, Y0). Modilying a rastering algorithm to provide an exactly reversibie path, though, will cause problems when lines are rastered in a context of approximating a circle with a polygon. Only by fully understanding any algorithm can designers determine whether such pel-level anomalies are worth the code space or circuit count necessary to provide explicit user resolution, or whether a fixed default must suffice. This article discusses implementation considerations relevant to selecting and customizing incremental line-drawing algorithms to cope with such anomalies as equal error metric instances, perturbation effects of clipping, interesections in raster space, EXOR interpretations for polylines, reversibility, and fractional endpoint rounding.
Jack Bresenham, "Ambiguities in Incremental Line Rastering", IEEE Computer Graphics and Applications, vol. 7, no. , pp. 31-43, May 1987, doi:10.1109/MCG.1987.276986