## org.apache.commons.math.geometry
Class Vector3DFormat

    java.lang.Object
      java.text.Format
          org.apache.commons.math.util.CompositeFormat
              org.apache.commons.math.geometry.Vector3DFormat

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable

    public class Vector3DFormat

extends CompositeFormat

Formats a 3D vector in components list format "{x; y; z}".

The prefix and suffix "{" and "}" and the separator "; " can be replaced by any user-defined strings. The number format for components can be configured.

White space is ignored at parse time, even if it is in the prefix, suffix or separator specifications. So even if the default separator does include a space character that is used at format time, both input string "{1;1;1}" and " { 1 ; 1 ; 1 } " will be parsed without error and the same vector will be returned. In the second case, however, the parse position after parsing will be just after the closing curly brace, i.e. just before the trailing space.

Version:
  $Revision: 772119 $ $Date: 2009-05-06 05:43:28 -0400 (Wed, 06 May 2009) $
See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class java.text.Format
`java.text.Format.Field`

Field Summary
`private static java.lang.String` `DEFAULT_PREFIX` The default prefix: "{".
`private static java.lang.String` `DEFAULT_SEPARATOR` The default separator: ", ".
`private static java.lang.String` `DEFAULT_SUFFIX` The default suffix: "}".
`private java.text.NumberFormat` `format` The format used for components.
`private java.lang.String` `prefix` Prefix.
`private java.lang.String` `separator` Separator.
`private static long` `serialVersionUID` Serializable version identifier
`private java.lang.String` `suffix` Suffix.
`private java.lang.String` `trimmedPrefix` Trimmed prefix.
`private java.lang.String` `trimmedSeparator` Trimmed separator.
`private java.lang.String` `trimmedSuffix` Trimmed suffix.

Constructor Summary
`Vector3DFormat()` Create an instance with default settings.
`Vector3DFormat(java.text.NumberFormat format)` Create an instance with a custom number format for components.
`Vector3DFormat(java.lang.String prefix, java.lang.String suffix, java.lang.String separator)` Create an instance with custom prefix, suffix and separator.
`Vector3DFormat(java.lang.String prefix, java.lang.String suffix, java.lang.String separator, java.text.NumberFormat format)` Create an instance with custom prefix, suffix, separator and format for components.

Method Summary
`java.lang.StringBuffer` `format(java.lang.Object obj, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)` Formats a object to produce a string.
`java.lang.StringBuffer` `format(Vector3D vector, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)` Formats a `Vector3D` object to produce a string.
`static java.lang.String` `formatVector3D(Vector3D v)` This static method calls `Format.format(Object)` on a default instance of Vector3DFormat.
`static java.util.Locale[]` `getAvailableLocales()` Get the set of locales for which 3D vectors formats are available.
`java.text.NumberFormat` `getFormat()` Get the components format.
`static Vector3DFormat` `getInstance()` Returns the default 3D vector format for the current locale.
`static Vector3DFormat` `getInstance(java.util.Locale locale)` Returns the default 3D vector format for the given locale.
`java.lang.String` `getPrefix()` Get the format prefix.
`java.lang.String` `getSeparator()` Get the format separator between components.
`java.lang.String` `getSuffix()` Get the format suffix.
`Vector3D` `parse(java.lang.String source)` Parses a string to produce a `Vector3D` object.
`Vector3D` `parse(java.lang.String source, java.text.ParsePosition pos)` Parses a string to produce a `Vector3D` object.
`java.lang.Object` `parseObject(java.lang.String source, java.text.ParsePosition pos)` Parses a string to produce a object.

Methods inherited from class org.apache.commons.math.util.CompositeFormat
`formatDouble, getDefaultNumberFormat, getDefaultNumberFormat, parseAndIgnoreWhitespace, parseFixedstring, parseNextCharacter, parseNumber`

Methods inherited from class java.text.Format
`clone, format, formatToCharacterIterator, parseObject`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### serialVersionUID

    private static final long serialVersionUID

  Serializable version identifier

  See Also:
    Constant Field Values

### DEFAULT_PREFIX

    private static final java.lang.String DEFAULT_PREFIX

  The default prefix: "{".

  See Also:
    Constant Field Values

### DEFAULT_SUFFIX

    private static final java.lang.String DEFAULT_SUFFIX

  The default suffix: "}".

  See Also:
    Constant Field Values

### DEFAULT_SEPARATOR

    private static final java.lang.String DEFAULT_SEPARATOR

  The default separator: ", ".

  See Also:
    Constant Field Values

### prefix

    private final java.lang.String prefix

  Prefix.

### suffix

    private final java.lang.String suffix

  Suffix.

### separator

    private final java.lang.String separator

  Separator.

### trimmedPrefix

    private final java.lang.String trimmedPrefix

  Trimmed prefix.

### trimmedSuffix

    private final java.lang.String trimmedSuffix

  Trimmed suffix.

### trimmedSeparator

    private final java.lang.String trimmedSeparator

  Trimmed separator.

