Частый гость
Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010
Помог: 0 раз(а)
|
illy пишет:Что-то знакомая функция построения графика
Спасибо, посмотрел, ничего не работает.
Спойлер (Отобразить)PHP:
скопировать код в буфер обмена
<?PHP // настройки $x0 = 600; // абсцисса точки начала отсчёта $y0 = 350; // ордината точки начала отсчёта $ks = 0.01; // точность рисования (бОльшая точность - меньшая скорость) $m = 5; // масштаб (1|2.5|5) $f0 = 10; $fc = 100; $t = 1; function formula_red($x, $f0, $t) { $f0 += $x; return sin(1 /2 *pi()*$f0*$t); } function formula_blue($x, $fc, $t) { $fc += $x; return cos(2 *pi()*$fc*$t); } // начало программы $m = $m * 10; // создаём изображение // настраиваем цвета // фон // рисуем координатную сетку for ($i = 0; $i <= $x0 * 2; $i++) { // линии ImageLine($img, $i * $m, 0 , $i * $m, $y0 * 2 , $lnColor); ImageLine($img, 0 , $i * $m, $x0 * 2 , $i * $m, $lnColor); // чёрточки ImageLine($img, $i * $m, $y0 - 2 , $i * $m, $y0 + 2 , $odColor); ImageLine($img, $x0 - 2 , $i * $m, $x0 + 2 , $i * $m, $odColor); } // рисуем циферки for ($i = 0; $i <= $x0 * 2; $i++) { if ($i - ($x0 / $m) != 0 ) imagettftext($img, 6 , 270 , $i * $m - 1 , $y0 + 5 , $odColor, "arial.ttf", $i - ($x0 / $m)); if (- ($i - ($y0 / $m)) != 0 ) imagettftext($img, 6 , 0 , $x0 + 5 , $i * $m + 2 , $odColor, "arial.ttf", - ($i - ($y0 / $m))); } // рисуем координатные оси ImageLine($img, $x0, 0 , $x0, $y0 * 2 , $odColor); ImageLine($img, 0 , $y0, $x0 * 2 , $y0, $odColor); // рисуем графики функций for ($x = -$x0; $x < $x0; $x += $ks) { if ($y = formula_red($x, $fc, $t)) { if ($x >= 0) $d = 1; else $d = 0; $qx = $x * $m; $y = $y * $m; ImageLine($img, $x0 + $d + $qx, $y0 - $y+$t+1 , $x0 + $d + $qx, $y0 - $y, $grColor2); } if ($y = formula_blue($x, $f0, $t)) { if ($x >= 0) $d = 1; else $d = 0; $qx = $x * $m; $y = $y * $m; ImageLine($img, $x0 + $d + $qx, $y0 - $y+$t, $x0 + $d + $qx, $y0 - $y, $grColor1); } } imagettftext($img, 11 , 0 , 9 , 20 , $grColor2, "arial.ttf", "Формула: sin(1/2*pi()*$f0*$t)"); imagettftext($img, 11 , 0 , 9 , 40 , $grColor1, "arial.ttf", "Формула: cos(2*pi()*$fc*$t)"); // выводим изображение в браузер header("Content-type: image/png"); // завершаем программу ?>
Работает.
Но мне нужно нарисовать модулятор и демодулятор. Буду думать дальше.(Отредактировано автором: 13 Октября, 2011 - 13:17:05)
|