org.geotools.geometry.jts.spatialschema.geometry
Class DirectPosition2D

java.lang.Object
  extended by java.awt.geom.Point2D
      extended by java.awt.geom.Point2D.Double
          extended by org.geotools.geometry.jts.spatialschema.geometry.DirectPosition2D
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, org.opengis.geometry.coordinate.Position, org.opengis.geometry.DirectPosition

public class DirectPosition2D
extends java.awt.geom.Point2D.Double
implements org.opengis.geometry.DirectPosition, java.io.Serializable

Holds the coordinates for a two-dimensional position within some coordinate reference system. This class put no restriction on the axis order, i.e. it doesn't ensure that the value stored in the x field increases toward East and the value in the y field toward North. The rational is that other DirectPosition implementation do not have restriction on axis order, and anyway such a restriction is hard to generalize (what to do with North-East direction?).

Version:
$Id: DirectPosition2D.java 34133 2009-10-12 08:14:05Z mbedward $
Author:
Martin Desruisseaux
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.awt.geom.Point2D
java.awt.geom.Point2D.Double, java.awt.geom.Point2D.Float
 
Field Summary
 
Fields inherited from class java.awt.geom.Point2D.Double
x, y
 
Constructor Summary
DirectPosition2D()
          Construct a position initialized to (0,0) with a null coordinate reference system.
DirectPosition2D(org.opengis.referencing.crs.CoordinateReferenceSystem crs)
          Construct a position with the specified coordinate reference system.
DirectPosition2D(org.opengis.referencing.crs.CoordinateReferenceSystem crs, double x, double y)
          Construct a 2D position from the specified ordinates in the specified CRS.
DirectPosition2D(org.opengis.geometry.DirectPosition point)
          Construct a position initialized to the same values than the specified point.
DirectPosition2D(double x, double y)
          Construct a 2D position from the specified ordinates.
DirectPosition2D(java.awt.geom.Point2D point)
          Construct a position from the specified Point2D.
 
Method Summary
 DirectPosition2D clone()
           
 double[] getCoordinate()
          Returns a sequence of numbers that hold the coordinate of this position in its reference system.
 org.opengis.referencing.crs.CoordinateReferenceSystem getCoordinateReferenceSystem()
          Returns the coordinate reference system in which the coordinate is given.
 double[] getCoordinates()
          Deprecated. 
 int getDimension()
          The length of coordinate sequence (the number of entries).
 org.opengis.geometry.DirectPosition getDirectPosition()
          Returns always this, the direct position for this position.
 double getOrdinate(int dimension)
          Returns the ordinate at the specified dimension.
 org.opengis.geometry.DirectPosition getPosition()
          Deprecated. 
 int hashCode()
          Returns a hash value for this coordinate.
 void setCoordinateReferenceSystem(org.opengis.referencing.crs.CoordinateReferenceSystem crs)
          Set the coordinate reference system in which the coordinate is given.
 void setLocation(org.opengis.geometry.DirectPosition position)
          Set this coordinate to the specified direct position.
 void setOrdinate(int dimension, double value)
          Sets the ordinate value along the specified dimension.
 java.awt.geom.Point2D toPoint2D()
          Returns a Point2D with the same coordinate as this direct position.
 java.lang.String toString()
          Returns a string representation of this coordinate.
 
Methods inherited from class java.awt.geom.Point2D.Double
getX, getY, setLocation
 
Methods inherited from class java.awt.geom.Point2D
distance, distance, distance, distanceSq, distanceSq, distanceSq, equals, setLocation
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.opengis.geometry.DirectPosition
equals
 

Constructor Detail

DirectPosition2D

public DirectPosition2D()
Construct a position initialized to (0,0) with a null coordinate reference system.


DirectPosition2D

public DirectPosition2D(org.opengis.referencing.crs.CoordinateReferenceSystem crs)
Construct a position with the specified coordinate reference system.


DirectPosition2D

public DirectPosition2D(double x,
                        double y)
Construct a 2D position from the specified ordinates.


DirectPosition2D

public DirectPosition2D(org.opengis.referencing.crs.CoordinateReferenceSystem crs,
                        double x,
                        double y)
