# Class Point3D

java.lang.Object
javafx.geometry.Point3D
All Implemented Interfaces:
`Interpolatable<Point3D>`

public class Point3D extends Object implements Interpolatable<Point3D>
A 3D geometric point that usually represents the x, y, z coordinates. It can also represent a relative magnitude vector's x, y, z magnitudes.
Since:
JavaFX 2.0
• ## Field Summary

Fields
Modifier and Type
Field
Description
`static final Point3D`
`ZERO`
Point or vector with all three coordinates set to 0.
• ## Constructor Summary

Constructors
Constructor
Description
```Point3D(double x, double y, double z)```
Creates a new instance of `Point3D`.
• ## Method Summary

Modifier and Type
Method
Description
`Point3D`
```add(double x, double y, double z)```
Returns a point with the specified coordinates added to the coordinates of this point.
`Point3D`
`add(Point3D point)`
Returns a point with the coordinates of the specified point added to the coordinates of this point.
`double`
```angle(double x, double y, double z)```
Computes the angle (in degrees) between the vector represented by this point and the specified vector.
`double`
`angle(Point3D point)`
Computes the angle (in degrees) between the vector represented by this point and the vector represented by the specified point.
`double`
```angle(Point3D p1, Point3D p2)```
Computes the angle (in degrees) between the three points with this point as a vertex.
`Point3D`
```crossProduct(double x, double y, double z)```
Computes cross product of the vector represented by this instance and the specified vector.
`Point3D`
`crossProduct(Point3D vector)`
Computes cross product of the vector represented by this instance and the specified vector.
`double`
```distance(double x1, double y1, double z1)```
Computes the distance between this point and point `(x1, y1, z1)`.
`double`
`distance(Point3D point)`
Computes the distance between this point and the specified `point`.
`double`
```dotProduct(double x, double y, double z)```
Computes dot (scalar) product of the vector represented by this instance and the specified vector.
`double`
`dotProduct(Point3D vector)`
Computes dot (scalar) product of the vector represented by this instance and the specified vector.
`boolean`
`equals(Object obj)`
Returns a hash code value for the point.
`final double`
`getX()`
The x coordinate.
`final double`
`getY()`
The y coordinate.
`final double`
`getZ()`
The z coordinate.
`int`
`hashCode()`
Returns a hash code for this `Point3D` object.
`Point3D`
```interpolate(Point3D endValue, double t)```
The function calculates an interpolated value along the fraction `t` between `0.0` and `1.0`.
`double`
`magnitude()`
Computes magnitude (length) of the relative magnitude vector represented by this instance.
`Point3D`
```midpoint(double x, double y, double z)```
Returns a point which lies in the middle between this point and the specified coordinates.
`Point3D`
`midpoint(Point3D point)`
Returns a point which lies in the middle between this point and the specified point.
`Point3D`
`multiply(double factor)`
Returns a point with the coordinates of this point multiplied by the specified factor
`Point3D`
`normalize()`
Normalizes the relative magnitude vector represented by this instance.
`Point3D`
```subtract(double x, double y, double z)```
Returns a point with the specified coordinates subtracted from the coordinates of this point.
`Point3D`
`subtract(Point3D point)`
Returns a point with the coordinates of the specified point subtracted from the coordinates of this point.
`String`
`toString()`
Returns a string representation of this `Point3D`.

### Methods declared in class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`
• ## Field Details

• ### ZERO

public static final Point3D ZERO
Point or vector with all three coordinates set to 0.
• ## Constructor Details

• ### Point3D

public Point3D(double x, double y, double z)
Creates a new instance of `Point3D`.
Parameters:
`x` - The X coordinate of the `Point3D`
`y` - The Y coordinate of the `Point3D`
`z` - The Z coordinate of the `Point3D`
• ## Method Details

• ### getX

public final double getX()
The x coordinate.
Returns:
the x coordinate
• ### getY

public final double getY()
The y coordinate.
Returns:
the y coordinate
• ### getZ

public final double getZ()
The z coordinate.
Returns:
the z coordinate
• ### distance

public double distance(double x1, double y1, double z1)
Computes the distance between this point and point `(x1, y1, z1)`.
Parameters:
`x1` - the x coordinate of other point
`y1` - the y coordinate of other point
`z1` - the z coordinate of other point
Returns:
the distance between this point and point `(x1, y1, z1)`.
• ### distance

public double distance(Point3D point)
Computes the distance between this point and the specified `point`.
Parameters:
`point` - the other point
Returns:
the distance between this point and the specified `point`.
Throws:
`NullPointerException` - if the specified `point` is null

public Point3D add(double x, double y, double z)
Returns a point with the specified coordinates added to the coordinates of this point.
Parameters:
`x` - the X coordinate addition
`y` - the Y coordinate addition
`z` - the Z coordinate addition
Returns:
Since:
JavaFX 8.0

Returns a point with the coordinates of the specified point added to the coordinates of this point.
Parameters:
`point` - the point whose coordinates are to be added
Returns:
Throws:
`NullPointerException` - if the specified `point` is null
Since:
JavaFX 8.0
• ### subtract

public Point3D subtract(double x, double y, double z)
Returns a point with the specified coordinates subtracted from the coordinates of this point.
Parameters:
`x` - the X coordinate subtraction
`y` - the Y coordinate subtraction
`z` - the Z coordinate subtraction
Returns:
the point with subtracted coordinates
Since:
JavaFX 8.0
• ### subtract

