Hallo Leute,
ich brauch eure Hilfe. Ich habe hier eine Klasse, die ich so ausfüllen soll, dass sie stimmt. Mein Code sieht in etwa so aus:
Nun zum eigentlichen Problem. Wie funktioniert atan2? ???:L
Meine Methode angelTo (was sie eigentlich machen soll steht im javadoc darüber) möchte so nämlich nicht funktionieren. Soweit ich weiß, sollte sie thetha (als Bogenmaß )als returnwert geben , anscheinend mach ich da aber was falsch:
Die Fehlermeldung, die mir durch das Testsystem angegeben wird, ist folgende
[Point(), angleTo(^)=0.0, A=Point(1.0, 0.0), angleTo(A)=0.0, A.angleTo(^)=3.141592653589793] expected:<3.141592653589793> but was:<1.5707963267948966>
ich brauch eure Hilfe. Ich habe hier eine Klasse, die ich so ausfüllen soll, dass sie stimmt. Mein Code sieht in etwa so aus:
Java:
* Die Klasse soll Methoden für einen Punkt in der kartesischen Koordinatenebene
* bereitstellen.
*/
public class Point {
private final double yPosition;
private final double xPosition;
/** Erzeugt einen Punkt am Koordinatenursprung, das heisst an den Koordinaten (0, 0).
*/
public Point() {
this(0, 0);
}
/** Erzeugt einen Punkt den gegebenen Koordinaten.
* @param x Horizontale Koordinate.
* @param y Vertikale Koordinate.
*/
public Point(final double x, final double y) {
yPosition = y;
xPosition = x;
}
/** Liefert die horizontale Koordinate dieses Punktes.
* @return xPosition = Horizontale Koordinate.
*/
public double getX() {
return xPosition;
}
/** Liefert die vertikale Koordinate dieses Punktes.
* @return yPosition = Vertikale Koordinate.
*/
public double getY() {
return yPosition;
}
/** Liefert die Blickrichtung von diesem Punkt zum Punkt that.
* @param that Ein Punkt. Darf nicht null sein.
* @return Blickrichtung zu that im Bogenmaß.
* Im Bereich 0 (einschließlich) bis 2*PI (ausschließlich).
* 0, wenn dieser Punkt mit that zusammenfällt.
* @throws RuntimeException that ist null.
* @see java.lang.Math#atan2(double, double)
*/
public double angleTo(final Point that) {
exceptionIfNull(that);
if(this.getX() == that.getX())
return 0;
else {
return Math.atan2(that.getX(), that.getY());
}
}
private void exceptionIfNull(final Point that) {
if (that == null) {
throw new RuntimeException("Point is Null");
}
}
}
Nun zum eigentlichen Problem. Wie funktioniert atan2? ???:L
Meine Methode angelTo (was sie eigentlich machen soll steht im javadoc darüber) möchte so nämlich nicht funktionieren. Soweit ich weiß, sollte sie thetha (als Bogenmaß )als returnwert geben , anscheinend mach ich da aber was falsch:
Die Fehlermeldung, die mir durch das Testsystem angegeben wird, ist folgende
[Point(), angleTo(^)=0.0, A=Point(1.0, 0.0), angleTo(A)=0.0, A.angleTo(^)=3.141592653589793] expected:<3.141592653589793> but was:<1.5707963267948966>