org.geotools.measure
Class CoordinateFormat

Object
  extended by Format
      extended by CoordinateFormat
All Implemented Interfaces:
Serializable, Cloneable

public class CoordinateFormat
extends Format

Formats a direct position in an arbitrary coordinate reference system. The format for each ordinate is infered from the coordinate system units using the following rules:

Note: parsing is not yet implemented in this version.

Since:
2.0
Author:
Martin Desruisseaux (PMO, IRD)
See Also:
Serialized Form
Module:

Nested Class Summary
 
Nested classes/interfaces inherited from class Format
Format.Field
 
Constructor Summary
CoordinateFormat()
          Constructs a new coordinate format with default locale and a two-dimensional geographic (WGS 1984) coordinate reference system.
CoordinateFormat(Locale locale)
          Construct a new coordinate format for the specified locale and a two-dimensional geographic (WGS 1984) coordinate reference system.
CoordinateFormat(Locale locale, CoordinateReferenceSystem crs)
          Constructs a new coordinate format for the specified locale and coordinate reference system.
 
Method Summary
 String format(DirectPosition point)
          Formats a direct position.
 StringBuffer format(DirectPosition point, StringBuffer toAppendTo, FieldPosition position)
          Formats a direct position and appends the resulting text to a given string buffer.
 StringBuffer format(Object object, StringBuffer toAppendTo, FieldPosition position)
          Formats a direct position and appends the resulting text to a given string buffer.
 CoordinateReferenceSystem getCoordinateReferenceSystem()
          Returns the coordinate reference system for points to be formatted.
 Format getFormat(int dimension)
          Returns the format to use for formatting an ordinate at the given dimension.
 String getSeparator()
          Returns the separator between each coordinate (number, angle or date).
 DirectPosition parseObject(String source, ParsePosition position)
          Not yet implemented.
 void setAnglePattern(String pattern)
          Set the pattern for angles fields.
 void setCoordinateReferenceSystem(CoordinateReferenceSystem crs)
          Set the coordinate reference system for points to be formatted.
 void setDatePattern(String pattern)
          Set the pattern for dates fields.
 void setNumberPattern(String pattern)
          Set the pattern for numbers fields.
 void setSeparator(String separator)
          Set the separator between each coordinate.
 void setTimeZone(TimeZone timezone)
          Set the time zone for dates fields.
 
Methods inherited from class Format
clone, format, formatToCharacterIterator, parseObject
 
Methods inherited from class Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CoordinateFormat

public CoordinateFormat()
Constructs a new coordinate format with default locale and a two-dimensional geographic (WGS 1984) coordinate reference system.


CoordinateFormat

public CoordinateFormat(Locale locale)
Construct a new coordinate format for the specified locale and a two-dimensional geographic (WGS 1984) coordinate reference system.

Parameters:
locale - The locale for formatting coordinates and numbers.

CoordinateFormat

public CoordinateFormat(Locale locale,
                        CoordinateReferenceSystem crs)
Constructs a new coordinate format for the specified locale and coordinate reference system.

Parameters:
locale - The locale for formatting coordinates and numbers.
crs - The output coordinate reference system.
Method Detail

getCoordinateReferenceSystem

public CoordinateReferenceSystem getCoordinateReferenceSystem()
Returns the coordinate reference system for points to be formatted.

Returns:
The output coordinate reference system.

setCoordinateReferenceSystem

public void setCoordinateReferenceSystem(CoordinateReferenceSystem crs)
Set the coordinate reference system for points to be formatted. The number of dimensions must matched the dimension of points to be formatted.

Parameters:
crs - The new coordinate system.

getSeparator

public String getSeparator()
Returns the separator between each coordinate (number, angle or date).

Returns:
The current coordinate separator.
Since:
2.2

setSeparator

public void setSeparator(String separator)
Set the separator between each coordinate.

Parameters:
separator - The new coordinate separator.
Since:
2.2

setNumberPattern

public void setNumberPattern(String pattern)
Set the pattern for numbers fields. If some ordinates are formatted as plain number (for example in cartesian coordinate system), then those numbers will be formatted using this pattern.

Parameters:
pattern - The number pattern as specified in DecimalFormat.

setAnglePattern

public void setAnglePattern(String pattern)
Set the pattern for angles fields. If some ordinates are formatted as angle (for example in ellipsoidal coordinate system), then those angles will be formatted using this pattern.

Parameters:
pattern - The angle pattern as specified in AngleFormat.

setDatePattern

public void setDatePattern(String pattern)
Set the pattern for dates fields. If some ordinates are formatted as date (for example in time coordinate system), then those dates will be formatted using this pattern.

Parameters:
pattern - The date pattern as specified in SimpleDateFormat.

setTimeZone

public void setTimeZone(TimeZone timezone)
Set the time zone for dates fields. If some ordinates are formatted as date (for example in time coordinate system), then those dates will be formatted using the specified time zone.

Parameters:
timezone - The time zone for dates.

getFormat

public Format getFormat(int dimension)
                 throws IndexOutOfBoundsException
Returns the format to use for formatting an ordinate at the given dimension. The dimension parameter range from 0 inclusive to the coordinate reference system's dimension, exclusive. This method returns a direct reference to the internal format; any change to the returned Format object will change the formatting for this CoordinateFormat object.

Parameters:
dimension - The dimension for the ordinate to format.
Returns:
The format for the given dimension.
Throws:
IndexOutOfBoundsException - if dimension is out of range.

format

public String format(DirectPosition point)
Formats a direct position. The position's dimension must matches the coordinate reference system dimension.

Parameters:
point - The position to format.
Returns:
The formatted position.
Throws:
IllegalArgumentException - if this CoordinateFormat cannot format the given object.

format

public StringBuffer format(DirectPosition point,
                           StringBuffer toAppendTo,
                           FieldPosition position)
                    throws IllegalArgumentException
Formats a direct position and appends the resulting text to a given string buffer. The position's dimension must matches the coordinate reference system dimension.

Parameters:
point - The position to format.
toAppendTo - Where the text is to be appended.
position - A FieldPosition identifying a field in the formatted text, or null if none.
Returns:
The string buffer passed in as toAppendTo, with formatted text appended.
Throws:
IllegalArgumentException - if this CoordinateFormat cannot format the given object.

format

public StringBuffer format(Object object,
                           StringBuffer toAppendTo,
                           FieldPosition position)
                    throws IllegalArgumentException
Formats a direct position and appends the resulting text to a given string buffer. The position's dimension must matches the coordinate reference system dimension.

Specified by:
format in class Format
Parameters:
object - The DirectPosition to format.
toAppendTo - Where the text is to be appended.
position - A FieldPosition identifying a field in the formatted text, or null if none.
Returns:
The string buffer passed in as toAppendTo, with formatted text appended.
Throws:
NullPointerException - if toAppendTo is null.
IllegalArgumentException - if this CoordinateFormat cannot format the given object.

parseObject

public DirectPosition parseObject(String source,
                                  ParsePosition position)
Not yet implemented.

Specified by:
parseObject in class Format
Parameters:
source - The string to parse.
position - The position of the first character to parse.


Copyright © 1996-2009 Geotools. All Rights Reserved.