NASA World Wind

gov.nasa.worldwind.util
Class UnitsFormat

java.lang.Object
  extended by gov.nasa.worldwind.avlist.AVListImpl
      extended by gov.nasa.worldwind.util.UnitsFormat
All Implemented Interfaces:
AVList
Direct Known Subclasses:
MilStd2525UnitsFormat, WWOUnitsFormat

public class UnitsFormat
extends AVListImpl

Consolidates the conversion, display and formatting of geographic units such as lengths in miles and areas in hectares. Applications configure a class instance to the desired units, labels and display formats, then simply retrieve display strings from the instance via one standard interface. All input values are in meters; the class performs the necessary conversions to the selected display units.


Field Summary
static String ACRE
           
protected  String altitudeUnits
           
protected  double altitudeUnitsMultiplier
           
protected  String altitudeUnitsSymbol
           
protected  String areaUnits
           
protected  double areaUnitsMultiplier
           
protected  String areaUnitsSymbol
           
static String FEET
           
static String FORMAT_AREA
           
static String FORMAT_DECIMAL_DEGREES
           
static String FORMAT_EYE_ALTITUDE
           
static String FORMAT_HEADING
           
static String FORMAT_LENGTH
           
static String FORMAT_PITCH
           
static String FORMAT_TERRAIN_HEIGHT
           
static String FORMAT_UTM_EASTING
           
static String FORMAT_UTM_NORTHING
           
static String HECTARE
           
static String IMPERIAL_SYSTEM
           
static String KILOMETERS
           
static String LABEL_DATUM
           
static String LABEL_EYE_ALTITUDE
           
static String LABEL_HEADING
           
static String LABEL_LATITUDE
           
static String LABEL_LATLON_LAT
           
static String LABEL_LATLON_LON
           
static String LABEL_LONGITUDE
           
static String LABEL_PITCH
           
static String LABEL_TERRAIN_HEIGHT
           
static String LABEL_UTM_EASTING
           
static String LABEL_UTM_NORTHING
           
static String LABEL_UTM_ZONE
           
protected  String lengthUnits
           
protected  double lengthUnitsMultiplier
           
protected  String lengthUnitsSymbol
           
static String METERS
           
static String METRIC_SYSTEM
           
static String MILES
           
static String NAUTICAL_MILES
           
protected static String NL
           
protected  boolean showDMS
           
static String SQUARE_FEET
           
static String SQUARE_KILOMETERS
           
static String SQUARE_METERS
           
static String SQUARE_MILES
           
static String SQUARE_YARDS
           
static String SYMBOL_ACRE
           
static String SYMBOL_FEET
           
static String SYMBOL_HECTARE
           
static String SYMBOL_KILOMETERS
           
static String SYMBOL_METERS
           
static String SYMBOL_MILES
           
static String SYMBOL_NAUTICAL_MILES
           
static String SYMBOL_SQUARE_FEET
           
static String SYMBOL_SQUARE_KILOMETERS
           
static String SYMBOL_SQUARE_METERS
           
static String SYMBOL_SQUARE_MILES
           
static String SYMBOL_SQUARE_YARDS
           
static String SYMBOL_YARDS
           
static String YARDS
           
 
Constructor Summary
UnitsFormat()
          Construct an instance that displays length in kilometers, area in square kilometers and angles in decimal degrees.
UnitsFormat(String lengthUnits, String areaUnits)
          Constructs an instance that display length and area in specified units, and angles in decimal degrees.
UnitsFormat(String lengthUnits, String areaUnits, boolean showDMS)
          Constructs an instance that display length and area in specified units, and angles in a specified format.
 
