public class UnitsFormat extends AVListImpl
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ACRE |
protected java.lang.String |
altitudeUnits |
protected double |
altitudeUnitsMultiplier |
protected java.lang.String |
altitudeUnitsSymbol |
protected java.lang.String |
areaUnits |
protected double |
areaUnitsMultiplier |
protected java.lang.String |
areaUnitsSymbol |
static java.lang.String |
FEET |
static java.lang.String |
FORMAT_AREA |
static java.lang.String |
FORMAT_DECIMAL_DEGREES |
static java.lang.String |
FORMAT_EYE_ALTITUDE |
static java.lang.String |
FORMAT_HEADING |
static java.lang.String |
FORMAT_LENGTH |
static java.lang.String |
FORMAT_PITCH |
static java.lang.String |
FORMAT_TERRAIN_HEIGHT |
static java.lang.String |
FORMAT_UTM_EASTING |
static java.lang.String |
FORMAT_UTM_NORTHING |
static java.lang.String |
HECTARE |
static java.lang.String |
IMPERIAL_SYSTEM |
static java.lang.String |
KILOMETERS |
static java.lang.String |
LABEL_DATUM |
static java.lang.String |
LABEL_EYE_ALTITUDE |
static java.lang.String |
LABEL_HEADING |
static java.lang.String |
LABEL_LATITUDE |
static java.lang.String |
LABEL_LATLON_LAT |
static java.lang.String |
LABEL_LATLON_LON |
static java.lang.String |
LABEL_LONGITUDE |
static java.lang.String |
LABEL_PITCH |
static java.lang.String |
LABEL_TERRAIN_HEIGHT |
static java.lang.String |
LABEL_UTM_EASTING |
static java.lang.String |
LABEL_UTM_NORTHING |
static java.lang.String |
LABEL_UTM_ZONE |
protected java.lang.String |
lengthUnits |
protected double |
lengthUnitsMultiplier |
protected java.lang.String |
lengthUnitsSymbol |
static java.lang.String |
METERS |
static java.lang.String |
METRIC_SYSTEM |
static java.lang.String |
MILES |
static java.lang.String |
NAUTICAL_MILES |
protected static java.lang.String |
NL |
protected boolean |
showDMS |
static java.lang.String |
SQUARE_FEET |
static java.lang.String |
SQUARE_KILOMETERS |
static java.lang.String |
SQUARE_METERS |
static java.lang.String |
SQUARE_MILES |
static java.lang.String |
SQUARE_YARDS |
static java.lang.String |
SYMBOL_ACRE |
static java.lang.String |
SYMBOL_FEET |
static java.lang.String |
SYMBOL_HECTARE |
static java.lang.String |
SYMBOL_KILOMETERS |
static java.lang.String |
SYMBOL_METERS |
static java.lang.String |
SYMBOL_MILES |
static java.lang.String |
SYMBOL_NAUTICAL_MILES |
static java.lang.String |
SYMBOL_SQUARE_FEET |
static java.lang.String |
SYMBOL_SQUARE_KILOMETERS |
static java.lang.String |
SYMBOL_SQUARE_METERS |
static java.lang.String |
SYMBOL_SQUARE_MILES |
static java.lang.String |
SYMBOL_SQUARE_YARDS |
static java.lang.String |
SYMBOL_YARDS |
static java.lang.String |
YARDS |
Constructor and Description |
---|
UnitsFormat()
Construct an instance that displays length in kilometers, area in square kilometers and angles in decimal
degrees.
|
UnitsFormat(java.lang.String lengthUnits,
java.lang.String areaUnits)
Constructs an instance that display length and area in specified units, and angles in decimal degrees.
|
UnitsFormat(java.lang.String lengthUnits,
java.lang.String areaUnits,
boolean showDMS)
Constructs an instance that display length and area in specified units, and angles in a specified format.
|
Modifier and Type | Method and Description |
---|---|
java.lang.String |
angle(java.lang.String label,
Angle angle)
Format an angle according to the current angle format.
|
java.lang.String |
angleNL(java.lang.String label,
Angle angle)
Format an angle according to the current angle format.
|
java.lang.String |
area(java.lang.String label,
double squareMeters)
Format an area value according to the current length configuration and prepend a specified label.
|
java.lang.String |
areaNL(java.lang.String label,
double squareMeters)
Format an area value according to the current length configuration.
|
java.lang.String |
eyeAltitude(double metersAltitude)
Format an eye altitude according to the current eye altitude format.
|
java.lang.String |
eyeAltitudeNL(double metersAltitude)
Format an eye altitude according to the current eye altitude format, and append a new-line character.
|
java.lang.String |
getAltitudeUnits()
Returns the current altitude units.
|
double |
getAltitudeUnitsMultiplier()
Indicates the multiplier used to convert from meters to the current altitude units.
|
java.lang.String |
getAltitudeUnitsSymbol()
Returns the units symbol for the current altitude units.
|
java.lang.String |
getAreaUnits()
Returns the current area units.
|
double |
getAreaUnitsMultiplier()
Indicates the multiplier used to convert from square meters to the current area units.
|
java.lang.String |
getAreaUnitsSymbol()
Returns the units symbol for the current area units.
|
java.lang.String |
getAreaUnitsSystem()
Indicates the unit system of the current area units.
|
java.lang.String |
getFormat(java.lang.String formatName)
Returns the format for a specified value type.
|
java.lang.String |
getLabel(java.lang.String labelName)
Returns the label for a specified label name.
|
java.lang.String |
getLengthUnits()
Returns the current length units.
|
double |
getLengthUnitsMultiplier()
Indicates the multiplier used to convert from meters to the current length units.
|
java.lang.String |
getLengthUnitsSymbol()
Returns the units symbol for the current length units.
|
java.lang.String |
getLengthUnitsSystem()
Indicates the unit system of the current length units.
|
java.lang.String |
heading(Angle angle)
Format an angle of heading according to the current angle format.
|
java.lang.String |
heading(double heading)
Format an angle of heading in degrees according to the current angle format.
|
java.lang.String |
headingNL(Angle angle)
Format an angle of heading according to the current angle format, and append a new-line character.
|
java.lang.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.
|
java.lang.String |
latitude(Angle angle)
Format an angle of latitude.
|
java.lang.String |
latitudeNL(Angle angle)
Format an angle of latitude and append a new-line character.
|
java.lang.String |
latLon(LatLon latlon)
Format angles of latitude and longitude according to the current angle format.
|
java.lang.String |
latLon2(LatLon latlon)
Format angles of latitude and longitude according to the current angle format and in the form "20°N
85°S".
|
java.lang.String |
latLon2NL(LatLon latlon)
Format angles with
latLon2(gov.nasa.worldwind.geom.LatLon) and append a new-line character. |
java.lang.String |
latLonNL(LatLon latlon)
Format angles of latitude and longitude according to the current angle format, and append a new-line character.
|
java.lang.String |
length(java.lang.String label,
double meters)
Format a length according to the current length configuration.
|
java.lang.String |
lengthNL(java.lang.String label,
double meters)
Format a length according to the current length configuration.
|
java.lang.String |
longitude(Angle angle)
Format an angle of longitude.
|
java.lang.String |
longitudeNL(Angle angle)
Format an angle of longitude and append a new-line character.
|
java.lang.String |
pitch(double pitch)
Format an angle of pitch according to the current angle format.
|
java.lang.String |
pitchNL(double pitch)
Format an angle of pitch according to the current angle format, and append a new-line character.
|
void |
setAltitudeUnits(java.lang.String altitudeUnits)
Specifies the units in which to display altitude values.
|
void |
setAreaUnits(java.lang.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(java.lang.String formatName,
java.lang.String format)
Set the format of a specified value type.
|
void |
setLabel(java.lang.String labelName,
java.lang.String label)
Set the label of a specified value type.
|
void |
setLengthUnits(java.lang.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(java.lang.String unitsSystem)
Sets the length and area units to those common for a given units system.
|
java.lang.String |
terrainHeight(double metersElevation,
double verticalExaggeration)
Format a terrain height value according to the current configuration and append a new-line character.
|
java.lang.String |
terrainHeightNL(double metersElevation,
double verticalExaggeration)
Format a terrain height value according to the current configuration and append a new-line character.
|
java.lang.String |
utmEasting(double easting)
Format a UTM easting value according to the current UTM easting format.
|
java.lang.String |
utmEastingNL(double easting)
Format a UTM easting value according to the current UTM easting format and append a new-line character.
|
java.lang.String |
utmNorthing(double northing)
Format a UTM northing value according to the current UTM northing format.
|
java.lang.String |
utmNorthingNL(double northing)
Format a UTM northing value according to the current UTM northing format and append a new-line character.
|
java.lang.String |
utmZone(int zone)
Format a UTM zone according to the current UTM zone format.
|
java.lang.String |
utmZoneNL(int zone)
Format a UTM zone according to the current UTM zone format and append a new-line character.
|
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
public static final java.lang.String ACRE
protected java.lang.String altitudeUnits
protected double altitudeUnitsMultiplier
protected java.lang.String altitudeUnitsSymbol
protected java.lang.String areaUnits
protected double areaUnitsMultiplier
protected java.lang.String areaUnitsSymbol
public static final java.lang.String FEET
public static final java.lang.String FORMAT_AREA
public static final java.lang.String FORMAT_DECIMAL_DEGREES
public static final java.lang.String FORMAT_EYE_ALTITUDE
public static final java.lang.String FORMAT_HEADING
public static final java.lang.String FORMAT_LENGTH
public static final java.lang.String FORMAT_PITCH
public static final java.lang.String FORMAT_TERRAIN_HEIGHT
public static final java.lang.String FORMAT_UTM_EASTING
public static final java.lang.String FORMAT_UTM_NORTHING
public static final java.lang.String HECTARE
public static final java.lang.String IMPERIAL_SYSTEM
public static final java.lang.String KILOMETERS
public static final java.lang.String LABEL_DATUM
public static final java.lang.String LABEL_EYE_ALTITUDE
public static final java.lang.String LABEL_HEADING
public static final java.lang.String LABEL_LATITUDE
public static final java.lang.String LABEL_LATLON_LAT
public static final java.lang.String LABEL_LATLON_LON
public static final java.lang.String LABEL_LONGITUDE
public static final java.lang.String LABEL_PITCH
public static final java.lang.String LABEL_TERRAIN_HEIGHT
public static final java.lang.String LABEL_UTM_EASTING
public static final java.lang.String LABEL_UTM_NORTHING
public static final java.lang.String LABEL_UTM_ZONE
protected java.lang.String lengthUnits
protected double lengthUnitsMultiplier
protected java.lang.String lengthUnitsSymbol
public static final java.lang.String METERS
public static final java.lang.String METRIC_SYSTEM
public static final java.lang.String MILES
public static final java.lang.String NAUTICAL_MILES
protected static final java.lang.String NL
protected boolean showDMS
public static final java.lang.String SQUARE_FEET
public static final java.lang.String SQUARE_KILOMETERS
public static final java.lang.String SQUARE_METERS
public static final java.lang.String SQUARE_MILES
public static final java.lang.String SQUARE_YARDS
public static final java.lang.String SYMBOL_ACRE
public static final java.lang.String SYMBOL_FEET
public static final java.lang.String SYMBOL_HECTARE
public static final java.lang.String SYMBOL_KILOMETERS
public static final java.lang.String SYMBOL_METERS
public static final java.lang.String SYMBOL_MILES
public static final java.lang.String SYMBOL_NAUTICAL_MILES
public static final java.lang.String SYMBOL_SQUARE_FEET
public static final java.lang.String SYMBOL_SQUARE_KILOMETERS
public static final java.lang.String SYMBOL_SQUARE_METERS
public static final java.lang.String SYMBOL_SQUARE_MILES
public static final java.lang.String SYMBOL_SQUARE_YARDS
public static final java.lang.String SYMBOL_YARDS
public static final java.lang.String YARDS
public UnitsFormat()
public UnitsFormat(java.lang.String lengthUnits, java.lang.String areaUnits)
lengthUnits
- the desired length units. Available length units are METERS, KILOMETERS, MILES,
NAUTICAL_MILES, YARDS
and FEET
areaUnits
- the desired area units. Available area units are SQUARE_METERS, SQUARE_KILOMETERS,
HECTARE, ACRE, SQUARE_YARD
and SQUARE_FEET
.
- Throws:
java.lang.IllegalArgumentException
- if either lengthUnits
or areaUnits
is null.
public UnitsFormat(java.lang.String lengthUnits, java.lang.String areaUnits, boolean showDMS)
lengthUnits
- the desired length units. Available length units are METERS, KILOMETERS, MILES,
NAUTICAL_MILES, YARDS
and FEET
areaUnits
- 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:
java.lang.IllegalArgumentException
- if either lengthUnits
or areaUnits
is null.
public java.lang.String angle(java.lang.String label, Angle angle)
label
- a label to prepend to the formatted angle. May be null to indicate no label.angle
- the angle to format.java.lang.IllegalArgumentException
- if the angle is null.public java.lang.String angleNL(java.lang.String label, Angle angle)
label
- a label to prepend to the formatted angle. May be null to indicate no label.angle
- the angle to format.java.lang.IllegalArgumentException
- if the angle is null.public java.lang.String area(java.lang.String label, double squareMeters)
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.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.public java.lang.String areaNL(java.lang.String label, double squareMeters)
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.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.public java.lang.String eyeAltitude(double metersAltitude)
LABEL_EYE_ALTITUDE
, FORMAT_EYE_ALTITUDE
and length
format.metersAltitude
- the eye altitude to format, in meters.public java.lang.String eyeAltitudeNL(double metersAltitude)
LABEL_EYE_ALTITUDE
, FORMAT_EYE_ALTITUDE
and length
format.metersAltitude
- the eye altitude to format, in meters.public java.lang.String getAltitudeUnits()
UnitsFormat(String, String, boolean)
for the list of those
available.public double getAltitudeUnitsMultiplier()
public java.lang.String getAltitudeUnitsSymbol()
public java.lang.String getAreaUnits()
UnitsFormat(String, String, boolean)
for the list of those
available.public double getAreaUnitsMultiplier()
public java.lang.String getAreaUnitsSymbol()
public java.lang.String getAreaUnitsSystem()
METRIC_SYSTEM
and IMPERIAL_SYSTEM
.public java.lang.String getFormat(java.lang.String formatName)
formatName
- the name of the value type whose format is desired.java.lang.IllegalArgumentException
- if the format name is null.public java.lang.String getLabel(java.lang.String labelName)
labelName
- the name of the label to return.java.lang.IllegalArgumentException
- if the label name is null.public java.lang.String getLengthUnits()
UnitsFormat(String, String, boolean)
for the list of those
available.public double getLengthUnitsMultiplier()
public java.lang.String getLengthUnitsSymbol()
public java.lang.String getLengthUnitsSystem()
METRIC_SYSTEM
and
IMPERIAL_SYSTEM
.public java.lang.String heading(Angle angle)
LABEL_HEADING
and angle format.angle
- the heading angle to format.java.lang.IllegalArgumentException
- if the angle is null.public java.lang.String heading(double heading)
LABEL_HEADING
and FORMAT_HEADING
. The default
FORMAT_HEADING
is " %9.2f°".heading
- the angle to format.public java.lang.String headingNL(Angle angle)
LABEL_HEADING
and angle format.angle
- the heading angle to format.java.lang.IllegalArgumentException
- if the angle is null.public java.lang.String headingNL(double heading)
LABEL_HEADING
and FORMAT_HEADING
. The default
FORMAT_HEADING
is " %9.2f°".heading
- the angle to format.public boolean isShowDMS()
public java.lang.String latitude(Angle angle)
LABEL_LATITUDE
and angle format.angle
- the angle to format.java.lang.IllegalArgumentException
- if the angle is null.public java.lang.String latitudeNL(Angle angle)
LABEL_LATITUDE
and angle format.angle
- the angle to format.java.lang.IllegalArgumentException
- if the angle is null.public java.lang.String latLon(LatLon latlon)
LABEL_LATLON_LAT
, LABEL_LATLON_LON
and angle
format.latlon
- the angles to format.java.lang.IllegalArgumentException
- if latlon
is null.public java.lang.String latLon2(LatLon latlon)
latlon
- the angles to format.java.lang.IllegalArgumentException
- if latlon
is null.public java.lang.String latLon2NL(LatLon latlon)
latLon2(gov.nasa.worldwind.geom.LatLon)
and append a new-line character.latlon
- the angles to format.java.lang.IllegalArgumentException
- if latlon
is null.public java.lang.String latLonNL(LatLon latlon)
LABEL_LATLON_LAT
, LABEL_LATLON_LON
and angle
format.latlon
- the angles to format.java.lang.IllegalArgumentException
- if latlon
is null.public java.lang.String length(java.lang.String label, double meters)
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.label
- the label to prepend to the formatted length. May be null to indicate no label.meters
- the length to format, in meters.public java.lang.String lengthNL(java.lang.String label, double meters)
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.label
- the label to prepend to the formatted length. May be null to indicate no label.meters
- the length to format, in meters.public java.lang.String longitude(Angle angle)
LABEL_LONGITUDE
and angle format.angle
- the angle to format.java.lang.IllegalArgumentException
- if the angle is null.public java.lang.String longitudeNL(Angle angle)
LABEL_LONGITUDE
and angle format.angle
- the angle to format.public java.lang.String pitch(double pitch)
LABEL_PITCH
and FORMAT_PITCH
. The default
FORMAT_PITCH
is " %9.2f°".pitch
- the angle to format.public java.lang.String pitchNL(double pitch)
LABEL_PITCH
and FORMAT_PITCH
. The default
FORMAT_PITCH
is " %9.2f°".pitch
- the angle to format.public void setAltitudeUnits(java.lang.String altitudeUnits)
altitudeUnits
- the desired altitude units. See UnitsFormat(String, String, boolean)
for the list
of those available.java.lang.IllegalArgumentException
- if lengthUnits
is null.public void setAreaUnits(java.lang.String areaUnits)
areaUnits
- the desired length units. See UnitsFormat(String, String, boolean)
for the list of
those available.java.lang.IllegalArgumentException
- if areaUnits
is null.protected void setDefaultFormats()
protected void setDefaultLabels()
public void setFormat(java.lang.String formatName, java.lang.String format)
setDefaultFormats()
for a description and examples of
formats.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 subclassesformat
- the label to use for the specified value type.java.lang.IllegalArgumentException
- if either the format or format name are null.public void setLabel(java.lang.String labelName, java.lang.String label)
setDefaultLabels()
for a description and examples of
labels.labelName
- a key identifying the label type. Available names are those indicated by the "LABEL_" constants
defined by this class or by its subclasseslabel
- the label to use for the specified value type.java.lang.IllegalArgumentException
- if either the label or label name is null.public void setLengthUnits(java.lang.String lengthUnits)
lengthUnits
- the desired length units. See UnitsFormat(String, String, boolean)
for the list of
those available.java.lang.IllegalArgumentException
- if lengthUnits
is null.public void setShowDMS(boolean showDMS)
showDMS
- true to display angles in degrees-minutes seconds, false to display them in decimal degrees.public void setUnitsSystem(java.lang.String unitsSystem)
METRIC_SYSTEM
, which uses kilometers and square kilometers, and IMPERIAL_SYSTEM
, which uses miles and
square miles.unitsSystem
- the desired units system, either METRIC_SYSTEM
or IMPERIAL_SYSTEM
.java.lang.IllegalArgumentException
- if unitsSystem
is null.public java.lang.String terrainHeight(double metersElevation, double verticalExaggeration)
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.metersElevation
- the terrain height in meters.verticalExaggeration
- the vertical exaggeration to apply to the terrain height.public java.lang.String terrainHeightNL(double metersElevation, double verticalExaggeration)
terrainHeight(double, double)
for a description of the formatting.metersElevation
- the terrain height in meters.verticalExaggeration
- the vertical exaggeration to apply to the terrain height.public java.lang.String utmEasting(double easting)
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.easting
- the UTM northing to format.public java.lang.String utmEastingNL(double easting)
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.easting
- the UTM northing to format.public java.lang.String utmNorthing(double northing)
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.northing
- the UTM northing to format.public java.lang.String utmNorthingNL(double northing)
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.northing
- the UTM northing to format.public java.lang.String utmZone(int zone)
LABEL_UTM_ZONE
.zone
- the UTM zone to format.public java.lang.String utmZoneNL(int zone)
LABEL_UTM_ZONE
.zone
- the UTM zone to format.