public abstract class AbstractStereoPair extends java.lang.Object implements StereoPair
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ID
Class identification name with source code version and date.
|
protected Observation |
stereo1
The stereo-1 observation.
|
protected Observation |
stereo2
The stereo-2 observation.
|
Modifier | Constructor and Description |
---|---|
protected |
AbstractStereoPair(Observation stereo1,
Observation stereo2)
Constructs a new abstract stereo pair from a pair of observations.
|
Modifier and Type | Method and Description |
---|---|
abstract java.lang.String |
getComment()
Gets the stereo pair's comment.
|
double |
getEmissionAngleDifference()
Gets the absolute value of the difference in the emission angle between the
two halves of the stereo pair.
|
double |
getIncidenceAngleDifference()
Gets the absolute value of the difference in the incidence angle between the
two halves of the stereo pair.
|
abstract java.lang.String |
getLabel()
Gets the stereo pair's label.
|
double |
getPhaseAngleDifference()
Gets the absolute value of the difference in the phase angle between the two
halves of the stereo pair.
|
double |
getSolarAzimuthChange()
Gets the change in solar azimuth between the two halves of the stereo pair.
|
double |
getSolarAzimuthDifference()
Gets the difference in solar azimuth between the two halves of the stereo
pair.
|
double |
getSolarLongitudeDifference()
Gets the difference in solar longitude between the two halves of the stereo
pair.
|
double |
getSolarSeparation()
Gets the solar separation angle for the pair.
|
Observation |
getStereo1()
Gets the stereo-1 observation of the pair.
|
Observation |
getStereo2()
Gets the stereo-2 observation of the pair.
|
double |
getStereoSeparation()
Gets the stereo separation angle for the pair.
|
double |
getSubsolarLatitudeChange()
Gets the change in subsolar latitude between the two halves of the stereo
pair.
|
public static final java.lang.String ID
protected final Observation stereo1
protected final Observation stereo2
protected AbstractStereoPair(Observation stereo1, Observation stereo2)
stereo1
- the stereo-1 observation.stereo2
- the stereo-2 observation.java.lang.IllegalArgumentException
- if the two observations are not of the
same target site.public Observation getStereo1()
getStereo1
in interface StereoPair
public Observation getStereo2()
getStereo2
in interface StereoPair
public double getStereoSeparation()
θ = acos ((u ⋅ v) / (||u|| ||v||))
The separation angle is also known as the stereo convergence angle.
getStereoSeparation
in interface StereoPair
public double getSolarSeparation()
Mathematically, the angle θ, is computed as follows. For solar altitude a and azimuth z, for observations 1 and 2, the separation is
θ = acos (cos a1 cos a2 cos (z1 - z2) + sin a1 sin a2)
(This equation is the same as for getStereoSeparation()
, but for the
sun's position in spherical coordinates with unit vectors described by
a and z.)
getSolarSeparation
in interface StereoPair
public double getSolarLongitudeDifference()
getSolarLongitudeDifference
in interface StereoPair
public double getSubsolarLatitudeChange()
ΔφS = φS,2 - φS,1
getSubsolarLatitudeChange
in interface StereoPair
public double getSolarAzimuthChange()
Δφ = φ2 - φ1
getSolarAzimuthChange
in interface StereoPair
public double getSolarAzimuthDifference()
getSolarAzimuthDifference
in interface StereoPair
public double getPhaseAngleDifference()
getPhaseAngleDifference
in interface StereoPair
public double getIncidenceAngleDifference()
getIncidenceAngleDifference
in interface StereoPair
public double getEmissionAngleDifference()
getEmissionAngleDifference
in interface StereoPair
public abstract java.lang.String getLabel()
getLabel
in interface StereoPair
public abstract java.lang.String getComment()
getComment
in interface StereoPair
Copyright \ (C) Arizona Board of Regents on behalf of the \ Planetary Image Research Laboratory, Lunar and \ Planetary Laboratory at the University of Arizona