Method Summary
 String angle(String label, Angle angle)
          Format an angle according to the current angle format.
 String angleNL(String label, Angle angle)
          Format an angle according to the current angle format.
 String area(String label, double squareMeters)
          Format an area value according to the current length configuration and prepend a specified label.
 String areaNL(String label, double squareMeters)
          Format an area value according to the current length configuration.
 String eyeAltitude(double metersAltitude)
          Format an eye altitude according to the current eye altitude format.
 String eyeAltitudeNL(double metersAltitude)
          Format an eye altitude according to the current eye altitude format, and append a new-line character.
 String getAltitudeUnits()
          Returns the current altitude units.
 double getAltitudeUnitsMultiplier()
          Indicates the multiplier used to convert from meters to the current altitude units.
 String getAltitudeUnitsSymbol()
          Returns the units symbol for the current altitude units.
 String getAreaUnits()
          Returns the current area units.
 double getAreaUnitsMultiplier()
          Indicates the multiplier used to convert from square meters to the current area units.
 String getAreaUnitsSymbol()
          Returns the units symbol for the current area units.
 String getAreaUnitsSystem()
          Indicates the unit system of the current area units.
 String getFormat(String formatName)
          Returns the format for a specified value type.
 String getLabel(String labelName)
          Returns the label for a specified label name.
 String getLengthUnits()
          Returns the current length units.
 double getLengthUnitsMultiplier()
          Indicates the multiplier used to convert from meters to the current length units.
 String getLengthUnitsSymbol()
          Returns the units symbol for the current length units.
 String getLengthUnitsSystem()
          Indicates the unit system of the current length units.
 String heading(Angle angle)
          Format an angle of heading according to the current angle format.
 String heading(double heading)
          Format an angle of heading in degrees according to the current angle format.
 String headingNL(Angle angle)
          Format an angle of heading according to the current angle format, and append a new-line character.
 String headingNL(double heading)
          Format an angle of heading in degrees according to the current angle format, and append a new-line character.
 boolean isShowDMS()
          Indicates whether angles are displayed in degrees-minutes-seconds.
 String latitude(Angle angle)
          Format an angle of latitude.
 String latitudeNL(Angle angle)
          Format an angle of latitude and append a new-line character.
 String latLon(LatLon latlon)
          Format angles of latitude and longitude according to the current angle format.
 String latLonNL(LatLon latlon)
          Format angles of latitude and longitude according to the current angle format, and append a new-line character.
 String length(String label, double meters)
          Format a length according to the current length configuration.
 String lengthNL(String label, double meters)
          Format a length according to the current length configuration.
 String longitude(Angle angle)
          Format an angle of longitude.
 String longitudeNL(Angle angle)
          Format an angle of longitude and append a new-line character.
 String pitch(double pitch)
          Format an angle of pitch according to the current angle format.
 String pitchNL(double pitch)
          Format an angle of pitch according to the current angle format, and append a new-line character.
 void setAltitudeUnits(String altitudeUnits)
          Specifies the units in which to display altitude values.
 void setAreaUnits(String areaUnits)
          Specifies the units in which to display area values.
protected  void setDefaultFormats()
          Establishes the format declarations to use for certain values.
protected  void setDefaultLabels()
          Establishes the labels to use when displaying values other than length and area.
 void setFormat(String formatName, String format)
          Set the format of a specified value type.
 void setLabel(String labelName, String label)
          Set the label of a specified value type.
 void setLengthUnits(String lengthUnits)
          Specifies the units in which to display length values.
 void setShowDMS(boolean showDMS)
          Specifies whether angles are displayed in degrees-minutes-seconds.
 void setUnitsSystem(String unitsSystem)
          Sets the length and area units to those common for a given units system.
 String terrainHeight(double metersElevation, double verticalExaggeration)
          Format a terrain height value according to the current configuration and append a new-line character.
 String terrainHeightNL(double metersElevation, double verticalExaggeration)
          Format a terrain height value according to the current configuration and append a new-line character.
 String utmEasting(double easting)
          Format a UTM easting value according to the current UTM easting format.
 String utmEastingNL(double easting)
          Format a UTM easting value according to the current UTM easting format and append a new-line character.
 String utmNorthing(double northing)
          Format a UTM northing value according to the current UTM northing format.
 String utmNorthingNL(double northing)
          Format a UTM northing value according to the current UTM northing format and append a new-line character.
 String utmZone(int zone)
          Format a UTM zone according to the current UTM zone format.
 String utmZoneNL(int zone)
          Format a UTM zone according to the current UTM zone format and append a new-line character.
 
