Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

# Algorithm::Line::Bresenham 0.11

Date Added: July 07, 2010  |  Visits: 1.026

Algorithm::Line::Bresenham is a Perl module that contains a simple pixellated line-drawing algorithm. SYNOPSIS use Algorithm::Line::Bresenham qw/line/; my @points = line(3,3 => 5,0); # returns the list: [3,3], [4,2], [4,1], [5,0] line(3,3 => 5,0, &draw_line); # calls draw_line on each point in turn Bresenham is one of the canonical line drawing algorithms for pixellated grids. Given a start and an end-point, Bresenham calculates which points on the grid need to be filled to generate the line between them. Googling for Bresenham, and line drawing algorithms gives some good overview. The code here takes its starting point from Mark Feldmans Pascal code in his article Bresenhams Line and Circle Algorithms at http://www.gamedev.net/reference/articles/article767.asp. FUNCTIONS line line (\$from_y, \$from_x => \$to_y, \$to_x); Generates a list of all the intermediate points. This is returned as a list of array references. line (\$from_y, \$from_x => \$to_y, \$to_x, &callback); Calls the referenced function on each point in turn. The callback could be used to actually draw the point. Returns the collated return values from the callback. circle my @points = circle (\$y, \$x, \$radius) Returns the points to draw a circle with.

 Requirements: No special requirements Platforms: Linux Keyword: Algorithmlinebresenham,  Libraries,  Line,  Perl Module,  Pixellated,  Point,  Points,  Programming Users rating: 0/10