# kann jemand das erklären ??



## Youssef Al Mahahmid (24. Feb 2018)

public boolean getroffen(int px, int py)
    {
        if (py>200-zSeitenlänge/2 && py<200+zSeitenlänge/2
        && px > 200-hRechner.sin(30)*(zSeitenlänge-((200+hRechner.wurzel(hRechner.quadrat(zSeitenlänge)-hRechner.quadrat(zSeitenlänge/2))/2-py)/hRechner.sin(60))) &&
        px < 200+hRechner.sin(30)*(zSeitenlänge-((200+hRechner.wurzel(hRechner.quadrat(zSeitenlänge)-hRechner.quadrat(zSeitenlänge/2))/2-py)/hRechner.sin(60))))
            return true;
        else
            return false;
    }


----------



## Robat (24. Feb 2018)

Was gibt es da groß zu erklären?
Wenn die Bedingung der if-Abfrage wahr ist wird true zurück gegeben, sonst false.
Die Bedingung splittet sich in 4 und-Verknüpfte Terme auf

```
py > 200 - zSeitenlänge / 2 
&&
py < 200 + zSeitenlänge/2
&&
px > 200 - hRechner.sin(30) * (zSeitenlänge - (( 200 + hRechner.wurzel( hRechner.quadrat(zSeitenlänge) -h Rechner.quadrat(zSeitenlänge/2)) / 2 - py) / hRechner.sin(60)))
&&
px < 200 + hRechner.sin(30) * (zSeitenlänge - (( 200 + hRechner.wurzel(hRechner.quadrat(zSeitenlänge) - hRechner.quadrat(zSeitenlänge/2)) /2 - py) / hRechner.sin(60)))
```


----------