Methods inherited from class gov.nasa.worldwind.avlist.AVListImpl
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getBooleanValue, getBooleanValue, getChangeSupport, getDoubleValue, getDoubleValue, getEntries, getIntegerValue, getIntegerValue, getLongValue, getLongValue, getRestorableStateForAVPair, getStringValue, getStringValue, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ACRE

public static final String ACRE
See Also:
Constant Field Values

altitudeUnits

protected String altitudeUnits

altitudeUnitsMultiplier

protected double altitudeUnitsMultiplier

altitudeUnitsSymbol

protected String altitudeUnitsSymbol

areaUnits

protected String areaUnits

areaUnitsMultiplier

protected double areaUnitsMultiplier

areaUnitsSymbol

protected String areaUnitsSymbol

FEET

public static final String FEET
See Also:
Constant Field Values

FORMAT_AREA

public static final String FORMAT_AREA
See Also:
Constant Field Values

FORMAT_DECIMAL_DEGREES

public static final String FORMAT_DECIMAL_DEGREES
See Also:
Constant Field Values

FORMAT_EYE_ALTITUDE

public static final String FORMAT_EYE_ALTITUDE
See Also:
Constant Field Values

FORMAT_HEADING

public static final String FORMAT_HEADING
See Also:
Constant Field Values

FORMAT_LENGTH

public static final String FORMAT_LENGTH
See Also:
Constant Field Values

FORMAT_PITCH

public static final String FORMAT_PITCH
See Also:
Constant Field Values

FORMAT_TERRAIN_HEIGHT

public static final String FORMAT_TERRAIN_HEIGHT
See Also:
Constant Field Values

FORMAT_UTM_EASTING

public static final String FORMAT_UTM_EASTING
See Also:
Constant Field Values

FORMAT_UTM_NORTHING

public static final String FORMAT_UTM_NORTHING
See Also:
Constant Field Values

HECTARE

public static final String HECTARE
See Also:
Constant Field Values

IMPERIAL_SYSTEM

public static final String IMPERIAL_SYSTEM
See Also:
Constant Field Values

KILOMETERS

public static final String KILOMETERS
See Also:
Constant Field Values

LABEL_DATUM

public static final String LABEL_DATUM
See Also:
Constant Field Values

LABEL_EYE_ALTITUDE

public static final String LABEL_EYE_ALTITUDE
See Also:
Constant Field Values

LABEL_HEADING

public static final String LABEL_HEADING
See Also:
Constant Field Values

LABEL_LATITUDE

public static final String LABEL_LATITUDE
See Also:
Constant Field Values

LABEL_LATLON_LAT

public static final String LABEL_LATLON_LAT
See Also:
Constant Field Values

LABEL_LATLON_LON

public static final String LABEL_LATLON_LON
See Also:
Constant Field Values

LABEL_LONGITUDE

public static final String LABEL_LONGITUDE
See Also:
Constant Field Values

LABEL_PITCH

public static final String LABEL_PITCH
See Also:
Constant Field Values

LABEL_TERRAIN_HEIGHT

public static final String LABEL_TERRAIN_HEIGHT
See Also:
Constant Field Values

LABEL_UTM_EASTING

public static final String LABEL_UTM_EASTING
See Also:
Constant Field Values

LABEL_UTM_NORTHING

public static final String LABEL_UTM_NORTHING
See Also:
Constant Field Values

LABEL_UTM_ZONE

public static final String LABEL_UTM_ZONE
See Also:
Constant Field Values

lengthUnits

protected String lengthUnits

lengthUnitsMultiplier

protected double lengthUnitsMultiplier

lengthUnitsSymbol

protected String lengthUnitsSymbol

METERS

public static final String METERS
See Also:
Constant Field Values

METRIC_SYSTEM

public static final String METRIC_SYSTEM
See Also:
Constant Field Values

MILES

public static final String MILES
See Also:
Constant Field Values

NAUTICAL_MILES

public static final String NAUTICAL_MILES
See Also:
Constant Field Values

NL

protected static final String NL
See Also:
Constant Field Values

showDMS

protected boolean showDMS

SQUARE_FEET

