public abstract class LaserAzAltDistance extends AbstractTargetValue implements ParameterDepending, Reloadable
TargetDependingParameter, allowing proper calculation of the
current target distance to the OT Laser.| Modifier and Type | Class and Description |
|---|---|
static class |
LaserAzAltDistance.Randomize |
static class |
LaserAzAltDistance.Stepper |
PropertyResources.Load, PropertyResources.URLResource| Modifier and Type | Field and Description |
|---|---|
private TargetDependingValue |
alt
The altitude parameter of the target.
|
private TargetDependingValue |
az
The azimuth parameter of the target.
|
private TargetDependingValue |
de
The declination of the target.
|
private static String |
DEFALTTARGET |
private static String |
DEFAZTARGET |
private static String |
DEFDECTARGET |
private static String |
DEFLATITUDE |
static String |
DEFNAME
The name of this global (ra).
|
private static String |
DEFTAUTARGET |
private static DecimalFormat |
df
The formatter for the distance.
|
static String |
KEY_ALTTARGET
The name of the parameter that gives the alt of the target.
|
static String |
KEY_AZTARGET
The name of the parameter that gives the az of the target.
|
static String |
KEY_DECTARGET
We also need the declination for time of specific distance.
|
static String |
KEY_LATITUDE
For derivative we also need the latitude of the observatory.
|
static String |
KEY_TAUTARGET
We also need the hour angle for computation of minimum distance.
|
private Value |
phi
The latitude.
|
private TargetDependIncreasing |
tau
The hour angle of the target.
|
KEY_INDEXKEY_FORMAT, KEY_NAME, KEY_PRESERVE, UNKNOWNKEY_NOINITONCREATE, POSTFIX_ALPHABET, POSTFIX_BYTES, POSTFIX_DIR, POSTFIX_EXT, POSTFIX_FILE, POSTFIX_LIST, POSTFIX_MODTIME, POSTFIX_URLKEY_LISTSEPARATOR, KEY_MAPKEYVALUECHAR, KEY_MAPSEPARATORCONFIG, KEY_CLASSKEY_URLRESOURCES, KEY_URLUSECONFIG, KEY_URLUSECURRENT, KEY_URLUSEHOME| Modifier | Constructor and Description |
|---|---|
private |
LaserAzAltDistance() |
protected |
LaserAzAltDistance(Map<String,String> prop)
Constructs a new global representing the actual object distance
to some other point in the sky.
|
| Modifier and Type | Method and Description |
|---|---|
protected static double |
getArcDerivativeTimeSinD(double az,
double alt,
double azl,
double altl,
double latitude)
If the first of two points follows a trajectory defined by constant right
ascension and declination, while the second position on the sky is fixed
in azimuth and altitude, the arc distance between these two points will
vary over time.
|
static double |
getArcDistance(double az,
double alt,
double azl,
double altl)
Calculates the distance between two right-handed spherical coordinates
like azimuth and altitude, hour angle and declination.
|
protected Long |
getArcTime(double dist,
double azl,
double altl)
Returns the time remaining until the target reaches a certain distance to
the laser pointing.
|
protected Long |
getArcTimeFor(TargetDefinition star,
double dist,
double azl,
double altl)
Returns the time remaining until the target reaches a certain distance to
the laser pointing.
|
abstract Vector2D |
getCurrentLaser()
Gets the aziumth and altitde, both, in degrees of the current Laser
pointing.
|
protected Number |
getDerivative() |
static double |
getExtremalTau(double azl,
double altl,
double lat)
Calculates the hour angle where the distance to the laser pointing
get extremal.
|
protected Long |
getExtremalTime(double azl,
double altl)
Returns the time remaining until we reach the minimal distance to the
laser pointing
|
protected Long |
getExtremalTimeFor(TargetDefinition star,
double azl,
double altl)
Returns the time remaining until we reach the minimal distance to the
laser pointing
|
Number |
getForTarget(TargetDefinition star)
Gets the distance of the laser pointing to the current target
|
Number |
getForTargetIn(TargetDefinition star,
double sec)
Gets the future distance of the laser pointing to the current target
|
private Number |
getLaserDerivative(double az,
double alt,
double latitude) |
private Number |
getLaserDistance(double az,
double alt) |
protected Number |
getLatitude() |
protected Vector2D |
getTargetAzAlt()
Daughter access: Get the current az alt of the target.
|
protected Vector2D |
getTargetAzAltFor(TargetDefinition star)
Daughter access: Get the current az alt of this target.
|
protected Vector2D |
getTargetAzAltForIn(TargetDefinition star,
double dt)
Daughter access: Get the current az alt of the target.
|
protected Vector2D |
getTargetAzAltIn(double dt)
Daughter access: Get the current az alt of the target.
|
static Vector2D |
getTauForArc(double dist,
double de,
double azl,
double altl,
double lat)
Calculates the hour angle where the minimum distance is reached.
|
Number |
getValue()
Returns the distance of the current laser pointing to the actual target.
|
Number |
getValueIn(double sec)
Returns the distance of the current laser pointing to the position of the
actual target in the specified number of seconds.
|
void |
registerParameter(Parameter what)
Registers the parameters giving the ra, dec of two points.
|
void |
registerTarget(TargetDefinition star)
Registers a star to this parameter.
|
double |
rescanned(String key,
String old,
String newval)
As any parameter depending instance we fail if the parameter we depend
on is now a different one.
|
Number |
setValue(Number val)
Sets the distance.
|
get, setgetAsStar, getConstant, getFormattedFor, getSetupcreateParameter, delivers, exit, getFormatted, getFormatted, getName, getPreserveFile, getString, getString, init, overrideDefaultName, register, setName, toStringclone, createFrom, createFrom, createFrom, createInstance, getApplet, getAsResources, getLocate, getPropertiesToKey, getPropertiesToKey, getResource, getResourceAsStream, getResourceFromKey, getResources, hasLocalURLs, initProperties, keyCreate, keyCreate, reload, setAppletaugment, augment, augment, augment, augment, defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsEnums, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, isNew, parseObject, parseObject, reload, removeProperty, requires, setObject, setProperties, setProperty, stringPropertiesequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitreloadgetFormattedForgetFormatted, getName, getStringdefaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, parseObject, removeProperty, setObject, setProperty, stringPropertiesinitpublic static final String KEY_AZTARGET
public static final String KEY_ALTTARGET
public static final String KEY_TAUTARGET
public static final String KEY_DECTARGET
public static final String KEY_LATITUDE
public static final String DEFNAME
private static final DecimalFormat df
private static final String DEFAZTARGET
private static final String DEFALTTARGET
private static final String DEFTAUTARGET
private static final String DEFDECTARGET
private static final String DEFLATITUDE
private TargetDependingValue az
private TargetDependingValue alt
private TargetDependIncreasing tau
private TargetDependingValue de
private Value phi
public double rescanned(String key, String old, String newval)
rescanned in interface Reloadablerescanned in class AbstractParameterpublic void registerParameter(Parameter what)
registerParameter in interface ParameterDependingpublic void registerTarget(TargetDefinition star)
registerTarget in interface TargetDependingprotected Vector2D getTargetAzAlt()
protected Vector2D getTargetAzAltIn(double dt)
protected Vector2D getTargetAzAltFor(TargetDefinition star)
protected Vector2D getTargetAzAltForIn(TargetDefinition star, double dt)
public Number getForTarget(TargetDefinition star)
getForTarget in interface TargetDependingParametergetForTarget in interface TargetDependingValuepublic Number getForTargetIn(TargetDefinition star, double sec)
sec - Time from now in secondspublic Number getValue()
public Number getValueIn(double sec)
protected Number getLatitude()
protected Number getDerivative()
private Number getLaserDistance(double az, double alt)
private Number getLaserDerivative(double az, double alt, double latitude)
public abstract Vector2D getCurrentLaser()
public static double getArcDistance(double az,
double alt,
double azl,
double altl)
public static double getExtremalTau(double azl,
double altl,
double lat)
azl - altl - lat - public static Vector2D getTauForArc(double dist, double de, double azl, double altl, double lat)
protected Long getExtremalTime(double azl, double altl)
azl - altl - protected Long getExtremalTimeFor(TargetDefinition star, double azl, double altl)
azl - altl - protected Long getArcTime(double dist, double azl, double altl)
protected Long getArcTimeFor(TargetDefinition star, double dist, double azl, double altl)
protected static double getArcDerivativeTimeSinD(double az,
double alt,
double azl,
double altl,
double latitude)
az - Current azimuth of staralt - Current altitude of starazl - Fixed az position in skyaltl - Fixed alt position in skylatitude - Geographic latitudepublic Number setValue(Number val) throws UnsupportedOperationException
setValue in interface ValueUnsupportedOperationException