![]() |
Delphi-Version: 5
Kollisionsabfrage Vieleck mit Kreis
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo!
Ich möchte gerne eine Kollisionsabfrage zwischen einem Vieleck (Spielfigur) und einem Kreis machen (Eventuell auch noch Spielfigur mit Spielfigur -> Vieleck zu Vieleck). Ich habe mal eine Grafik des Vielecks hochgeladen. Der Punkt in der Mitte ist der Ausgangspunkt. Die Eckpunkte werden aus diesem Punkt und dem Winkel berechnet und in einem Array
Delphi-Quellcode:
Punkte:array of TPoint
gespeichert. Die Kugeln haben unterschiedliche Radien. Wie kann ich so eine Kollisionsabfrage durchführen, am besten auch zwischen zwei Spielfiguren, die sich treffen. Viele Grüße und ein gutes neues Jahr! |
AW: Kollisionsabfrage Vieleck mit Kreis
Exemplarisch ....
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var FigReg,CircleReg:HRGN; begin Figure1[0].X := 0; Figure1[0].Y := 0; Figure1[1].X := 50; Figure1[1].Y := 0; Figure1[2].X := 50; Figure1[2].Y := 50; Figure1[3].X := 25; Figure1[3].Y := 75; Figure1[4].X := 0; Figure1[4].Y := 50; FigReg := CreatePolygonRgn(Figure1,5,WINDING); CircleReg := CreateEllipticRgn(30,30,100,100); //CircleReg := CreateEllipticRgn(80,80,100,100); if not (CombineRgn(FigReg,FigReg,CircleReg,RGN_AND)=NULLREGION) then Showmessage('Collision'); SetWindowrgn(Panel1.Handle,FigReg,true); // Anzeige des Ergebnisses Deleteobject(FigReg); Deleteobject(CircleReg); end; |
AW: Kollisionsabfrage Vieleck mit Kreis
Danke! Klappt wunderbar! :bounce2:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:02 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