public static final String SQUARE_FEET
See Also:
Constant Field Values

SQUARE_KILOMETERS

public static final String SQUARE_KILOMETERS
See Also:
Constant Field Values

SQUARE_METERS

public static final String SQUARE_METERS
See Also:
Constant Field Values

SQUARE_MILES

public static final String SQUARE_MILES
See Also:
Constant Field Values

SQUARE_YARDS

public static final String SQUARE_YARDS
See Also:
Constant Field Values

SYMBOL_ACRE

public static final String SYMBOL_ACRE
See Also:
Constant Field Values

SYMBOL_FEET

public static final String SYMBOL_FEET
See Also:
Constant Field Values

SYMBOL_HECTARE

public static final String SYMBOL_HECTARE
See Also:
Constant Field Values

SYMBOL_KILOMETERS

public static final String SYMBOL_KILOMETERS
See Also:
Constant Field Values

SYMBOL_METERS

public static final String SYMBOL_METERS
See Also:
Constant Field Values

SYMBOL_MILES

public static final String SYMBOL_MILES
See Also:
Constant Field Values

SYMBOL_NAUTICAL_MILES

public static final String SYMBOL_NAUTICAL_MILES
See Also:
Constant Field Values

SYMBOL_SQUARE_FEET

public static final String SYMBOL_SQUARE_FEET
See Also:
Constant Field Values

SYMBOL_SQUARE_KILOMETERS

public static final String SYMBOL_SQUARE_KILOMETERS
See Also:
Constant Field Values

SYMBOL_SQUARE_METERS

public static final String SYMBOL_SQUARE_METERS
See Also:
Constant Field Values

SYMBOL_SQUARE_MILES

public static final String SYMBOL_SQUARE_MILES
See Also:
Constant Field Values

SYMBOL_SQUARE_YARDS

public static final String SYMBOL_SQUARE_YARDS
See Also:
Constant Field Values

SYMBOL_YARDS

public static final String SYMBOL_YARDS
See Also:
Constant Field Values

YARDS

public static final String YARDS
See Also:
Constant Field Values
Constructor Detail

UnitsFormat

public UnitsFormat()
Construct an instance that displays length in kilometers, area in square kilometers and angles in decimal degrees.


UnitsFormat

public UnitsFormat(String lengthUnits,
                   String areaUnits)
Constructs an instance that display length and area in specified units, and angles in decimal degrees.

Parameters:
lengthUnits - the desired length units. Available length units are METERS, KILOMETERS, MILES, NAUTICAL_MILES, YARDS and FEETareaUnits - the desired area units. Available area units are SQUARE_METERS, SQUARE_KILOMETERS, HECTARE, ACRE, SQUARE_YARD and SQUARE_FEET.
Throws:
IllegalArgumentException - if either lengthUnits or areaUnits is null.

UnitsFormat

public UnitsFormat(String lengthUnits,
                   String areaUnits,
                   boolean showDMS)
Constructs an instance that display length and area in specified units, and angles in a specified format.

Parameters:
lengthUnits - the desired length units. Available length units are METERS, KILOMETERS, MILES, NAUTICAL_MILES, YARDS and FEETareaUnits - the desired area units. Available area units are SQUARE_METERS, SQUARE_KILOMETERS, HECTARE, ACRE, SQUARE_YARD and SQUARE_FEET.
showDMS - true if the desired angle format is degrees-minutes-seconds, false if the format is decimal degrees.
Throws:
IllegalArgumentException - if either lengthUnits or areaUnits is null.
Method Detail

angle

public String angle(String label,
                    Angle angle)
Format an angle according to the current angle format. Prepend a specified label.

Parameters:
label - a label to prepend to the formatted angle. May be null to indicate no label.
angle - the angle to format.
Returns:
a string containing the formatted angle prepended with the specified label.
Throws:
IllegalArgumentException - if the angle is null.

angleNL

public String angleNL(String label,
                      Angle angle)
Format an angle according to the current angle format. Prepend a specified label and append a new-line character.

Parameters:
label - a label to prepend to the formatted angle. May be null to indicate no label.
angle - the angle to format.
Returns:
a string containing the formatted angle prepended with the specified label and ending with the new-line character.
Throws:
IllegalArgumentException - if the angle is null.

