Math-Polygon
view release on metacpan or search on metacpan
t/33centroid.t view on Meta::CPAN
#!/usr/bin/env perl
use lib '../lib';
use Math::Polygon::Calc 'polygon_centroid';
use warnings;
use strict;
use Test::More tests => 5;
sub compare_point($$)
{ my ($a, $b) = @_;
$a->[0] == $b->[0]
&& $a->[1] == $b->[1]
}
my $centroid1 = polygon_centroid [0,0], [0,10], [10,10], [10,0], [0,0];
ok(compare_point($centroid1, [5,5]));
my $centroid2 = polygon_centroid [6,2], [12,2], [12,8], [6,2];
ok(compare_point($centroid2, [10,4]));
my $centroid3 = polygon_centroid [1,2], [7,2], [13,8], [1,2];
ok(compare_point($centroid3, [7,4]));
my $centroid4 = polygon_centroid [3,2], [10,2], [12,8], [5,8], [3,2];
ok(compare_point($centroid4, [7.5,5]));
# line piece
my $c5 = polygon_centroid [1,2], [5,6], [1,2];
ok(compare_point($c5, [3,4]));
# longer line
#my $c6 = polygon_centroid [1,2], [5,6], [9,10], [1,2];
#ok(compare_point($c6, [5,6]));
( run in 0.725 second using v1.01-cache-2.11-cpan-39bf76dae61 )