![]() |
Re: Kugel/Kreis prallt von Eck/Kante ab
nein ich möchte aber auch draufrumkritzeln dürfen, dass mein kreis sogar an ner Kurve abtitscht
dafür müsste er nur immer ne Pixelabfrage machen, ob er nen Punkte berührt, nur wie geht das? |
Re: Kugel/Kreis prallt von Eck/Kante ab
Zitat:
|
Re: Kugel/Kreis prallt von Eck/Kante ab
Hi,
Dein Problem sieht ganz nach meinem Pinpong Sample aus das ich die Letzten Tage mal zusammengestellt habe. ![]() Gruß Corpsman |
Re: Kugel/Kreis prallt von Eck/Kante ab
3 trifft mit einer anderen höhe auf das Rechteck
(1 müsste hierfür etwas weiter links und demnach auch etwas weiter runter gezeichnet sein) sieht man zwar nicht, ist aber so wie kann man denn nun diese PxelanPixel?-frage lösen? |
Re: Kugel/Kreis prallt von Eck/Kante ab
genau so, wie mehrfach beschrieben.
Vektor Pixel-Kugelmitte=>Normale. Winkel Einfall-Normale = Winkel Ausfall-Normale. => Ausfall = Einfall+2*(Winkel Einfall-Normale) //Edit: Der Abprall an Linien geht übrigens genauso mit einer Ausnahme: Du berechnest vorher den Pixel der Line, den die Kugel berührt. |
Re: Kugel/Kreis prallt von Eck/Kante ab
auf welche frage war das die antwort???
|
Re: Kugel/Kreis prallt von Eck/Kante ab
Sorry..du wolltest woht wissen, ob und welchen Pixel die Kugel während ihrer Bewegung berührt...
Ob ist relativ einfach: alle, deren Abstand zur Strecke Iststandort-Sollstandort kleiner Radius der Kugel (wobei hier zu beachten ist, dass falls der kürzeste Abstand ausserhalb der Strecke (also hinter dem Zielpunkt) liegt, (Abstand Pixel-gerade)^2 + (Abstand Lotfußpunkt-Zielpunkt)^2 <=Radius^2 sein muss). für alle diese Pukte berechnest Du nun den Abstand zum Startpunkt wie Folgt: 1. Berechnung Abstand LotFuß zum Startpunkt 2. hiervon ziehst Du ab: wurzel(Radius^2-(Abstand Punkt-gerade)^2). Der kleinste Wert ist dann der Pixel, der zerst berührt. Wenn Dir das zu kompliziert war, sag bescheid, dann zieh ich mir heute abend mal ne Zeichnung aus den Fingern. |
Re: Kugel/Kreis prallt von Eck/Kante ab
ich hab an eine Stelle geschrieben, dass ich auch auf die canvas der Form zeichnen will(per maus) und der Ball soll dann auch daran abtitschen
hier jeden Punkt zu speichern und immer wieder zu testen ist mir ein bisschen viel der soll nur um sich gucken, ob da Pixel sind also nur in die bewegungsrichtung zugewandte kreishälfte |
Re: Kugel/Kreis prallt von Eck/Kante ab
Das ist doch das selbe...Der Canvas ist doch ein 2dim array wo die farbe gespeichert ist. Du liest einfach per readline die bitmap des canvas aus und da kannst du dann gucken, ob pixel gesetzt ist oder nicht. ReadPixel ginge auch, ist aber langsamer.
mit dem um sich gucken ginge auch, aber dann must Du gewährleisten, dass sich der Kreis je Schritt nur um einen Pixel bewegt. |
Re: Kugel/Kreis prallt von Eck/Kante ab
Zitat:
Prüfst du immer, ob sich der Ball dahin bewegen kann, wohin er sich bewegen will und bewegst ihn erst dann? Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:35 Uhr. |
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