Provided by: libopengl-image-perl_1.03-2_all
NAME
OpenGL::Image::Magick - load images with Image::Magick in OpenGL
DESCRIPTION
This is a driver module for use with the OpenGL module. While it may be called directly, it will more often be called by the OpenGL::Image abstraction module. Note: OpenGL::Image defaults to this module. This is a subclass of the OpenGL::Image::Common module. Requires the Image::Magick module; 6.3.5 or newer is recommended.
SYNOPSIS
########## # Check for installed imaging engines use OpenGL::Image; my $img = new OpenGL::Image(engine=>'Magick',source=>'MyImage.png'); ########## # Methods defined in the OpenGL::Image::Common module: # Get native engine object # Note: must not change image dimensions my $obj = $img->Native; $obj->Quantize() if ($obj); # Alternately (Assuming the native engine supports Blur): $img->Native->Blur(); # Test if image width is a power of 2 if ($img->IsPowerOf2()); # Test if all listed values are a power of 2 if ($img->IsPowerOf2(@list)); # Get largest power of 2 size within dimensions of image my $size = $img->GetPowerOf2(); # Get all parameters as a hashref my $params = $img->Get(); # Get one or more parameter values my @values = $img->Get(@params); # Get/Set Pixel values (normalized to 1.0) my($r,$g,$b,$a) = $img->GetPixel($x,$y); # Sync cache after done modifying pixels $img->SetPixel($x,$y,$r,$g,$b,$a); $frame->Sync(); ########## # Supported parameters: # source - source image, if defined # width - width of image in pixels # height - height of image in pixels # pixels - number of pixels # components - number of pixel components # size - bytes per component # length - cache size in bytes # endian - 1 if big endian; otherwise 0 # alpha - 1 if has alpha channel, -1 if has inverted alpha channel; 0 if none # flipped - 1 bit set if cache scanlines are top to bottom; others reserved # gl_internalformat - internal GL pixel format. eg: GL_RGBA8, GL_RGBA16 # gl_format - GL pixel format. eg: GL_RGBA, GL_BGRA # gl_type - GL data type. eg: GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT ########## # APIs defined in this module: # Get engine version my $ver = OpenGL::Image::THIS_MODULE::EngineVersion(); # Get engine description my $desc = OpenGL::Image::ENGINE_MODULE::EngineDescription(); ########## # Methods defined in this module: # Sync the image cache after modifying pixels. # Used by some engines for paged caches; otherwise a NOP. $img->Sync(); # Return the image's cache as an OpenGL::Array object. # Note: OGA may change after a cache update my $oga = $img->GetArray(); # Return a C pointer to the image's cache. # For use with OpenGL's "_c" APIs. # Note: pointer may change after a cache update $img->Ptr(); # Save file - automatically does a Sync before write $img->Save('MyImage.png'); # Get image blob. my $blob = $img->GetBlob();
VERSION
v1.03
AUTHOR
Author: Bob "grafman" Free - grafman@graphcomp.com
COPYRIGHT AND LICENSE
copyright 2007 Graphcomp - ALL RIGHTS RESERVED This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.