Req #63814 [Wfx]: angles parameters in imagefilledarc are integers, they should be float
Edit report at https://bugs.php.net/bug.php?id=63814&edit=1 ID: 63814 User updated by:webmaster at fxtop dot com Reported by:webmaster at fxtop dot com Summary:angles parameters in imagefilledarc are integers, they should be float Status: Wont fix Type: Feature/Change Request Package:GD related Operating System: Windows PHP Version:5.4.9 Block user comment: N Private report: N New Comment: Hello, thanks for your investigation. I don't blame that coordinates in pixel are integers, that's normal. The problem is that angles are integers, which is an undue limitation : angles are rounded to nearest degree. In astronomy, they deal with seconds of arc, which is 1/3600 of a degree. If problem is inside an external library, it should be reported to that library. What is the proper website to report such limitation ? Regards Previous Comments: [2012-12-28 10:57:57] a...@php.net That's right, gd takes only integers for coordinates as they're literally pixels. See here for arcs http://lxr.php.net/xref/PHP_5_4/ext/gd/libgd/gd.h#546 If you work with float data, you probably will need to do conversion from/to int. [2012-12-20 15:24:21] r...@php.net the gd extension is mostly a wrapper for gd library. As gd library doesn't accept float values for this comment, I think this is not possible. ---- [2012-12-20 12:32:55] webmaster at fxtop dot com Description: see sample result at http://mon-convertisseur.fr/php/imgangle.php?DEGRE=172.3 angles are truncated to nearest integer, in imagefilledarc function, they shouldn't you can change parameter if you like --- >From manual page: >http://www.php.net/function.imagefilledarc#refsect1-function.imagefilledarc-description --- Test script: --- header("Content-type: image/jpeg"); if (isset($_GET["DEGRE"])){ $lDegre=$_GET["DEGRE"];} $lSizeX=916; $lSizeY=945; $image = imagecreatetruecolor($lSizeX, $lSizeY); $colorGreen = imagecolorallocate($image, 0, 255, 0); // background coming from http://commons.wikimedia.org/wiki/File:Protractor_katomierz.jpg with some little changes $fond=imagecreatefromjpeg("Protractor_katomierz_tourne05b.jpg"); //HERE I ROUND DEGRE PARAMETER BECAUSE imagefilledarc only accept integers (I prefer it rounded than truncated) $lNumDegre=round($lDegre); $lResult|=imagefilledarc ($image , 460 , 474 , 2*430 , 2*430 , -$lNumDegre , 0, $colorGreen , IMG_ARC_PIE ); $lResult|=imagecopymerge($image, $fond, 0, 0, 0 , 0, $lSizeX,$lSizeY,75); imagejpeg($image, "temp.jpg"); imagedestroy($image); echo file_get_contents("temp.jpg"); Expected result: imagefilledarc should accept float parameters for "start" and "end" parameters. As you can see on sample at http://mon-convertisseur.fr/php/imgangle.php?DEGRE=172.3 green backgound allways fall on a degre graduation of the protactor. -- Edit this bug report at https://bugs.php.net/bug.php?id=63814&edit=1
[PHP-BUG] Req #63814 [NEW]: angles parameters in imagefilledarc are integers, they should be float
From: webmaster at fxtop dot com Operating system: Windows PHP version: 5.4.9 Package: GD related Bug Type: Feature/Change Request Bug description:angles parameters in imagefilledarc are integers, they should be float Description: see sample result at http://mon-convertisseur.fr/php/imgangle.php?DEGRE=172.3 angles are truncated to nearest integer, in imagefilledarc function, they shouldn't you can change parameter if you like --- >From manual page: http://www.php.net/function.imagefilledarc#refsect1-function.imagefilledarc-description --- Test script: --- header("Content-type: image/jpeg"); if (isset($_GET["DEGRE"])){ $lDegre=$_GET["DEGRE"];} $lSizeX=916; $lSizeY=945; $image = imagecreatetruecolor($lSizeX, $lSizeY); $colorGreen = imagecolorallocate($image, 0, 255, 0); // background coming from http://commons.wikimedia.org/wiki/File:Protractor_katomierz.jpg with some little changes $fond=imagecreatefromjpeg("Protractor_katomierz_tourne05b.jpg"); //HERE I ROUND DEGRE PARAMETER BECAUSE imagefilledarc only accept integers (I prefer it rounded than truncated) $lNumDegre=round($lDegre); $lResult|=imagefilledarc ($image , 460 , 474 , 2*430 , 2*430 , -$lNumDegre , 0, $colorGreen , IMG_ARC_PIE ); $lResult|=imagecopymerge($image, $fond, 0, 0, 0 , 0, $lSizeX,$lSizeY,75); imagejpeg($image, "temp.jpg"); imagedestroy($image); echo file_get_contents("temp.jpg"); Expected result: imagefilledarc should accept float parameters for "start" and "end" parameters. As you can see on sample at http://mon-convertisseur.fr/php/imgangle.php?DEGRE=172.3 green backgound allways fall on a degre graduation of the protactor. -- Edit bug report at https://bugs.php.net/bug.php?id=63814&edit=1 -- Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=63814&r=trysnapshot54 Try a snapshot (PHP 5.3): https://bugs.php.net/fix.php?id=63814&r=trysnapshot53 Try a snapshot (trunk): https://bugs.php.net/fix.php?id=63814&r=trysnapshottrunk Fixed in SVN: https://bugs.php.net/fix.php?id=63814&r=fixed Fixed in release: https://bugs.php.net/fix.php?id=63814&r=alreadyfixed Need backtrace: https://bugs.php.net/fix.php?id=63814&r=needtrace Need Reproduce Script: https://bugs.php.net/fix.php?id=63814&r=needscript Try newer version: https://bugs.php.net/fix.php?id=63814&r=oldversion Not developer issue:https://bugs.php.net/fix.php?id=63814&r=support Expected behavior: https://bugs.php.net/fix.php?id=63814&r=notwrong Not enough info: https://bugs.php.net/fix.php?id=63814&r=notenoughinfo Submitted twice: https://bugs.php.net/fix.php?id=63814&r=submittedtwice register_globals: https://bugs.php.net/fix.php?id=63814&r=globals PHP 4 support discontinued: https://bugs.php.net/fix.php?id=63814&r=php4 Daylight Savings: https://bugs.php.net/fix.php?id=63814&r=dst IIS Stability: https://bugs.php.net/fix.php?id=63814&r=isapi Install GNU Sed:https://bugs.php.net/fix.php?id=63814&r=gnused Floating point limitations: https://bugs.php.net/fix.php?id=63814&r=float No Zend Extensions: https://bugs.php.net/fix.php?id=63814&r=nozend MySQL Configuration Error: https://bugs.php.net/fix.php?id=63814&r=mysqlcfg