login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[GameDev] Vectoren spiegelen

Offline Lemon - 07/07/2006 00:51
Avatar van LemonPHP expert Illustratie:
http://www.jell...r_math.GIF

De dikke donkerblauwe lijn is een lijnstuk.

De andere lijnen zijn vectoren.

Vector C is een snelheidsvector.
Vector A is de normaal van het lijnstuk.

Nu stel een bal kaats tegen dat lijnstuk met de vector C. Dan zal deze bal moeten weerkaatst worden met de Vector B.

M.a.w. Vector C moet geinverteerd worden en vervolgens gespiegeld worden tenopzichten van Vector A (de normaal van dat vlak).

Nu mijn vraag hoe.
Hoe kan ik vector B berekenen met enkel Vector C en vector A gegeven. En zonder goniometrische functies zoals sinus en cosinus en pie?

2 antwoorden

Gesponsorde links
Offline MothZone - 07/07/2006 03:47
Avatar van MothZone PHP ver gevorderde Zonder iets van goniometrie lijkt me dit onmogelijk om te berekenen.

Als je goniometrie niet wil gebruiken omdat dit gewoon niet kan (geen functies voor ofzo) is er mss wel een (erg omslachtige) oplossing.
Je kan dan een array maken met waardes die verbonden zijn aan de sinus.

vb:
sinus(0) = 0
...
sinus(90) = 1

dan zet je in je script:
je_array[0] = 0;
...
je_array[90] = 1;

Dit kan je snel genereren met een php-scriptje ofzo.
Offline Lemon - 07/07/2006 10:53
Avatar van Lemon PHP expert Heb de oplossing gevonden

Vnew = Vold - [ 2 * Vnormal * (Vnormal DOT Vold) ]
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.173s