JavaTM 2 Platform
Standard Ed. 5.0

java.awt.geom Class Point2D

```java.lang.Object
java.awt.geom.Point2D
```
All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
Point, Point2D.Double, Point2D.Float

`public abstract class Point2Dextends Objectimplements Cloneable`

The `Point2D` class defines a point representing a location in (x, y) coordinate space.

This class is only the abstract superclass for all objects that store a 2D coordinate. The actual storage representation of the coordinates is left to the subclass.

Nested Class Summary
`static class` `Point2D.Double`
The `Double` class defines a point specified in `double` precision.
`static class` `Point2D.Float`
The `Float` class defines a point specified in float precision.

Constructor Summary
`protected ` `Point2D()`
This is an abstract class that cannot be instantiated directly.

Method Summary
` Object` `clone()`
Creates a new object of the same class and with the same contents as this object.
` double` ```distance(double PX, double PY)```
Returns the distance from this `Point2D` to a specified point.
`static double` ```distance(double X1, double Y1, double X2, double Y2)```
Returns the distance between two points.
` double` `distance(Point2D pt)`
Returns the distance from this `Point2D` to a specified `Point2D`.
` double` ```distanceSq(double PX, double PY)```
Returns the square of the distance from this `Point2D` to a specified point.
`static double` ```distanceSq(double X1, double Y1, double X2, double Y2)```
Returns the square of the distance between two points.
` double` `distanceSq(Point2D pt)`
Returns the square of the distance from this `Point2D` to a specified `Point2D`.
` boolean` `equals(Object obj)`
Determines whether or not two points are equal.
`abstract  double` `getX()`
Returns the X coordinate of this `Point2D` in `double` precision.
`abstract  double` `getY()`
Returns the Y coordinate of this `Point2D` in `double` precision.
` int` `hashCode()`
Returns the hashcode for this `Point2D`.
`abstract  void` ```setLocation(double x, double y)```
Sets the location of this `Point2D` to the specified `double` coordinates.
` void` `setLocation(Point2D p)`
Sets the location of this `Point2D` to the same coordinates as the specified `Point2D` object.

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

Constructor Detail

Point2D

`protected Point2D()`
This is an abstract class that cannot be instantiated directly. Type-specific implementation subclasses are available for instantiation and provide a number of formats for storing the information necessary to satisfy the various accessor methods below.

`Point2D.Float`, `Point2D.Double`, `Point`
Method Detail

getX

`public abstract double getX()`
Returns the X coordinate of this `Point2D` in `double` precision.

Returns:
the X coordinate of this `Point2D`.
Since:
1.2

getY

`public abstract double getY()`
Returns the Y coordinate of this `Point2D` in `double` precision.

Returns:
the Y coordinate of this `Point2D`.
Since:
1.2

setLocation

```public abstract void setLocation(double x,
double y)```
Sets the location of this `Point2D` to the specified `double` coordinates.

Parameters:
`x, y` - the coordinates of this `Point2D`
Since:
1.2

setLocation

`public void setLocation(Point2D p)`
Sets the location of this `Point2D` to the same coordinates as the specified `Point2D` object.

Parameters:
`p` - the specified `Point2D` the which to set this `Point2D`
Since:
1.2

distanceSq

```public static double distanceSq(double X1,
double Y1,
double X2,
double Y2)```
Returns the square of the distance between two points.

Parameters:
`X1, Y1` - the coordinates of the first point
`X2, Y2` - the coordinates of the second point
Returns:
the square of the distance between the two sets of specified coordinates.

distance

```public static double distance(double X1,
double Y1,
double X2,
double Y2)```
Returns the distance between two points.

Parameters:
`X1, Y1` - the coordinates of the first point
`X2, Y2` - the coordinates of the second point
Returns:
the distance between the two sets of specified coordinates.

distanceSq

```public double distanceSq(double PX,
double PY)```
Returns the square of the distance from this `Point2D` to a specified point.

Parameters:
`PX, PY` - the coordinates of the other point
Returns:
the square of the distance between this `Point2D` and the specified point.

distanceSq

`public double distanceSq(Point2D pt)`
Returns the square of the distance from this `Point2D` to a specified `Point2D`.

Parameters:
`pt` - the specified `Point2D`
Returns:
the square of the distance between this `Point2D` to a specified `Point2D`.

distance

```public double distance(double PX,
double PY)```
Returns the distance from this `Point2D` to a specified point.

Parameters:
`PX, PY` - the coordinates of the specified `Point2D`
Returns:
the distance between this `Point2D` and a specified point.

distance

`public double distance(Point2D pt)`
Returns the distance from this `Point2D` to a specified `Point2D`.

Parameters:
`pt` - the specified `Point2D`
Returns:
the distance between this `Point2D` and the specified `Point2D`.

clone

`public Object clone()`
Creates a new object of the same class and with the same contents as this object.

Overrides:
`clone` in class `Object`
Returns:
a clone of this instance.
Throws:
`OutOfMemoryError` - if there is not enough memory.
Since:
1.2
`Cloneable`

hashCode

`public int hashCode()`
Returns the hashcode for this `Point2D`.

Overrides:
`hashCode` in class `Object`
Returns:
a hash code for this `Point2D`.
`Object.equals(java.lang.Object)`, `Hashtable`

equals

`public boolean equals(Object obj)`
Determines whether or not two points are equal. Two instances of `Point2D` are equal if the values of their `x` and `y` member fields, representing their position in the coordinate space, are the same.

Overrides:
`equals` in class `Object`
Parameters:
`obj` - an object to be compared with this `Point2D`
Returns:
`true` if the object to be compared is an instance of `Point2D` and has the same values; `false` otherwise.
Since:
1.2
`Object.hashCode()`, `Hashtable`