Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Delphi Programm, Shapes durch Image ersetzen (https://www.delphipraxis.net/113494-delphi-programm-shapes-durch-image-ersetzen.html)

ThYpHoOn 8. Mai 2008 16:41


Delphi Programm, Shapes durch Image ersetzen
 
Guten Tag zusammen,

wir müssen derzeit in der Schule ein Spiel entwickeln. Unsere Gruppe hat sich für Billard entschieden. Mitlerweile steht das Grundgerüst auch schon. Wir haben einen Tisch mit Grenzen, Kugeln (Shapes) die sich innerhalb der genannten Grenzen (Borders) bewegen und eine Kollisionsbehandlung.

Da man aber beim normalen Billard auch halbe Kugeln hat (wir haben derzeit nur voll gebrushte Shapes) und ich nun direkt nicht weiß bzw. auf den ersten blick nichts gefunden habe zum Brushen von Shapes wenn diese nur "halb"-Gebrusht werden sollen, wollen wir die Shapes nun durch selbstgemachte JPGs ersetzen. Der Radius dieser Shapes beträgt derzeit 12 Pixel. Wie könnte man nun am besten die Shapes durch ein solches Image ersetzen, so das die weitere Berechnung noch einwandfrei klappt?

Zudem wäre es schön wenn Ihr mir noch einen kleinen Denkanstoß in Sachen "Löcher" machen könntet. Ich müsste ja einfach nur in der Wandkollision (Border)zusätzlich die Löcher angeben und dann den Radius der Kugel auf 0 setzen wenn Sie denn fällt. Sowie die Spielregel-Implementierung (welcher Spieler, welche Kugel gerade versenkt hat).



Gz ThY

_frank_ 8. Mai 2008 19:39

Re: Delphi Programm, Shapes durch Image ersetzen
 
Hallo,
was hast du bereits probiert? wo gibt es genau Probleme?
die einfachste Möglichkeit dürfte sein, einfach TImage (array [0..15] of TImage => 0=weiße Kugel) statt TShape zu verwenden ;) und beim Spielstart die jpegs in die TImages laden...
die Kollisionserkennung kannst du z.b. mit dem Satz des Pythagoras machen.

HTH Frank

ThYpHoOn 9. Mai 2008 23:43

Re: Delphi Programm, Shapes durch Image ersetzen
 
Delphi-Quellcode:
constructor TKugel.Create(AOwner: TComponent);
begin
  inherited;               //Initialisierung als TObject.Create
  Shape := stCircle;       //Kugelform Initialisieren (Kreisförmig)
end;
So initialisiere ich derzeit meine Kugeln.

_frank_ 10. Mai 2008 08:24

Re: Delphi Programm, Shapes durch Image ersetzen
 
Zitat:

Zitat von _frank_
wo gibt es genau Probleme?

ich nehme mal an, du hast von TShape abgeleitet...leite doch einfach von TImage ab und lade im constructor die entsprechende grafik.

HTH Frank


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:02 Uhr.

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