Toto je třetí varianta hry Inspiro, která kreslí Lissajousovy obrazce.
Časem jsem naprogramoval ještě
jiné varianty.
Pokud byste měli zájem o zdrojové soubory, není problém zaslat. Je to pár řádek v polárních souřadnicích.
Hodnoty, které nenastavíte, určí počítač náhodně. Vyzkoušejte klávesu F5 - reload.
Bohužel ještě nemám dodělaný výstup a nastavování parametrů, takže zatím to kreslí nahodilé obrazce.
<?php
$pomerx=1;
$pomery=1;
// $pomer=1/pi();
// $pomer=100/104;
$pomer=rand(1,100)/rand(1,100);
if ($vypis!=1) Header("Content-type: image/png");
if ($pozadir=="") $pozadir=255;//128 0 cerna 255 bila
if ($pozadig=="") $pozadig=255;//0
if ($pozadib=="") $pozadib=255;//0
if ($popredir=="") $popredir=0;//150
if ($popredig=="") $popredig=0;//60
if ($popredib=="") $popredib=0;//0
if ($picWidth=="") $picWidth=400;//round(400*$pomerx);
if ($picHeight=="")$picHeight=400;//round(400*$pomery);
$xbase = $picWidth / 2;
$ybase = $picHeight / 2;
if ($pomerx=="") $pomerx=rand(20,100)/100;
if ($pomery=="") $pomery=rand(20,100)/100;
$pic=ImageCreate($picWidth+1,$picHeight+1);
$cRed=ImageColorAllocate($pic,$pozadir,$pozadig,$pozadib); //pozadi
$cYellow=ImageColorAllocate($pic,$popredir,$popredig,$popredib); //popredi
if ($krok=="") $krok=rand(1,150)/10;
if ($kroku=="") $kroku=rand(5,1000)*$krok;
$j = 0;
$a1 = $j/$krok;//úhel alfa
$a2 = $pomer*$j/$krok;//úhel beta
$nx = round($xbase + sin($a1)*$xbase*$pomerx);
$ny = round($ybase + sin($a2)*$ybase*$pomery);
$px = $nx;
$py = $ny;
do {
$j++;
$a1 = $j/$krok;//úhel alfa
$a2 = $pomer*$j/$krok;//úhel beta
$sx=$nx;
$sy=$ny;
$nx = round($xbase + sin($a1)*$xbase*$pomerx);
$ny = round($ybase + sin($a2)*$ybase*$pomery);
imageline($pic, $sx, $sy, $nx, $ny, 1);
// imagesetpixel ($pic, $nx,$ny , 1);
} while ((($nx!=$px) || ($ny!=$py)) && ($j<$kroku));
if ($vystup==1):
$f = fopen("background3.htm", "w");
$promenne="picWidth=".$picWidth."&picHeight=".$picHeight."&pozadir=".$pozadir."&pozadig=".$pozadig."&pozadib=".$pozadib."&popredir=".$popredir."&popredig=".$popredig."&popredib=".$popredib."&pomer=".$pomer."&elipsa=".$elipsa."&r1=".$r1."&r2=".$r2."&r3=".$r3."&orientace=".$orientace."&krok=".$krok."&kroku=".$kroku;
fputs($f, "<html><body>");
fputs($f, "<a href=inspiro3.php?".$promenne.">hodnoty vlozit do formulare inspiro3.php</a><br>");
fputs($f, "<a href=background3.php?".$promenne.">ulozene hodnoty z background3.php</a><br>");
fputs($f, $promenne);
fputs($f, "</body></html>");
fclose($f);
endif;
Imagepng($pic);
ImageDestroy($pic);
?>