area

public String area(String label,
                   double squareMeters)
Format an area value according to the current length configuration and prepend a specified label.

The value is formatted using the current FORMAT_AREA and area units symbol, and is converted to the current area units prior to formatting. The default area format is " %,12.1f %s", where the %s specifier stands for the units symbol.

Parameters:
label - the label to prepend to the formatted length. May be null to indicate no label.
squareMeters - the area value to format, in square meters.
Returns:
the formatted area with the specified label prepended.

areaNL

public String areaNL(String label,
                     double squareMeters)
Format an area value according to the current length configuration. Prepend a specified label and append a new-line character.

The value is formatted using the current FORMAT_AREA and area units symbol, and is converted to the current area units prior to formatting. The default area format is " %,12.1f %s", where the %s specifier stands for the units symbol.

Parameters:
label - the label to prepend to the formatted length. May be null to indicate no label.
squareMeters - the area value to format, in square meters.
Returns:
the formatted area with the specified label prepended and a new-line character appended.

eyeAltitude

public String eyeAltitude(double metersAltitude)
Format an eye altitude according to the current eye altitude format.

The value is formatted using the current LABEL_EYE_ALTITUDE, FORMAT_EYE_ALTITUDE and length format.

Parameters:
metersAltitude - the eye altitude to format, in meters.
Returns:
a string containing the formatted eye altitude.

eyeAltitudeNL

public String eyeAltitudeNL(double metersAltitude)
Format an eye altitude according to the current eye altitude format, and append a new-line character.

The value is formatted using the current LABEL_EYE_ALTITUDE, FORMAT_EYE_ALTITUDE and length format.

Parameters:
metersAltitude - the eye altitude to format, in meters.
Returns:
a string containing the formatted eye altitude and ending with the new-line character.

getAltitudeUnits

public String getAltitudeUnits()
Returns the current altitude units.

Returns:
the current altitude units. See UnitsFormat(String, String, boolean) for the list of those available.

getAltitudeUnitsMultiplier

public double getAltitudeUnitsMultiplier()
Indicates the multiplier used to convert from meters to the current altitude units.

Returns:
the conversion multiplier to convert meters to the current altitude units.

getAltitudeUnitsSymbol

public String getAltitudeUnitsSymbol()
Returns the units symbol for the current altitude units. Examples are "m" for meters and "Nm" for nautical miles.

Returns:
the units symbol for the current altitude units.

getAreaUnits

public String getAreaUnits()
Returns the current area units.

Returns:
the current area units. See UnitsFormat(String, String, boolean) for the list of those available.

getAreaUnitsMultiplier

public double getAreaUnitsMultiplier()
Indicates the multiplier used to convert from square meters to the current area units.

Returns:
the conversion multiplier to convert square meters to the current area units.

getAreaUnitsSymbol

public String getAreaUnitsSymbol()
Returns the units symbol for the current area units. Examples are "m²" for square meters and "miles²" for square miles.

Returns:
the units symbol for the current area units.

getAreaUnitsSystem

public String getAreaUnitsSystem()
Indicates the unit system of the current area units. The available systems are METRIC_SYSTEM and IMPERIAL_SYSTEM.

Returns:
the current units system for areas.

getFormat

public String getFormat(String formatName)
Returns the format for a specified value type.

Parameters:
formatName - the name of the value type whose format is desired.
Returns:
the format, or null if the format does not exist.
Throws:
IllegalArgumentException - if the format name is null.

getLabel

public String getLabel(String labelName)
Returns the label for a specified label name.

Parameters:
labelName - the name of the label to return.
Returns:
the label, or null if the label does not exist.
Throws:
IllegalArgumentException - if the label name is null.

getLengthUnits

public String getLengthUnits()
Returns the current length units.

Returns:
the current length units. See UnitsFormat(String, String, boolean) for the list of those available.

getLengthUnitsMultiplier

public double getLengthUnitsMultiplier()
Indicates the multiplier used to convert from meters to the current length units.

Returns:
the conversion multiplier to convert meters to the current length units.

