Method and apparatus for drawing antialiased lines and polygons
First Claim
1. A method for drawing a line on a raster scan terminal which creates images with a plurality of scans, where each scan includes a plurality of pixels and the collection of pixels from said scans stored in a screen memory, forms a regular array of pixels, comprising the steps of:
- computing position of successive points n1, n2, n3, . . . ni of said line;
evaluating position of each of said successive point, nj with respect to the immediately predeing point, nj-1 by developing a signal representative of the distance from nj to the nearest pixel in the scan containing nj and a signal representative of the number of pixels separating said nearest pixel of nj from a corresponding nearest pixel of nj-1 ;
selecting a painting profile from said position of point nj with respect to said position of point nj-1 from a precomputed set of profiles;
selecting a horizontal mode of painting or a vertical mode of painting of said profile, based on said position of point nj with respect to said position of point nj-1 ; and
applying said profile to said screen memory, in accordance with said step of selecting mode of painting, to modify intensity information stored in said screen memory.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus that employ precomputed line profiles to draw lines on a raster scan terminal with mostly horizontal or vertical "brush strokes" that develop the desired line profiles. The precomputed line profiles relate mostly to the slope of the drawn lines and to the position of the drawn lines between adjacent pixels on the raster scan terminal in the direction of the "brush strokes". A relatively small number of precomputed values is required, permitting the apparatus to operate at the low resolution of the raster scan and be driven advantageously by a look-up table. This results in a very fast operation of the system while leading to pleasing results. The method also takes into account corners and end-of-line conditions to avoid very abrupt and unnatural looking end points.
26 Citations
13 Claims
-
1. A method for drawing a line on a raster scan terminal which creates images with a plurality of scans, where each scan includes a plurality of pixels and the collection of pixels from said scans stored in a screen memory, forms a regular array of pixels, comprising the steps of:
-
computing position of successive points n1, n2, n3, . . . ni of said line; evaluating position of each of said successive point, nj with respect to the immediately predeing point, nj-1 by developing a signal representative of the distance from nj to the nearest pixel in the scan containing nj and a signal representative of the number of pixels separating said nearest pixel of nj from a corresponding nearest pixel of nj-1 ; selecting a painting profile from said position of point nj with respect to said position of point nj-1 from a precomputed set of profiles; selecting a horizontal mode of painting or a vertical mode of painting of said profile, based on said position of point nj with respect to said position of point nj-1 ; and applying said profile to said screen memory, in accordance with said step of selecting mode of painting, to modify intensity information stored in said screen memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
12. The method of claim 1 wherein said successive points n1, n2, n3, . . . ni lie on successive ones of said scans.
-
-
13. A system for drawing a line responsive to an input stimulus on a raster scan terminal which creates images with a plurality of scans, where each scan includes a plurality of pixels and the collection of pixels from said scans stores in a screen memory, forms a regular array of pixels, comprising:
-
first means for computing position of successive points n1, n2, n3, . . . ni of said line; second means, responsive to said first means, for evaluating position of each of said successive point, nj with respect to the immediately preceding point, nj-1 by developing a signal representative of the distance from nj to the nearest pixel in the scan containing nj and a signal representative of the number of pixels separating said nearest pixel of nj from a corresponding nearest pixel of nj-1 ; third means, responsive to said second means, for selecting a painting profile from said position of point nj with respect to said position of point nj-1 from a precomputed set of profiles; fourth means, responsive to said third means, for selecting a horizontal mode of painting or a vertical mode of painting of said profile, based on said position of point nj with respect to said position of point nj-1 ; and fifth means, responsive to said fourth means, for applying said profile to said screen memory.
-
Specification