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 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.
    double getX()
    The x coordinate.
    double getY()
    The y coordinate.
    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 inherited from 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
    • add

      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:
      the point with added coordinates
      Since:
      JavaFX 8.0
    • add

      public Point3D add​(Point3D point)
      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:
      the point with added coordinates
      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