public Point3D subtract(Point3D point)
Returns a point with the coordinates of the specified point subtracted from the coordinates of this point.
Parameters:
`point` - the point whose coordinates are to be subtracted
Returns:
the point with subtracted coordinates
Throws:
`NullPointerException` - if the specified `point` is null
Since:
JavaFX 8.0
• ### multiply

public Point3D multiply(double factor)
Returns a point with the coordinates of this point multiplied by the specified factor
Parameters:
`factor` - the factor multiplying the coordinates
Returns:
the point with multiplied coordinates
Since:
JavaFX 8.0
• ### normalize

public Point3D normalize()
Normalizes the relative magnitude vector represented by this instance. Returns a vector with the same direction and magnitude equal to 1. If this is a zero vector, a zero vector is returned.
Returns:
the normalized vector represented by a `Point3D` instance
Since:
JavaFX 8.0
• ### midpoint

public Point3D midpoint(double x, double y, double z)
Returns a point which lies in the middle between this point and the specified coordinates.
Parameters:
`x` - the X coordinate of the second endpoint
`y` - the Y coordinate of the second endpoint
`z` - the Z coordinate of the second endpoint
Returns:
the point in the middle
Since:
JavaFX 8.0
• ### midpoint

public Point3D midpoint(Point3D point)
Returns a point which lies in the middle between this point and the specified point.
Parameters:
`point` - the other endpoint
Returns:
the point in the middle
Throws:
`NullPointerException` - if the specified `point` is null
Since:
JavaFX 8.0
• ### angle

public double angle(double x, double y, double z)
Computes the angle (in degrees) between the vector represented by this point and the specified vector.
Parameters:
`x` - the X magnitude of the other vector
`y` - the Y magnitude of the other vector
`z` - the Z magnitude of the other vector
Returns:
the angle between the two vectors measured in degrees
Since:
JavaFX 8.0
• ### angle

public double angle(Point3D point)
Computes the angle (in degrees) between the vector represented by this point and the vector represented by the specified point.
Parameters:
`point` - the other vector
Returns:
the angle between the two vectors measured in degrees, `NaN` if any of the two vectors is a zero vector
Throws:
`NullPointerException` - if the specified `point` is null
Since:
JavaFX 8.0
• ### angle

public double angle(Point3D p1, Point3D p2)
Computes the angle (in degrees) between the three points with this point as a vertex.
Parameters:
`p1` - one point
`p2` - other point
Returns:
angle between the vectors (this, p1) and (this, p2) measured in degrees, `NaN` if the three points are not different from one another
Throws:
`NullPointerException` - if the `p1` or `p2` is null
Since:
JavaFX 8.0
• ### magnitude

public double magnitude()
Computes magnitude (length) of the relative magnitude vector represented by this instance.
Returns:
magnitude of the vector
Since:
JavaFX 8.0
• ### dotProduct

public double dotProduct(double x, double y, double z)
Computes dot (scalar) product of the vector represented by this instance and the specified vector.
Parameters:
`x` - the X magnitude of the other vector
`y` - the Y magnitude of the other vector
`z` - the Z magnitude of the other vector
Returns:
the dot product of the two vectors
Since:
JavaFX 8.0
• ### dotProduct

public double dotProduct(Point3D vector)
Computes dot (scalar) product of the vector represented by this instance and the specified vector.
Parameters:
`vector` - the other vector
Returns:
the dot product of the two vectors
Throws:
`NullPointerException` - if the specified `vector` is null
Since:
JavaFX 8.0
• ### crossProduct

public Point3D crossProduct(double x, double y, double z)
Computes cross product of the vector represented by this instance and the specified vector.
Parameters:
`x` - the X magnitude of the other vector
`y` - the Y magnitude of the other vector
`z` - the Z magnitude of the other vector
Returns:
the cross product of the two vectors
Since:
JavaFX 8.0
• ### crossProduct

public Point3D crossProduct(Point3D vector)
Computes cross product of the vector represented by this instance and the specified vector.
Parameters:
`vector` - the other vector
Returns:
the cross product of the two vectors
Throws:
`NullPointerException` - if the specified `vector` is null
Since:
JavaFX 8.0
• ### interpolate

public Point3D interpolate(Point3D endValue, double t)
The function calculates an interpolated value along the fraction `t` between `0.0` and `1.0`. When `t` = 1.0, `endVal` is returned.
Specified by:
`interpolate` in interface `Interpolatable<Point3D>`
Parameters:
`endValue` - target value
`t` - fraction between `0.0` and `1.0`
Returns:
interpolated value
Since:
13
• ### equals

public boolean equals(Object obj)
Returns a hash code value for the point.
Overrides:
`equals` in class `Object`
Returns:
a hash code value for the point.
• ### hashCode

public int hashCode()
Returns a hash code for this `Point3D` object.
Overrides:
`hashCode` in class `Object`
Returns:
a hash code for this `Point3D` object.
• ### toString

public String toString()
Returns a string representation of this `Point3D`. This method is intended to be used only for informational purposes. The content and format of the returned string might vary between implementations. The returned string might be empty but cannot be `null`.
Overrides:
`toString` in class `Object`