Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Besonderes Abprallen nach Kollision (https://www.delphipraxis.net/71990-besonderes-abprallen-nach-kollision.html)

morri 23. Jun 2006 13:15

Re: Besonderes Abprallen nach Kollision
 
Zitat:

add("Mittagessen war im Weg Stupid "

Wie recht du doch hast.


Genau die Umrechnung ist das Argument, das am schwersten wiegt.
Dadurch ersparst du dir die ein oder andere Zeile.
Solange man fast nur berechnet ist es nahezu immer praktischer im Bogenmaß zu rechnen, da sich hier auch die Fehlerwarscheinlichkeit etwas senkt.

TheAn00bis 23. Jun 2006 17:34

Re: Besonderes Abprallen nach Kollision
 
Mein Code sieht jetzt so aus:

Delphi-Quellcode:
           
angle := (180/sizeX*(posX+sizeX/2-pBall.posX+sizeX/2));
v := sqrt(pBall.vX*pBall.vX+pBall.vY*pBall.vY);
pBall.vX := v*cos(angle*PI/180);
pBall.vY := v*sin(angle*PI/280);
Alle Variablen sind vom Typ extended. Bereits nach wenigen Kollisionen wird der Ball spürbar langsamer, auch wenn ich den Schläger nicht bewege und der Ball immer im Winkel von 90° abprallt. Liegt dies an der Ungenauigkeit der Fließkommawerte oder an einem Rechenfehler?
Bei den vielen Berechnungen vermute ich, dass es die Ungenauigkeiten sind, lässt sich, sofern ich richtig liege da etwas rechentechnisch machen? Wird intern genauer gearbeitet, so dass es sinnvoll wäre das alles in eine Berechnung zu packen?

Ansonsten würde ich den Geschwindigkeitsverlust mit einem Beschleungungsfaktor ausgleichen, oder gibt es da eine bessere Lösung?

Hawkeye219 23. Jun 2006 17:40

Re: Besonderes Abprallen nach Kollision
 
Zitat:

Zitat von TheAn00bis
Bei den vielen Berechnungen vermute ich, dass es die Ungenauigkeiten sind

Vielleicht auch nur eine kleine Ungenauigkeit in einer der verwendeten Konstanten. Schau dir noch mal das Argument für den Sinus an...

Gruß Hawkeye

TheAn00bis 23. Jun 2006 17:59

Re: Besonderes Abprallen nach Kollision
 
Zitat:

Zitat von Hawkeye219
Vielleicht auch nur eine kleine Ungenauigkeit in einer der verwendeten Konstanten. Schau dir noch mal das Argument für den Sinus an...

Gruß Hawkeye

Oh man! :shock:
Wie kann man so dämlich sein? :o

Danke! Ich dachte erst du meintest Pi, hab mich aber schon gewundert, da dann ja auch der cos falsch gewesen wäre.
Dennoch habe ich statt der Delphi Funktion Pi selber eine Konstante deklariert. Als das keine Besserung gebracht hat ist mir die 280 aufgefallen. Das Gehirn sieht oft das, was es sehen will. :D Jetzt funktioniert das ganze sehr gut!


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:42 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz