f:Y = sin(X)
= reset, then it will be reseted to zero
$zoom = 1; //1 //This will repeat every line few times
$offset = 1.1; //1.1 //1 //0 -> Zero offset will draw only half of sin curve.
$width = 35; //20 //35 //40 //This will stretch every line.
$sleep = "0"; //15000 - Wait between lines in microseconds
$line = (" "); // " " // ":" //chr ( 176 ) //This is the string, that will be repeated from display start to the curve (curve inlay).
$endline = ("+
\n"); // "#
\n" // ".
\n" //chr ( 219 )."
\n" //This is the string, that will be printed at end of every line (curve outline).
//Read settings from form:
if ($_GET["start"] != "") {
$start = $_GET["start"];}
if ($_GET["reset"] != "") {
$reset = $_GET["reset"];}
if ($_GET["step"] != "") {
$step = $_GET["step"];}
if ($_GET["offset"] != "") {
$offset = $_GET["offset"];}
if ($_GET["width"] != "") {
$width = $_GET["width"];}
if ($_GET["zoom"] != "") {
$zoom = $_GET["zoom"];}
if ($_GET["outline"] != "") {
$endline = ($_GET["outline"]."
\n");}
if ($_GET["inlay"] != "") {
$line = $_GET["inlay"];}
//Code:
echo ("[SinusCurve]-[c][Harvie][2oo6]
\n
\n");
echo (" | y
\n");
echo ("-+----------------------------------------------------------------------------->-------> Y >
\n");
echo ("x|
\n");
echo (" V
\n\n");
//sleep(2);
$pos = $start;
while(1) {
//usleep($sleep); //Wait in microseconds
$znaku = ((sin($pos) + $offset) * $width);
$zoom2 = $zoom;
while ($zoom2 > 0) {
$znaku2 = round($znaku); //It looks better after round ;)
while ($znaku2 > 0) {
echo $line;
$znaku2 = ($znaku2 - 1);
}
//echo(" ".$pos); //Debug
echo ($endline);
$zoom2 = ($zoom2 - 1);
}
$pos = ($pos + $step);
if ($pos >= $reset) {
$pos = 0;
die();
}
}
?>