getLengthUnitsSymbol

public String getLengthUnitsSymbol()
Returns the units symbol for the current length units. Examples are "m" for meters and "Nm" for nautical miles.

Returns:
the units symbol for the current length units.

getLengthUnitsSystem

public String getLengthUnitsSystem()
Indicates the unit system of the current length units. The available systems are METRIC_SYSTEM and IMPERIAL_SYSTEM.

Returns:
the current units system for lengths.

heading

public String heading(Angle angle)
Format an angle of heading according to the current angle format.

The value is formatted using the current LABEL_HEADING and angle format.

Parameters:
angle - the heading angle to format.
Returns:
a string containing the formatted angle.
Throws:
IllegalArgumentException - if the angle is null.

heading

public String heading(double heading)
Format an angle of heading in degrees according to the current angle format.

The value is formatted using the current LABEL_HEADING and FORMAT_HEADING. The default FORMAT_HEADING is " %9.2f°".

Parameters:
heading - the angle to format.
Returns:
a string containing the formatted angle.

headingNL

public String headingNL(Angle angle)
Format an angle of heading according to the current angle format, and append a new-line character.

The value is formatted using the current LABEL_HEADING and angle format.

Parameters:
angle - the heading angle to format.
Returns:
a string containing the formatted angle and ending with the new-line character.
Throws:
IllegalArgumentException - if the angle is null.

headingNL

public String headingNL(double heading)
Format an angle of heading in degrees according to the current angle format, and append a new-line character.

The value is formatted using the current LABEL_HEADING and FORMAT_HEADING. The default FORMAT_HEADING is " %9.2f°".

Parameters:
heading - the angle to format.
Returns:
a string containing the formatted angle and ending with the new-line character.

isShowDMS

public boolean isShowDMS()
Indicates whether angles are displayed in degrees-minutes-seconds.

Returns:
true if angles are displayed in degrees-minutes seconds, false if they're displayed in decimal degrees.

latitude

public String latitude(Angle angle)
Format an angle of latitude.

The value is formatted using the current LABEL_LATITUDE and angle format.

Parameters:
angle - the angle to format.
Returns:
a string containing the formatted angle.
Throws:
IllegalArgumentException - if the angle is null.

latitudeNL

public String latitudeNL(Angle angle)
Format an angle of latitude and append a new-line character.

The value is formatted using the current LABEL_LATITUDE and angle format.

Parameters:
angle - the angle to format.
Returns:
a string containing the formatted angle and ending with the new-line character.
Throws:
IllegalArgumentException - if the angle is null.

latLon

public String latLon(LatLon latlon)
Format angles of latitude and longitude according to the current angle format.

The values are formatted using the current LABEL_LATLON_LAT, LABEL_LATLON_LON and angle format.

Parameters:
latlon - the angles to format.
Returns:
a string containing the formatted angles.
Throws:
IllegalArgumentException - if latlon is null.

latLonNL

public String latLonNL(LatLon latlon)
Format angles of latitude and longitude according to the current angle format, and append a new-line character.

The values are formatted using the current LABEL_LATLON_LAT, LABEL_LATLON_LON and angle format.

Parameters:
latlon - the angles to format.
Returns:
a string containing the formatted angles and ending with the new-line character.
Throws:
IllegalArgumentException - if latlon is null.

length

public String length(String label,
                     double meters)
Format a length according to the current length configuration. Prepend a specified label.

The value is formatted using the current FORMAT_LENGTH and length units symbol, and is converted to the current length units prior to formatting. The default length format is " %,12.1f %s", where the %s specifier stands for the units symbol.

Parameters:
label - the label to prepend to the formatted length. May be null to indicate no label.
meters - the length to format, in meters.
Returns:
the formatted length with the specified label prepended.

lengthNL

public String lengthNL(String label,
                       double meters)
Format a length according to the current length configuration. Prepend a specified label and append a new-line character.

The value is formatted using the current FORMAT_LENGTH and length units symbol, and is converted to the current length units prior to formatting. The default length format is " %,12.1f %s", where the %s specifier stands for the units symbol.

