Browse Prior Art Database

Complex Linestyle Generation

IP.com Disclosure Number: IPCOM000041854D
Original Publication Date: 1984-Mar-01
Included in the Prior Art Database: 2005-Feb-03
Document File: 3 page(s) / 40K

Publishing Venue

IBM

Related People

Bresenham, JE: AUTHOR [+2]

Abstract

This article concerns a technique for the generation of lines with a complex linestyle on a raster display terminal, and can handle any complexity of dot/dash pattern while maintaining the characteristic run-length pattern of the overall line with a performance comparable to continuous lines. The technique requires the following functions to be implemented for a complex line extending overall from (X1Y1 to X2Y2): 1.DRAW_LINE_1 (X1, Y1, X2, Y2, LENGTH) This function initializes the incremental line-drawing algorithm with parameters for the overall line (X1,Y1,X2,Y2). The major direction stepping loop count, however, is forced to the specified length. This function then plots along the line, terminating after "length" major direction steps, leaving the line-generation algorithm parameters at their final values. 2.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 3

Complex Linestyle Generation

This article concerns a technique for the generation of lines with a complex linestyle on a raster display terminal, and can handle any complexity of dot/dash pattern while maintaining the characteristic run-length pattern of the overall line with a performance comparable to continuous lines. The technique requires the following functions to be implemented for a complex line extending overall from (X1Y1 to X2Y2): 1.DRAW_LINE_1 (X1, Y1, X2, Y2, LENGTH) This function initializes the incremental line-drawing algorithm with parameters for the overall line (X1,Y1,X2,Y2). The major direction stepping loop count, however, is forced to the specified length. This function then plots along the line, terminating after "length" major direction steps, leaving the line-generation algorithm parameters at their final values. 2.MOVE_LINE_1(X1,Y1,X2,Y2,LENGTH) This function is the same as 1 above except that the incremental plotting loop is executed without actually plotting pels (picture elements) into the bit plane(s). 3.DRAW_LINE_2 (LENGTH) This function uses the current values of the incremental line-drawing algorithm parameters (left over from previous functions) as its initial parameters. The stepping loop count is forced to the specified length. This function plots along the line already specified by the current parameters, terminating after 'length' major direction steps, leaving the line-generation parameters at their final values. 4.MOVE_LINE_2 (LENGTH) This function is the same as 3 above except that the incremental plotting loop is executed without actually plotting pels into the bit plane(s). The basic principle of the technique is that dotted/clashed lines can be drawn as segments of many different lengths using incremental line- drawing algorithm parameters which are calculated only once for the entire collection of segments comprising the total line. For lines starting with a segment of 'on' pels, the DRAW_LINE_1 function is used to establish the initial parameters and to draw the first segment. Subsequent 'off' and 'on' segments for any line style are generated using the MOVE_LINE_2 and DRAW_LINE_2 functions,...