Imager-TimelineDiagram
view release on metacpan or search on metacpan
TimelineDiagram.pm view on Meta::CPAN
carp("Failed to create new Imager object : $!");
return(undef);
}
my $self = bless(\%hashObject,$class||__PACKAGE__);
}
# set list of milestones.
sub set_milestones {
my ($self,@milestones) = @_;
$self->{_legend} = [@milestones];
}
# and AoA of :
# @array = (
# ['processFrom','processTo','time'],
# .
# .
# .
# )
# time being units from start of timeline
TimelineDiagram.pm view on Meta::CPAN
######## internal functions #######
# draw the grid and labels
sub _draw_grid {
my ($self) = @_;
my $image = $self->{_image};
my @v_lines;
my @points = @{ $self->{_legend} };
# for every $gridSpacing pixes across, draw a vertical line
for (my $i=$self->{'gridXOffset'}; $i <= $self->{'gridWidth'} ;$i += $self->{'gridSpacing'}) {
$image->line(color => $self->{'gridColor'}, x1 => $i, y1 => $self->{'gridYOffset'},
x2 => $i, y2 => $self->{'gridYOffset'}+$self->{'gridHeight'});
push(@v_lines,$i);
}
# for every $gridSpacing pixes across, draw a horizontal line
for (my $i=$self->{'gridYOffset'}; $i < $self->{'gridYOffset'}+$self->{'gridHeight'} ;$i += $self->{'gridSpacing'}) {
( run in 1.264 second using v1.01-cache-2.11-cpan-49f99fa48dc )