Parameters:
label - the label to prepend to the formatted length. May be null to indicate no label.
meters - the length to format, in meters.
Returns:
the formatted length with the specified label prepended and a new-line character appended.

longitude

public String longitude(Angle angle)
Format an angle of longitude.

The value is formatted using the current LABEL_LONGITUDE and angle format.

Parameters:
angle - the angle to format.
Returns:
a string containing the formatted angle.
Throws:
IllegalArgumentException - if the angle is null.

longitudeNL

public String longitudeNL(Angle angle)
Format an angle of longitude and append a new-line character.

The value is formatted using the current LABEL_LONGITUDE and angle format.

Parameters:
angle - the angle to format.
Returns:
a string containing the formatted angle and ending with the new-line character.

pitch

public String pitch(double pitch)
Format an angle of pitch according to the current angle format.

The value is formatted using the current LABEL_PITCH and FORMAT_PITCH. The default FORMAT_PITCH is " %9.2f°".

Parameters:
pitch - the angle to format.
Returns:
a string containing the formatted angle.

pitchNL

public String pitchNL(double pitch)
Format an angle of pitch according to the current angle format, and append a new-line character.

The value is formatted using the current LABEL_PITCH and FORMAT_PITCH. The default FORMAT_PITCH is " %9.2f°".

Parameters:
pitch - the angle to format.
Returns:
a string containing the formatted angle and ending with the new-line character.

setAltitudeUnits

public void setAltitudeUnits(String altitudeUnits)
Specifies the units in which to display altitude values. Units subsequently formatted by the instance are converted from meters to the desired units prior to formatting.

Parameters:
altitudeUnits - the desired altitude units. See UnitsFormat(String, String, boolean) for the list of those available.
Throws:
IllegalArgumentException - if lengthUnits is null.

setAreaUnits

public void setAreaUnits(String areaUnits)
Specifies the units in which to display area values. Units subsequently formatted by the instance are converted from square meters to the desired units prior to formatting.

Parameters:
areaUnits - the desired length units. See UnitsFormat(String, String, boolean) for the list of those available.
Throws:
IllegalArgumentException - if areaUnits is null.

setDefaultFormats

protected void setDefaultFormats()
Establishes the format declarations to use for certain values. Examples are " %,12.1f %s" for lengths and " %,11.1f" for UTM northings. Subclasses can override this method to establish formats other than the defaults. The value types that have associated formats are indicated by the "FORMAT_" constants defined by this class or by its subclasses.


setDefaultLabels

protected void setDefaultLabels()
Establishes the labels to use when displaying values other than length and area. A label is a string placed before the value and its units. Examples are Latitude 24.36, UTM Zone: 12, and Eye Altitude: 500 km, where the emphasized terms are the labels. Subclasses can override this method to establish labels other than the defaults. The default labels are drawn from the current message properties. The recognized labels are those indicated by the "LABEL_" constants defined by this class or by its subclasses.


setFormat

public void setFormat(String formatName,
                      String format)
Set the format of a specified value type. See setDefaultFormats() for a description and examples of formats.

Parameters:
formatName - a key identifying the value type that is to have the specified format. Available types are those indicated by the "FORMAT_" constants defined by this class or by its subclasses
format - the label to use for the specified value type.
Throws:
IllegalArgumentException - if either the format or format name are null.

setLabel

public void setLabel(String labelName,
                     String label)
Set the label of a specified value type. See setDefaultLabels() for a description and examples of labels.

Parameters:
labelName - a key identifying the label type. Available names are those indicated by the "LABEL_" constants defined by this class or by its subclasses
label - the label to use for the specified value type.
Throws:
IllegalArgumentException - if either the label or label name is null.

setLengthUnits

public void setLengthUnits(String lengthUnits)
Specifies the units in which to display length values. Units subsequently formatted by the instance are converted from meters to the desired units prior to formatting.

Parameters:
lengthUnits - the desired length units. See UnitsFormat(String, String, boolean) for the list of those available.
Throws:
IllegalArgumentException - if lengthUnits is null.

setShowDMS

public void setShowDMS(boolean showDMS)
Specifies whether angles are displayed in degrees-minutes-seconds.

