Veronica's code for Drawing Complex Functions

Complex Graph1 Complex Graph2

FIRST SLAVE CODE FOLLOWS

<?php
// PHP slave script 1 -> drawing complex functions

// create a blank image that is 200 pixels wide and 200 pixels tall
$image imagecreate(200200);

// create a color and fill (paint) the work area
// set the color RGB (255, 255, 255), which is WHITE
$white imagecolorallocate($image255255255);

//  fill the entire image
imagefilledrectangle($image00200200$white);

// === first function

// create another color
$blue imagecolorallocate($image100100255);

// init vars
$center 100;
$PI pi();
$a 1;
$b 1;
$m 12;
$n1 5;
$n2 6;
$n3 48;

// create the graphic
for($f 0$f <= $PI$f += 0.0001)
{
    
$rpow((pow(abs(cos($m*$f/4)/$a),$n2) + pow(abs(sin($m*$f/4)/$b), $n3)), -(1/$n1));
    
$x $center $r cos ($f) * 35;
    
$y $center $r sin ($f) * 35;
    
imagesetpixel($image$x$y$blue);
}

// create yet another color
$pink imagecolorallocate($image22575195);

// === second function

// change vars
$a 1;
$b 1;
$m 8;
$n1 5;
$n2 6;
$n3 24;

// create another graphic and place it over the original graphic
for($f 0$f <= $PI$f += 0.0001)
{
    
$rpow((pow(abs(cos($m*$f/4)/$a),$n2) + pow(abs(sin($m*$f/4)/$b), $n3)), -(1/$n1));
    
$x $center $r cos ($f) * 35;
    
$y $center $r sin ($f) * 35;
    
imagesetpixel($image$x$y$pink);
}

// tell the server    what's coming, deliver it, and destroy it
header("Content-type: image/png");
imagepng($image);
imagedestroy($image);
?>


SECOND SLAVE CODE FOLLOWS

<?php
// PHP slave script 2 -> drawing a fractal

// create a blank image that is 200 pixels wide and 200 pixels tall
$image imagecreate(200200);

// create a color and fill (paint) the work area
// set the color RGB (255, 255, 255), which is WHITE
$white imagecolorallocate($image255255255);
imagefilledrectangle($image00200200$white);

// create another color
$red imagecolorallocate($image25500);
$orange imagecolorallocate($image24512040);
$orangeyellow imagecolorallocate($image24518045);
$yellow imagecolorallocate($image23523455);

// initial variables
$x 100;
$y 200;
$corners[0] = array('x' => 100'y' =>  20);
$corners[1] = array('x' =>   0'y' => 180);
$corners[2] = array('x' => 200'y' => 180);

// create the graphic
for ($i 0$i 100000$i++)
{
    if(
$x 90)
    {
        
imagesetpixel($imageround($x), round($y), $red);
    }
    elseif(
$x 70)
    {
        
imagesetpixel($imageround($x), round($y), $orange);
    }
    elseif(
$x 45)
    {
        
imagesetpixel($imageround($x), round($y), $orangeyellow);
    }
    else
    {
        
imagesetpixel($imageround($x), round($y), $yellow);
    }

    
$a rand(02);
    
$x = ($x $corners[$a]['x']) / 2;
    
$y = ($y $corners[$a]['y']) / 2;
}

// tell the server what's coming, deliver it, and destroy it
header('Content-Type: image/png');
imagepng($image);
imagedestroy($image);

?>
 

CODE FOLLOWS

<!-- CODE -->

<?php
include('includes/header.php');

// set error reporting to all
error_reporting(E_ALL);
?>

<h1>Veronica's code for Drawing Complex Functions</h1>

<img src="complex_function1.php" alt="Complex Graph1"> <!-- this is it -->
<img src="complex_function2.php" alt="Complex Graph2"> <!-- this is it -->

<?php

// list code for slave routine
echo('<hr><br>FIRST SLAVE CODE FOLLOWS<br><br>');
highlight_file ('complex_function1.php');

// list code for slave routine
echo('<hr><br>SECOND SLAVE CODE FOLLOWS<br><br>');
highlight_file ('complex_function2.php');

include(
'includes/footer.php');
?>