Mailinglisten-Archive |
Hi Helferteam, irgendwie hab' ich/wir das voellig umstaendlich angepackt. http://itbw.de/_tests/diverse/phplist/_ellipse.php4 $A = 66; /* halbe Breite */ $B = 33; /* halbe Hoehe */ $C = 200; /* Mitte-X */ $D = 150; /* Mitte-Y */ $c2P = 2* M_PI; for($i=0; $i<$c2P; $i+=0.01) {$x = round(cos($i) * $A); $y = round(sin($i) * $B); $erg = ImageSetPixel($neu, ($C + $x), ($D - $y), $red); } fertig ist die Ellipse. Dann die Gerade zeichnen, ist ja auch easy $erg = ImageLine($neu, $C, $D, ($C + $mX), ($D - $mY), $blk); Den Winkel der Geraden berechnen: $phi = atan($GeK / $AnK) + ($qur * M_PI_2); Das ist etwas triky, weil atan(); nicht eindeutig ist. Je nach dem, in welchem Quadranten man gerade ist, muss man wahlweise $mX, $mY den $GeK, $AnK zuweisen, und dann die fehlenden 1/2 PI addieren. Zur Kontrolle schnell einen roten Punkt gemalt: $x = round(cos($phi) * $laenge); $y = round(sin($phi) * $laenge); $erg = ImageArc($neu, ($C + $x), ($D - $y), 5, 5, 0, 360, $red); passt schon prima, aber dann, die Ernuechterung: $x = round(cos($phi) * $A); $y = round(sin($phi) * $B); $erg = ImageArc($neu, ($C + $x), ($D - $y), 5, 5, 0, 360, $blu); Der blaue Punkt liegt immer irgendwie daneben... :-((( Woran koennte das nun wieder liegen <gruebel> m. b. G. Norbert _____________________ normal: 02292-681769 Notruf: 0177-2373368 --------------------- e.o.m.
php::bar PHP Wiki - Listenarchive