Parameters:
showDMS - true to display angles in degrees-minutes seconds, false to display them in decimal degrees.

setUnitsSystem

public void setUnitsSystem(String unitsSystem)
Sets the length and area units to those common for a given units system. Recognized systems are METRIC_SYSTEM, which uses kilometers and square kilometers, and IMPERIAL_SYSTEM, which uses miles and square miles.

Parameters:
unitsSystem - the desired units system, either METRIC_SYSTEM or IMPERIAL_SYSTEM.
Throws:
IllegalArgumentException - if unitsSystem is null.

terrainHeight

public String terrainHeight(double metersElevation,
                            double verticalExaggeration)
Format a terrain height value according to the current configuration and append a new-line character.

The value is formatted using the current LABEL_TERRAIN_HEIGHT, FORMAT_TERRAIN_HEIGHT and length units symbol. The default terrain height format is " (ve %3.1f): %,6d %s", where the %3.1f specifier stands for the vertical exaggeration, the %,6d specifier stands for the terrain height, and the %s specifier stands for the units symbol.

Note: While the FORMAT_TERRAIN_HEIGHT string may be specified by the application, the terrain height components are always passed to the internal formatter in the order: vertical exaggeration, terrain height, units symbol.

Parameters:
metersElevation - the terrain height in meters.
verticalExaggeration - the vertical exaggeration to apply to the terrain height.
Returns:
the formatted terrain height ending with a new-line character.

terrainHeightNL

public String terrainHeightNL(double metersElevation,
                              double verticalExaggeration)
Format a terrain height value according to the current configuration and append a new-line character. See terrainHeight(double, double) for a description of the formatting.

Parameters:
metersElevation - the terrain height in meters.
verticalExaggeration - the vertical exaggeration to apply to the terrain height.
Returns:
the formatted terrain height ending with a new-line character.

utmEasting

public String utmEasting(double easting)
Format a UTM easting value according to the current UTM easting format.

The value is formatted using the current LABEL_UTM_EASTING and current FORMAT_UTM_EASTING. The default UTM easting format is " %,11.1f". No units symbol is included in the formatted string because UTM easting units are always meters.

Parameters:
easting - the UTM northing to format.
Returns:
the formatted UTM easting.

utmEastingNL

public String utmEastingNL(double easting)
Format a UTM easting value according to the current UTM easting format and append a new-line character.

The value is formatted using the current LABEL_UTM_EASTING and current FORMAT_UTM_EASTING. The default UTM easting format is " %,11.1f". No units symbol is included in the formatted string because UTM easting units are always meters.

Parameters:
easting - the UTM northing to format.
Returns:
the formatted UTM easting ending with a new-line character.

utmNorthing

public String utmNorthing(double northing)
Format a UTM northing value according to the current UTM northing format.

The value is formatted using the current LABEL_UTM_NORTHING and current FORMAT_UTM_NORTHING. The default UTM northing format is " %,11.1f". No units symbol is included in the formatted string because UTM northing units are always meters.

Parameters:
northing - the UTM northing to format.
Returns:
the formatted UTM northing.

utmNorthingNL

public String utmNorthingNL(double northing)
Format a UTM northing value according to the current UTM northing format and append a new-line character.

The value is formatted using the current LABEL_UTM_NORTHING and current FORMAT_UTM_NORTHING. The default UTM northing format is " %,11.1f". No units symbol is included in the formatted string because UTM northing units are always meters.

Parameters:
northing - the UTM northing to format.
Returns:
the formatted UTM northing ending with a new-line character.

utmZone

public String utmZone(int zone)
Format a UTM zone according to the current UTM zone format.

The value is formatted using the current LABEL_UTM_ZONE.

Parameters:
zone - the UTM zone to format.
Returns:
the formatted UTM zone.

utmZoneNL

public String utmZoneNL(int zone)
Format a UTM zone according to the current UTM zone format and append a new-line character.

The value is formatted using the current LABEL_UTM_ZONE.

Parameters:
zone - the UTM zone to format.
Returns:
the formatted UTM zone ending with a new-line character.

NASA World Wind