Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi reflektierender Ball - Hilfe! (https://www.delphipraxis.net/150219-reflektierender-ball-hilfe.html)

Smokey002 10. Apr 2010 19:20

Re: reflektierender Ball - Hilfe!
 
ok danke erstmal den Leuten, die mir versucht haben zu helfen :)

habe jetzt den Ball und den Schläger.
Jetzt bräuchte ich noch eine Art Kollisionsabfrage zwischen den Beiden. Wie bewerkstellige ich dies?

waldforest 10. Apr 2010 20:03

Re: reflektierender Ball - Hilfe!
 
Hallo,
Zusätzlich zu den Panelgrenzen die Positione x/y des Schlägers mit den x/y Wetenn des Balls vergleichen.

Leanahtan 10. Apr 2010 21:33

Re: reflektierender Ball - Hilfe!
 
Zitat:

Zitat von schöni
Zitat:

Zitat von mkinzler
http://www.delphipraxis.net/internal_redirect.php?p=1145796#1145796

... und Du verlinkst zum Angucken den eigenen Thread, den der altuell gelesen wird, ...

:wall:
:roll:

mkinzler 11. Apr 2010 11:14

Re: reflektierender Ball - Hilfe!
 
Ich entschuldige mich nun förmlich überhaupt was geschrieben zu haben und überlege meine Moderatoren-Job aufzugeben!

Leanahtan 11. Apr 2010 11:45

Re: reflektierender Ball - Hilfe!
 
Sorry, da hast du was falsch verstanden. Als ich die Antworten auf deinen Link gelesen habe, habe ich den Drang verspürt, mit dem Kopf auf die Tastatur zu schlagen. Für mich war es eigentlich sofort einleuchtend, worauf der link hinweisen sollte. Wollte eigentlich nicht noch mehr Verwirrung stiften :oops:

Smokey002 11. Apr 2010 18:39

Re: reflektierender Ball - Hilfe!
 
Zitat:

Zitat von waldforest
Hallo,
Zusätzlich zu den Panelgrenzen die Positione x/y des Schlägers mit den x/y Wetenn des Balls vergleichen.

hallo,
mir ist nicht ganz klar wie ich die x/y Position des Schlägers mit denen des Balls vergleichen soll, da sich diese Werte ja andauernd verändern.

waldforest 11. Apr 2010 18:45

Re: reflektierender Ball - Hilfe!
 
Ja, dies ist richtig, aber prinzipiell erfolgt der Vergleich wie bei den Raumgrenzen des Panels, halt werden nicht die Panelgrenzen, sondern die des Schlägers als Wertepaar verglichen.


z.B. im Timer folgendes noch hinzufügen, hier kannst du über die .TOP auch noch ggf. einen sich im Raum bewegenden Schläger abfragen, also nicht nur einen Schläger der sich auf der x-Achse verändert.

Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin

 If ((sball.top+sball.Height >= Schlaeger.Top) and (sball.top <= Schlaeger.Top)) then
         if (sball.left >= Schlaeger.left-Schlaeger.Width) and (sball.left <= Schlaeger.left+Schlaeger.Width) then
             by := -by;

// und weiter im bereits bestehenden Code
Dies lässt sich sicherlich noch optimieren, ist aber einmal ein Ansatz.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:41 Uhr.
Seite 3 von 3     123   

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