Package com.google.common.geometry
Class S1Angle
java.lang.Object
com.google.common.geometry.S1Angle
- All Implemented Interfaces:
Serializable
,Comparable<S1Angle>
@GwtCompatible(serializable=true)
public final class S1Angle
extends Object
implements Comparable<S1Angle>, Serializable
- See Also:
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionRetuns anS1Angle
whose angle is(this + a)
.int
double
cos()
Returns the trigonometric cosine of the angle.double
degrees()
Returns the angle in degrees.static S1Angle
degrees
(double degrees) Returns a new S1Angle converted from degrees.double
distance
(double radius) Returns the distance along the surface of a sphere of the given radius.div
(double d) Retuns anS1Angle
whose angle is(this / d)
.int
e5()
Returns angle in tens of microdegrees, rounded to the nearest ten microdegrees.static S1Angle
e5
(int e5) Returns a new S1Angle converted from tens of microdegrees.int
e6()
Returns angle in microdegrees, rounded to the nearest microdegree.static S1Angle
e6
(int e6) Returns a new S1Angle converted from microdegrees.int
e7()
Returns angle in tenths of a microdegree, rounded to the nearest tenth of a microdegree.static S1Angle
e7
(int e7) Returns a new S1Angle converted from tenths of a microdegree.boolean
boolean
greaterOrEquals
(S1Angle that) boolean
greaterThan
(S1Angle that) int
hashCode()
boolean
lessOrEquals
(S1Angle that) boolean
static S1Angle
static S1Angle
mul
(double m) Retuns anS1Angle
whose angle is(this * m)
.neg()
Returns the angle normalized to the range (-180, 180] degrees.double
radians()
Returns the angle in radians.static S1Angle
radians
(double radians) Returns a new S1Angle specified in radians.double
sin()
Returns the trigonometric sine of the angle.Retuns anS1Angle
whose angle is(this - a)
.double
tan()
Returns the trigonometric tangent of the angle.Creates a new Builder initialized to a copy of this angle.toString()
Writes the angle in degrees with a "d" suffix, e.g.
-
Field Details
-
INFINITY
An angle larger than any finite angle. -
ZERO
An explicit shorthand for the default constructor. -
radians
private final double radians
-
-
Constructor Details
-
S1Angle
public S1Angle()The default constructor yields a zero angle. -
S1Angle
private S1Angle(double radians) -
S1Angle
Return the angle between two points, which is also equal to the distance between these points on the unit sphere. The points do not need to be normalized.
-
-
Method Details
-
radians
public double radians()Returns the angle in radians. -
degrees
public double degrees()Returns the angle in degrees. -
e5
public int e5()Returns angle in tens of microdegrees, rounded to the nearest ten microdegrees.Normalized angles will never overflow an int.
- Throws:
IllegalArgumentException
- if the result overflows an int
-
e6
public int e6()Returns angle in microdegrees, rounded to the nearest microdegree.Normalized angles will never overflow an int.
- Throws:
IllegalArgumentException
- if the result overflows an int
-
e7
public int e7()Returns angle in tenths of a microdegree, rounded to the nearest tenth of a microdegree.Normalized angles will never overflow an int.
- Throws:
IllegalArgumentException
- if the result overflows an int
-
equals
-
hashCode
public int hashCode() -
lessThan
-
greaterThan
-
lessOrEquals
-
greaterOrEquals
-
max
-
min
-
radians
Returns a new S1Angle specified in radians. -
degrees
Returns a new S1Angle converted from degrees. Note thatdegrees(x).degrees() == x
may not hold due to inexact arithmetic. -
e5
Returns a new S1Angle converted from tens of microdegrees. -
e6
Returns a new S1Angle converted from microdegrees. -
e7
Returns a new S1Angle converted from tenths of a microdegree. -
distance
public double distance(double radius) Returns the distance along the surface of a sphere of the given radius. -
neg
-
add
Retuns anS1Angle
whose angle is(this + a)
. -
sub
Retuns anS1Angle
whose angle is(this - a)
. -
mul
Retuns anS1Angle
whose angle is(this * m)
. -
div
Retuns anS1Angle
whose angle is(this / d)
. -
cos
public double cos()Returns the trigonometric cosine of the angle. -
sin
public double sin()Returns the trigonometric sine of the angle. -
tan
public double tan()Returns the trigonometric tangent of the angle. -
normalize
Returns the angle normalized to the range (-180, 180] degrees. -
toString
Writes the angle in degrees with a "d" suffix, e.g. "17.3745d". By default 6 digits are printed; this can be changed using setprecision(). Up to 17 digits are required to distinguish one angle from another. -
compareTo
- Specified by:
compareTo
in interfaceComparable<S1Angle>
-
toBuilder
Creates a new Builder initialized to a copy of this angle.
-