# Quadrate anklicken LWJGL



## UnterKind (2. Sep 2014)

Hallo, 

ich arbeite gerade an meinem ersten Spiel, es geht darum aufploppende Quadrate anzuklicken die ich mit OpenGL zeichne. ich dachte das ich es erst so löse das ich von meinem Quadrat Ursprung einfach jeden Punkt einzeln Abfragen ob er im Quadrat ist. Das heißt ich müsste für jedes Quadrat das auf dem Feld ist 250(ein Quadrat hat 50 einheiten kantenlänge(sind in OpenGL die Koordinaten gleichzeitig die Pixel?)) Abfragen machen ob ich in das Quadrat geklickt habe, was doch ein bisshen Rechenaufwändig ist. Gibt es da eine einfache Lösung bzw. Nicht so leistungsintensive Lösung?


----------



## Sogomn (2. Sep 2014)

Gib jedem Quadrat ein _Rectangle_ und prüfe, ob der Mauspunkt im _Rectangle_ ist.

Pseudo:


```
boolean mausImQuadrat = quadrat.gibMirRechteck().contains(mausPunkt) || quadrat.gibMirRechteck().contains(new Point(mausX, mausY));
```


----------



## Androbin (3. Sep 2014)

Ich stimme "Sogomn" zu, denn die Klasse Rectangle prüft die "Kollision" so:

```
#java.awt.Rectangle: public boolean intersects ( Point p ) {
	return p.x >= this.x && p.x <= this.x + this.width - 1 && p.y >= this.y %% p.y <= this.y + this.height - 1
}
```

PS. Das "- 1" erläutere ich ein ander' mal


----------



## UnterKind (5. Sep 2014)

Hey, danke für die Antwort

funktioniert super.


----------

