Graphics-HotMap

 view release on metacpan or  search on metacpan

Build.PL  view on Meta::CPAN

use warnings;
use Module::Build;

my $builder = Module::Build->new(
    module_name => 'Graphics::HotMap',
    license     => 'gpl3',
    dist_author => 'Mathieu Alorent <cpan@kumy.net>',
    dist_abstract => 'Generate thermographic images.',
    requires    => {
        'Data::Dumper'   => 0,
        'Image::Magick'  => 0,
        'Math::Gradient' => 0,
        'PDL'            => 0,
        'PDL::NiceSlice' => 0,
        'PDL::IO::Pic'   => 0,
        'File::Temp'     => 0,
    },
    build_requires => {
        'Module::Build'     => 0,
    },
    create_makefile_pl => 'traditional',

META.yml  view on Meta::CPAN

version: 0.0001
author:
  - 'Mathieu Alorent <cpan@kumy.net>'
abstract: Generate thermographic images.
license: gpl3
build_requires:
  Module::Build: 0
requires:
  Data::Dumper: 0
  File::Temp: 0
  Image::Magick: 0
  Math::Gradient: 0
  PDL: 0
  PDL::IO::Pic: 0
  PDL::NiceSlice: 0
configure_requires:
  Module::Build: 0.340201
generated_by: Module::Build version 0.340201
meta-spec:
  url: http://module-build.sourceforge.net/META-spec-v1.4.html
  version: 1.4

Makefile.PL  view on Meta::CPAN

# Note: this file was auto-generated by Module::Build::Compat version 0.340201
use ExtUtils::MakeMaker;
WriteMakefile
(
          'NAME' => 'Graphics::HotMap',
          'VERSION_FROM' => 'lib/Graphics/HotMap.pm',
          'PREREQ_PM' => {
                           'Data::Dumper' => 0,
                           'File::Temp' => 0,
                           'Image::Magick' => 0,
                           'Math::Gradient' => 0,
                           'Module::Build' => 0,
                           'PDL' => 0,
                           'PDL::IO::Pic' => 0,
                           'PDL::NiceSlice' => 0
                         },
          'INSTALLDIRS' => 'site',
          'EXE_FILES' => [],
          'PL_FILES' => {}
        )

lib/Graphics/HotMap.pm  view on Meta::CPAN


See L<http://kumy.org/HotMap/HotMap.png>

=head2 FUNCTIONS

=over 4

=cut

use Data::Dumper;
use Image::Magick;
use Math::Gradient qw(multi_array_gradient);
use PDL;
use PDL::NiceSlice;
use PDL::IO::Pic;
use POSIX qw(strftime);
use File::Temp qw/ :POSIX /;
use File::Temp qw/ tempfile tempdir /;

use constant {
   PALETTE_SLICE => 35,

lib/Graphics/HotMap.pm  view on Meta::CPAN


}

=for comment
generate the image from the interpolated map.

=cut

sub _genPicture {
   my $self = shift;
   my $image = $self->{_im} = new Image::Magick();

# write a temporary image of the piddle
   my $imag =  byte $self->{_mapPoints};
   my $tmpName = tmpnam().'.png';
   #eval { $self->{_hotMap}->genImage };
   #print STDERR "error: _genTemperatureImage: $@" if $@;
   my $cptLoop = 0;
   do {
      eval {$imag->wpic($tmpName, { LUT => $self->{_gradient}{colors} }); };
      ++$cptLoop;

lib/Graphics/HotMap.pm  view on Meta::CPAN


=cut

sub genImageGif {
   my $self = shift;
   my $fileName = shift || $self->{_outfileGif} || die "No output GIF specified";
   my $image = shift;
   my $im = $self->{_im};

   unless (defined $image) {
      $image = new Image::Magick(size => "$self->{_mapSize}{x}x$self->{_mapSize}{y}");
      $image->Read($fileName);
   }
   $image->Set(magick=>'GIF', loop=> 100);
   $im->Set(magick=>'GIF', delay=>100);
   push (@$image, $im);
   $self->_saveImg($fileName, $image);
   return {
        width    => $image->Get('width'),
        height   => $image->Get('height'),
        filesize => $image->Get('filesize'),



( run in 0.690 second using v1.01-cache-2.11-cpan-beeb90c9504 )