Construct a 2D position from the specified ordinates in the specified CRS.


DirectPosition2D

public DirectPosition2D(java.awt.geom.Point2D point)
Construct a position from the specified Point2D.


DirectPosition2D

public DirectPosition2D(org.opengis.geometry.DirectPosition point)
Construct a position initialized to the same values than the specified point.

Method Detail

getPosition

@Deprecated
public org.opengis.geometry.DirectPosition getPosition()
Deprecated. 

Returns always this, the direct position for this position.

Specified by:
getPosition in interface org.opengis.geometry.coordinate.Position

getDirectPosition

public org.opengis.geometry.DirectPosition getDirectPosition()
Returns always this, the direct position for this position.

Specified by:
getDirectPosition in interface org.opengis.geometry.coordinate.Position

getCoordinateReferenceSystem

public final org.opengis.referencing.crs.CoordinateReferenceSystem getCoordinateReferenceSystem()
Returns the coordinate reference system in which the coordinate is given. May be null if this particular DirectPosition is included in a larger object with such a reference to a coordinate reference system.

Specified by:
getCoordinateReferenceSystem in interface org.opengis.geometry.DirectPosition
Returns:
The coordinate reference system, or null.

setCoordinateReferenceSystem

public void setCoordinateReferenceSystem(org.opengis.referencing.crs.CoordinateReferenceSystem crs)
Set the coordinate reference system in which the coordinate is given.

Parameters:
crs - The new coordinate reference system, or null.

getDimension

public final int getDimension()
The length of coordinate sequence (the number of entries). This is always 2 for DirectPosition2D objects.

Specified by:
getDimension in interface org.opengis.geometry.DirectPosition
Returns:
The dimensionality of this position.

getCoordinate

public double[] getCoordinate()
Returns a sequence of numbers that hold the coordinate of this position in its reference system.

Specified by:
getCoordinate in interface org.opengis.geometry.DirectPosition
Returns:
The coordinates

getCoordinates

@Deprecated
public double[] getCoordinates()
Deprecated. 

Specified by:
getCoordinates in interface org.opengis.geometry.DirectPosition

getOrdinate

public final double getOrdinate(int dimension)
                         throws java.lang.IndexOutOfBoundsException
Returns the ordinate at the specified dimension.

Specified by:
getOrdinate in interface org.opengis.geometry.DirectPosition
Parameters:
dimension - The dimension in the range 0 to 1 inclusive.
Returns:
The coordinate at the specified dimension.
Throws:
java.lang.IndexOutOfBoundsException - if the specified dimension is out of bounds.

setOrdinate

public final void setOrdinate(int dimension,
                              double value)
                       throws java.lang.IndexOutOfBoundsException
Sets the ordinate value along the specified dimension.

Specified by:
setOrdinate in interface org.opengis.geometry.DirectPosition
Parameters:
dimension - the dimension for the ordinate of interest.
value - the ordinate value of interest.
Throws:
java.lang.IndexOutOfBoundsException - if the specified dimension is out of bounds.

setLocation

public void setLocation(org.opengis.geometry.DirectPosition position)
                 throws org.opengis.geometry.MismatchedDimensionException
Set this coordinate to the specified direct position. If the specified position contains a coordinate reference system, then the CRS for this position will be set to the CRS of the specified position.

Parameters:
position - The new position for this point.
Throws:
org.opengis.geometry.MismatchedDimensionException - if this point doesn't have the expected dimension.

toPoint2D

public java.awt.geom.Point2D toPoint2D()
Returns a Point2D with the same coordinate as this direct position.


toString

public java.lang.String toString()
Returns a string representation of this coordinate. The returned string is implementation dependent. It is usually provided for debugging purposes.

Overrides:
toString in class java.awt.geom.Point2D.Double

hashCode

public int hashCode()
Returns a hash value for this coordinate. This value need not remain consistent between different implementations of the same class.

Specified by:
hashCode in interface org.opengis.geometry.DirectPosition
Overrides:
hashCode in class java.awt.geom.Point2D

clone

public DirectPosition2D clone()
Overrides:
clone in class java.awt.geom.Point2D


Copyright © 1996-2010 Geotools. All Rights Reserved.