![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 28 Dołączył: 4.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Na wstępie dodam, że słabo znam się na GD - dopiero uczę się "malować" w php (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) . Mam taki kod:
Jak narysować sinusoidę i cosinusoidę znalazłem w komentarzach w manualu. Zrobiłem tylko drobne przeróbki (dodałem minus przed tymi funkcjami, czyli odwróciłem je, bo nie wiedzieć dlaczego w oryginalnym skrypcie rysowały się one odwrócone (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ). Wykresy tangensa i contangensa sam sobie zrobiłem na podstawie wykresów cosinusa i sinusa. Niestety tangensoida i cotangensoida rysują się razem z asymptotami, bo nie są określone ich dziedziny. Asymptoty nie należą do dziedziny. W przypadku sinusa i cosinusa nie ma tego problemu, bo ich dziedziną jest zbiór liczb rzeczywistych. Próbowałem różnych kombinacji, ale nic mi z tego nie wychodziło... Jeśli chodzi o normalny zapis, to byłby on następujący: ( zapis lekko phpepowy, bo tak mi wygodniej, a symbole matematyczne mogłyby się komuś pomylić ze składnią php (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ) //tangens tan($x)=sin($x)/cos($x) dla cos($x)<>0 cos($x)<>0 dla $x<>pi()/2+round($k)*pi() pi()/2+round($k)*pi() // asymptota tangensa //cotangens function ctan($x) { $v = cos($x)/sin($x); return $v; } ctan($x) == true dla sin($x)<>0 sin($x)<>0 dla $x<>round($k)*pi() round($k)*pi() // asymptota cotangensa #### Zasadnicze pytanie brzmi następująco: Jak usunąć asymptoty tangensoidy i contangensoidy na wykresie? Dziękuję za wszelką pomoc (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Pozdrawiam. Ten post edytował Speedy 10.12.2005, 23:11:44 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Dla tangensa
rysujesz linie od poprzedniego pounktu do nowego, gdy mijasz asymptote: poprzedni Y == +nieskonczonosc, nowy Y == -nieskonczonosc, wiec rysuje ci linie miedzy tymi punktami: (PI +- 1 pixel, +inf) --> (PI +- 1 pixel, -INF). Musisz wykryc X, dla ktorego wystepuje asymptota i wtedy nie rysowac linii. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 28 Dołączył: 4.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
hm... wiem, tylko niestety nie wiem jak to zapisać w php...
Próbowałem robić jakieś instrukcje warunkowe, ale zawsze wypluwało mi błędy... Mógłbym prosić o konkretny kod, lub chociaż jego zarys? (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif) . |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 411 Pomógł: 35 Dołączył: 27.06.2004 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
To kwestia matematyki, a nie php
linijka 59: zamień
na
ctg, analogicznie Aha piszę się asymptota ;-) Ten post edytował legorek 10.12.2005, 22:24:06 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 28 Dołączył: 4.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Legorek, dzięki wielkie (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) .
Może za mało podłubałem w matematycznych funkcjach w manualu... W każdym razie teraz wszystko śmiga (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) . contangensoidę też sobie zrobiłem dzięki Tobie bez asymptot (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
PS. Poprawiłem w swoich wypowiedziach wyraz asymptoty - dzięki za poprawkę (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Pozdrawiam! Ten post edytował Speedy 10.12.2005, 23:04:38 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 11.06.2005 Skąd: Gostyń Ostrzeżenie: (0%) ![]() ![]() |
Taki drobiazg, jeśli nie sprawi Ci to kłopotu: możesz wkleić poprawiony kod? Może się przydać komuś, kto w przyszłości będzie szukał (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) .
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 28 Dołączył: 4.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Proszę (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Dodatkowo dorzuciłem kilka zmiennych ($a, $b, $c, $d, $e, $f, $g, $h). Zrobiłem to po to, aby wygodniej można było regulować zbiór wartości funkcji i okres zasadniczy.
Ten post edytował Speedy 3.09.2008, 19:38:25 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 01:14 |