![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam.. mam problem. Chciałem pobawić się z gd2 i wymyśliłem sobie wyrysowanie wykresu funkcji liniowej, tylko teraz mam problem :/
Jak wyliczyć kąt pod którym będzie padać linia mając podane szerokość a i wysokość b Przykład Kod ^ 4-| / | / 3-| / | / 2-| / | / 1-|/ ---------------------> | | | | | | | | 1 2 3 4 5 6 7 8 W tym wypadku linia pada pod kątem 45 stopni (umownie bo przechodzi przez punkt (1,1) a = 1 b = 1 Tylko nie wiem jak to obliczyć ![]() ![]() ![]() |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 30.05.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Nie znam gd2, ale czy nie ma tam funkcji, która rysuje prostą przechodzącą przez 2 podane punkty obrazu? Byłoby to dużo łatwiejsze, wystarczy wyliczyć dwie wartości i puścić prostą przez te 2 punkty.
Jeśli niema czegoś takiego, to zostaje tylko trygonometria ![]() -------------------- Chciałbyś zobaczyć program bez błędów? Wyobraź sobie UFO, w którym Elvis doi swojego jednorożca
|
|
|
![]()
Post
#3
|
|
Administrator PHPedia.pl Grupa: Developerzy Postów: 1 102 Pomógł: 2 Dołączył: 14.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(lolek09 @ 2005-03-26 18:22:35) Jeśli niema czegoś takiego, to zostaje tylko trygonometria ![]() Jasne, że są, wystarczy zobaczyć do manuala ![]() math" title="Zobacz w manualu PHP" target="_manual -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 16.08.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
php ma wszystkie istotniejsze funkcje - zarówno trygonometryczne jak i logarytmy, potęgi itp. więc nie ma problemu
![]() a jak kąt policzyć? ![]() ![]() czyli jak masz prostą y = ax + b, to a = tg alfa (czyli tangens konta nachylenia). arcus tangens (a) = kąt nachylenia (alfa). Funkcje musisz sobie sam znaleźć w dokumentacji. Jeśli nie o to chodziło, to sorry ;] Edit: spóźniłem się ;] ale druga część posta może się przyda. Ten post edytował CyklOP 26.03.2005, 18:37:30 -------------------- This page is 100% valid MSHTML. We guarantee it will only view in MSIE.
Na warsztacie: replays.pl |
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków ![]() |
hm...
Władować wszystkie kąty wraz z wartościami do tablicy ? ![]() |
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
dalej.. mam teraz funkcję arcos cosinusa
![]()
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 16.08.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
A w radianach dobrą wartość podaje?
Ten post edytował CyklOP 26.03.2005, 18:54:01 -------------------- This page is 100% valid MSHTML. We guarantee it will only view in MSIE.
Na warsztacie: replays.pl |
|
|
![]()
Post
#9
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Właśnie, że mam problem ze zrozumieniem... kończę dopiero gimnazjum
![]() wyniki: radian: 0.948683298051 cosinus: 0.582753610702 według tablic matematycznych kąt alfa powinien wynosić 18-19 stopni, a wykorzystując funkcję rad2deg zwraca mi 56 z kawałkiem... nie rozumiem. Odrazu zaznaczam, że taki sam wynik zwraca mi w EXCEL'u: 54,35554907 bo sprawdzałem. Ten post edytował Tiraeth 26.03.2005, 18:59:12 |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 16.08.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Wszystko jasne.
Poprawny kod:
$cos = $x/$r; zamiast $cos = cos($x/$r); ! po prostu x / r = cos alfa, z definicji. Nie nalezy tego "cosinusować" jeszcze ![]() -------------------- This page is 100% valid MSHTML. We guarantee it will only view in MSIE.
Na warsztacie: replays.pl |
|
|
![]()
Post
#11
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
popatrz na to:
jak obliczyć kąt przecięcia dwóch prostych (dla funkcji zapisaychj: y=m1*x+n1 oraz y=m2*x+n2): tan ALFA =| (m2 - m1)/(1+m1*m2) | dla Ciebie m1 = 0, więc tan ALFA =| m2/1 | tan ALFA =|m2| (ew. tan ALFA = |m1|, zależy jak przekształcasz) // czyli dokładnie to, co napisał CyklOP czyli idąc dalej: tan-1 m2 = ALFA
Ten post edytował Jabol 26.03.2005, 19:07:55 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 19:22 |