ID:               50711
 Updated by:       paj...@php.net
 Reported By:      lee dot traynor at skeptic dot de
-Status:           Open
+Status:           Bogus
 Bug Type:         *Graphics related
 Operating System: Windows XP SP3
 PHP Version:      5.3.1
 New Comment:

Report pecl's extension to pecl.php.net


Previous Comments:
------------------------------------------------------------------------

[2010-01-10 10:16:35] lee dot traynor at skeptic dot de

Description:
------------
When used ieteratively, imagick:distortImage compounds the distortion
on the image from one image to the next.

Reproduce code:
---------------
---
>From manual page: function.imagick-distortimage
---
<?php
# $grfile is a panoramic image; $incr is the displacement in
pixels/interation
$grfile = "Canadas.png";
$incr = 10;
# For some strange reason, "new" requires the tiemzone to be set
date_default_timezone_set ("Europe/Berlin");
$imsrc = new Imagick ($grfile);
$srcwidth = $imsrc->getImageWidth ();
$srcheight = $imsrc->getImageHeight ();
$image_type = $imsrc->getImageFormat ();
$subdir = substr ($grfile, 0, strpos ($grfile, "."));
if (!is_dir ($subdir)) mkdir ($subdir);
$aspectratio = 4/3;
$destwidth = floor ($srcheight * $aspectratio);
$imax = ceil ($srcwidth  - $destwidth) / $incr;
$dx = $dy = -0.02;
$distort = array (0.0, 0.0, $dx, 1 - $dx * $aspectratio, 0.0, 0.0, $dy,
1 - $dy);
for ($i = 0; $i < $imax; $i++)
{
        set_time_limit (10);
        $imdest = $imsrc->clone ();
        $file_dest = $subdir . "\\" . sprintf ("%04u", $i) . "." .
$image_type;
        $start = round ($i * $incr);
        $imdest = $imsrc->clone ();
        $imdest->cropImage ($destwidth, $srcheight, $start, 0);
        $imdest->setImageVirtualPixelMethod(Imagick::VIRTUALPIXELMETHOD_GRAY);
        $imdest->distortImage (imagick::DISTORTION_BARREL, $distort, true);
        $imdest->writeImage ($file_dest);
        $imdest->destroy ();
}
$imsrc->destroy ();
?>

Expected result:
----------------
A series of images with identical barrel distortions.

Actual result:
--------------
A series of images with the distortion increasing from one image to the
next.


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=50711&edit=1

Reply via email to