Android Grafik in Circle Objekt füllen

lolli

Mitglied
Hallo zusammen. Zurzeit arbeite ich an einer Android Game App. Folgendes:
Es gibt viele Bälle (als Grafik), die untereinander kollidieren können.
k5152774.jpg

Mein erster Lösungsansatz für die Kollision Detektierung war dies mit der Methode intersect
der Klasse Rectangle zu überprüfen. Für eine möglichst genaue Kollision Detektierung möchte ich aber mit
Kreis Objekte arbeiten.
In JavaFX würde man es wie folgt realisieren:
Image flower = new Image(flowerURL);
int radius;
Circle circ = new Circle(radius);
circ.setFill(new ImagePattern(flower));
Deshalb wäre die Frage, ob es in Android eine ähnliche Möglichkeit gäbe ein Circle Objekt mit einer Grafik zu füllen?
Danke im Voraus.

Grüsse
lolli
 

Thallius

Top Contributor
Es gibt ja wohl nichts leichteres als eine Kollision von Kreisen zu berechnen. Wenn die Entfernung der beiden Mittelpunkte kleiner ist als die Summe Ihrer Radien, dann hast du einen Treffer.

Gruß

Claus
 

lolli

Mitglied
Es gibt ja wohl nichts leichteres als eine Kollision von Kreisen zu berechnen. Wenn die Entfernung der beiden Mittelpunkte kleiner ist als die Summe Ihrer Radien, dann hast du einen Treffer.

Gruß

Claus

Wenn ich richtig verstehe heisst das, dass keine Kreis Objekte vorhanden sein müssen?
Nehmen wir an meine Grafik wäre 30 x 30 gross.
Wäre diese Formel richtig?:
Code:
        float dx = position1[0] - position2[0];// X Koordinaten
        float dy = position1[1] - position2[1];// Y Koordinaten
        
        float radiusSum = 15 + 15;
        return dx * dx + dy * dy <= radiusSum * radiusSum;

Danke im Voraus.
Grüsse
lolli
 
Zuletzt bearbeitet:

Neue Themen


Oben