note 47757 added to function.imagecolorallocate

From: Date: Sun, 28 Nov 2004 12:58:43 +0000
Subject: note 47757 added to function.imagecolorallocate
Groups: php.notes 
Request: Send a blank email to php-notes+get-81124@lists.php.net to get a copy of this message
2 functions to convert from HSV colorspace (hue/saturation/brightness) to RGB (red/green/blue) colorspace and back. <?php // $c = array($red, $green, $blue) // $red=[0..1], $green=[0..1], $blue=[0..1]; function rgb2hsv($c) { list($r,$g,$b)=$c; $v=max($r,$g,$b); $t=min($r,$g,$b); $s=($v==0)?0:($v-$t)/$v; if ($s==0) $h=-1; else { $a=$v-$t; $cr=($v-$r)/$a; $cg=($v-$g)/$a; $cb=($v-$b)/$a; $h=($r==$v)?$cb-$cg:(($g==$v)?2+$cr-$cb:(($b==$v)?$h=4+$cg-$cr:0)); $h=60*$h; $h=($h<0)?$h+360:$h; } return array($h,$s,$v); } // $c = array($hue, $saturation, $brightness) // $hue=[0..360], $saturation=[0..1], $brightness=[0..1] function hsv2rgb($c) { list($h,$s,$v)=$c; if ($s==0) return array($v,$v,$v); else { $h=($h%=360)/60; $i=floor($h); $f=$h-$i; $q[0]=$q[1]=$v*(1-$s); $q[2]=$v*(1-$s*(1-$f)); $q[3]=$q[4]=$v; $q[5]=$v*(1-$s*$f); return(array($q[($i+4)%5],$q[($i+2)%5],$q[$i%5])); } } ?> ---- Manual Page -- http://www.php.net/manual/en/function.imagecolorallocate.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+47757 Delete -- http://master.php.net/manage/user-notes.php?action=delete+47757&report=yes Reason: bad code -- http://master.php.net/manage/user-notes.php?action=delete+47757&report=yes&reason=bad+code Reason: spam -- http://master.php.net/manage/user-notes.php?action=delete+47757&report=yes&reason=spam Reason: useless example -- http://master.php.net/manage/user-notes.php?action=delete+47757&report=yes&reason=useless+example Reason: contains commercial links -- http://master.php.net/manage/user-notes.php?action=delete+47757&report=yes&reason=contains+commercial+links Reason: useless note -- http://master.php.net/manage/user-notes.php?action=delete+47757&report=yes&reason=useless+note Reject -- http://master.php.net/manage/user-notes.php?action=reject+47757&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#81124) next »