4 ms·
By the way, I had a teacher (J.P Reveilès) who had invented the theoretically fastest drawline algorithm ever: he simply figure out that, for a line, there is a
by FredBrach 14y ago
By the way, I had a teacher (J.P Reveilès) who had invented the theoretically fastest drawline algorithm ever: he simply figure out that, for a line, there is a pixel pattern which repeat itself (unless the variation is a transcendental number http://en.wikipedia.org/wiki/Transcendental_number http://en.wikipedia.org/wiki/Transcendental_number) so you only have to compute that pattern once and copy/paste it. If I remember well, for example, a line which has a variation of 1/4, has a 4-pixel wide pattern only!
His discrete line equation is relatively beautiful (it is easily extractible from Bresenham's algorithm however): 0 ≤ ax − by < ω
- 6ren 14y agoWouldn't the exception be for lines whose slope is irrational? (i.e. that can't be represented by a ratio of integers), so the repeating pattern is analogous to the repeating pattern in a decimal representation of a rational number.
- textminer 14y agoHow does a computer distinguish an irrational number from a good, (necessarily rational) floating-point approximation of one?
- mjcohenw 14y agoThe algorithm only works with points with integer coordinates, so the slope is always rational.
- FredBrach 14y agoI think you have the last words because line drawing algorithms become irrelevant if you use a Floating Point Unit. just: { x++ and y+=slope } or { y++ and x+= 1./slope } Then slopes are always rational in line drawing algorithms.
- ralph 14y agoIf y and slope are floating point in the first block then might not y end at other than the desired endpoint because of accumulative error?
- deleted 14y ago[deleted]
- deleted 14y ago[deleted]