### format

    private java.text.NumberFormat format

  The format used for components.

Constructor Detail

### Vector3DFormat

    public Vector3DFormat()

  Create an instance with default settings.

  The instance uses the default prefix, suffix and separator: "{", "}", and "; " and the default number format for components.

### Vector3DFormat

    public Vector3DFormat(java.text.NumberFormat format)

  Create an instance with a custom number format for components.

  Parameters:
    `format` - the custom format for components.

### Vector3DFormat

    public Vector3DFormat(java.lang.String prefix,
                          java.lang.String suffix,
                          java.lang.String separator)

  Create an instance with custom prefix, suffix and separator.

  Parameters:
    `prefix` - prefix to use instead of the default "{"
    `suffix` - suffix to use instead of the default "}"
    `separator` - separator to use instead of the default "; "

### Vector3DFormat

    public Vector3DFormat(java.lang.String prefix,
                          java.lang.String suffix,
                          java.lang.String separator,
                          java.text.NumberFormat format)

  Create an instance with custom prefix, suffix, separator and format for components.

  Parameters:
    `prefix` - prefix to use instead of the default "{"
    `suffix` - suffix to use instead of the default "}"
    `separator` - separator to use instead of the default "; "
    `format` - the custom format for components.

Method Detail

### getAvailableLocales

    public static java.util.Locale[] getAvailableLocales()

  Get the set of locales for which 3D vectors formats are available.

  This is the same set as the `NumberFormat` set.

  Returns:
    available 3D vector format locales.

### getPrefix

    public java.lang.String getPrefix()

  Get the format prefix.

  Returns:
    format prefix.

### getSuffix

    public java.lang.String getSuffix()

  Get the format suffix.

  Returns:
    format suffix.

### getSeparator

    public java.lang.String getSeparator()

  Get the format separator between components.

  Returns:
    format separator.

### getFormat

    public java.text.NumberFormat getFormat()

  Get the components format.

  Returns:
    components format.

### getInstance

    public static Vector3DFormat getInstance()

  Returns the default 3D vector format for the current locale.

  Returns:
    the default 3D vector format.

### getInstance

    public static Vector3DFormat getInstance(java.util.Locale locale)

  Returns the default 3D vector format for the given locale.

  Parameters:
    `locale` - the specific locale used by the format.
  Returns:
    the 3D vector format specific to the given locale.

### formatVector3D

    public static java.lang.String formatVector3D(Vector3D v)

  This static method calls `Format.format(Object)` on a default instance of Vector3DFormat.

  Parameters:
    `v` - Vector3D object to format
  Returns:
    A formatted vector

### format

    public java.lang.StringBuffer format(Vector3D vector,
                                         java.lang.StringBuffer toAppendTo,
                                         java.text.FieldPosition pos)

  Formats a `Vector3D` object to produce a string.

  Parameters:
    `vector` - the object to format.
    `toAppendTo` - where the text is to be appended
    `pos` - On input: an alignment field, if desired. On output: the offsets of the alignment field
  Returns:
    the value passed in as toAppendTo.

### format

    public java.lang.StringBuffer format(java.lang.Object obj,
                                         java.lang.StringBuffer toAppendTo,
                                         java.text.FieldPosition pos)

  Formats a object to produce a string.

  `obj` must be a `Vector3D` object. Any other type of object will result in an `IllegalArgumentException` being thrown.

  Specified by:
    `format` in class `java.text.Format`
  Parameters:
    `obj` - the object to format.
    `toAppendTo` - where the text is to be appended
    `pos` - On input: an alignment field, if desired. On output: the offsets of the alignment field
  Returns:
    the value passed in as toAppendTo.
  Throws:
    `java.lang.IllegalArgumentException` - is `obj` is not a valid type.
  See Also:
    `Format.format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition)`

### parse

    public Vector3D parse(java.lang.String source)
                   throws java.text.ParseException

  Parses a string to produce a `Vector3D` object.

  Parameters:
    `source` - the string to parse
  Returns:
    the parsed `Vector3D` object.
  Throws:
    `java.text.ParseException` - if the beginning of the specified string cannot be parsed.

### parse

    public Vector3D parse(java.lang.String source,
                          java.text.ParsePosition pos)

  Parses a string to produce a `Vector3D` object.

  Parameters:
    `source` - the string to parse
    `pos` - input/ouput parsing parameter.
  Returns:
    the parsed `Vector3D` object.

### parseObject

    public java.lang.Object parseObject(java.lang.String source,
                                        java.text.ParsePosition pos)

  Parses a string to produce a object.

  Specified by:
    `parseObject` in class `java.text.Format`
  Parameters:
    `source` - the string to parse
    `pos` - input/ouput parsing parameter.
  Returns:
    the parsed object.
  See Also:
    `Format.parseObject(java.lang.String, java.text.ParsePosition)`

Copyright (c) 2003-2010 Apache Software Foundation