The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Algorithm::Line::Bresenham::C - it is a C version Algorithm::Line::Bresenham to speed up a bit.

SYNOPSIS

 use Algorithm::Line::Bresenham::C qw/line/;
 my @points = line(3,3 => 5,0);
    # returns the list: [3,3], [4,2], [4,1], [5,0]

DESCRIPTION

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 Feldman's Pascal code in his article Bresenham's 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.

circle

    my @points = circle ($y, $x, $radius)

Returns the points to draw a circle with

SEE ALSO

Algorithm::Line::Bresenham

The original pure perl version.

AUTHOR and LICENSE

Lilo Huang, kenwu@cpan.org

Copyright (c) 2008 Lilo Huang. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html

1 POD Error

The following errors were encountered while parsing the POD:

Around line 66:

You forgot a '=back' before '=head1'