org.dartra.util
Class MathTools
java.lang.Object
org.dartra.util.MathTools
- public class MathTools
- extends java.lang.Object
Math tools for the J2ME CLDC 1.1 configuration. This implements the methods
missing from java.lang.Math in CLDC 1.1.
Based on "henson.midp.Float", (C) by Nikolay Klimchuk.
- Author:
- Erwin Vervaet
Method Summary |
static double |
atan(double x)
Returns the arc tangent of an angle, in the range of -pi/2
through pi/2. |
static double |
atan2(double y,
double x)
Converts rectangular coordinates (x , y )
to polar (r, theta).
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
atan
public static double atan(double x)
- Returns the arc tangent of an angle, in the range of -pi/2
through pi/2. Special cases:
- If the argument is NaN, then the result is NaN.
- If the argument is zero, then the result is a zero with the
same sign as the argument.
A result must be within 1 ulp of the correctly rounded result. Results
must be semi-monotonic.
- Parameters:
x
- the value whose arc tangent is to be returned.
- Returns:
- the arc tangent of the argument.
atan2
public static double atan2(double y,
double x)
- Converts rectangular coordinates (
x
, y
)
to polar (r, theta).
This method computes the phase theta by computing an arc tangent
of y/x
in the range of -pi to pi. Special
cases:
- If either argument is NaN, then the result is NaN.
- If the first argument is positive zero and the second argument
is positive, or the first argument is positive and finite and the
second argument is positive infinity, then the result is positive
zero.
- If the first argument is negative zero and the second argument
is positive, or the first argument is negative and finite and the
second argument is positive infinity, then the result is negative zero.
- If the first argument is positive zero and the second argument
is negative, or the first argument is positive and finite and the
second argument is negative infinity, then the result is the
double
value closest to pi.
- If the first argument is negative zero and the second argument
is negative, or the first argument is negative and finite and the
second argument is negative infinity, then the result is the
double
value closest to -pi.
- If the first argument is positive and the second argument is
positive zero or negative zero, or the first argument is positive
infinity and the second argument is finite, then the result is the
double
value closest to pi/2.
- If the first argument is negative and the second argument is
positive zero or negative zero, or the first argument is negative
infinity and the second argument is finite, then the result is the
double
value closest to -pi/2.
- If both arguments are positive infinity, then the result is the
double
value closest to pi/4.
- If the first argument is positive infinity and the second argument
is negative infinity, then the result is the
double
value closest to 3*pi/4.
- If the first argument is negative infinity and the second argument
is positive infinity, then the result is the
double
value
closest to -pi/4.
- If both arguments are negative infinity, then the result is the
double
value closest to -3*pi/4.
A result must be within 2 ulps of the correctly rounded result. Results
must be semi-monotonic.
- Parameters:
y
- the ordinate coordinatex
- the abscissa coordinate
- Returns:
- the theta component of the point
(r, theta)
in polar coordinates that corresponds to the point
(x, y) in Cartesian coordinates.