Class SidedPlane

All Implemented Interfaces:
Membership

public class SidedPlane extends Plane implements Membership
Combination of a plane, and a sign value indicating what evaluation values are on the correct side of the plane.
WARNING: This API is experimental and might change in incompatible ways in the next release.
  • Field Details

    • sigNum

      public final double sigNum
      The sign value for evaluation of a point on the correct side of the plane
  • Constructor Details

    • SidedPlane

      public SidedPlane(SidedPlane sidedPlane)
      Construct a SidedPlane identical to an existing one, but reversed.
      Parameters:
      sidedPlane - is the existing plane.
    • SidedPlane

      public SidedPlane(double pX, double pY, double pZ, Vector A, Vector B)
      Construct a sided plane from a pair of vectors describing points, and including origin, plus a point p which describes the side.
      Parameters:
      pX - point X to evaluate
      pY - point Y to evaluate
      pZ - point Z to evaluate
      A - is the first in-plane point
      B - is the second in-plane point
    • SidedPlane

      public SidedPlane(Vector p, Vector A, Vector B)
      Construct a sided plane from a pair of vectors describing points, and including origin, plus a point p which describes the side.
      Parameters:
      p - point to evaluate
      A - is the first in-plane point
      B - is the second in-plane point
    • SidedPlane

      public SidedPlane(Vector A, Vector B)
      Construct a sided plane from a pair of vectors describing points, and including origin. Choose the side arbitrarily.
      Parameters:
      A - is the first in-plane point
      B - is the second in-plane point
    • SidedPlane

      public SidedPlane(Vector p, Vector A, double BX, double BY, double BZ)
      Construct a sided plane from a pair of vectors describing points, and including origin, plus a point p which describes the side.
      Parameters:
      p - point to evaluate
      A - is the first in-plane point
      BX - is the X value of the second in-plane point
      BY - is the Y value of the second in-plane point
      BZ - is the Z value of the second in-plane point
    • SidedPlane

      public SidedPlane(Vector p, boolean onSide, Vector A, Vector B)
      Construct a sided plane from a pair of vectors describing points, and including origin, plus a point p which describes the side.
      Parameters:
      p - point to evaluate
      onSide - is true if the point is on the correct side of the plane, false otherwise.
      A - is the first in-plane point
      B - is the second in-plane point
    • SidedPlane

      public SidedPlane(Vector p, PlanetModel planetModel, double sinLat)
      Construct a sided plane from a point and a Z coordinate.
      Parameters:
      p - point to evaluate.
      planetModel - is the planet model.
      sinLat - is the sin of the latitude of the plane.
    • SidedPlane

      public SidedPlane(Vector p, double x, double y)
      Construct a sided vertical plane from a point and specified x and y coordinates.
      Parameters:
      p - point to evaluate.
      x - is the specified x.
      y - is the specified y.
    • SidedPlane

      public SidedPlane(Vector p, double vX, double vY, double vZ, double D)
      Construct a sided plane with a normal vector and offset.
      Parameters:
      p - point to evaluate.
      vX - is the normal vector X.
      vY - is the normal vector Y.
      vZ - is the normal vector Z.
      D - is the origin offset for the plan.
    • SidedPlane

      public SidedPlane(Vector p, Vector v, double D)
      Construct a sided plane with a normal vector and offset.
      Parameters:
      p - point to evaluate.
      v - is the normal vector.
      D - is the origin offset for the plan.
    • SidedPlane

      public SidedPlane(double pX, double pY, double pZ, Vector v, double D)
      Construct a sided plane with a normal vector and offset.
      Parameters:
      pX - X coord of point to evaluate.
      pY - Y coord of point to evaluate.
      pZ - Z coord of point to evaluate.
      v - is the normal vector.
      D - is the origin offset for the plan.
  • Method Details

    • constructNormalizedPerpendicularSidedPlane

      public static SidedPlane constructNormalizedPerpendicularSidedPlane(Vector insidePoint, Vector normalVector, Vector point1, Vector point2)
      Construct a sided plane from two points and a third normal vector.
    • constructNormalizedThreePointSidedPlane

      public static SidedPlane constructNormalizedThreePointSidedPlane(Vector insidePoint, Vector point1, Vector point2, Vector point3)
      Construct a sided plane from three points.
    • isWithin

      public boolean isWithin(double x, double y, double z)
      Description copied from interface: Membership
      Check if a point is within this shape.
      Specified by:
      isWithin in interface Membership
      Parameters:
      x - is x coordinate of point to check.
      y - is y coordinate of point to check.
      z - is z coordinate of point to check.
      Returns:
      true if the point is within this shape
    • strictlyWithin

      public boolean strictlyWithin(Vector v)
      Check whether a point is strictly within a plane.
      Parameters:
      v - is the point.
      Returns:
      true if within.
    • strictlyWithin

      public boolean strictlyWithin(double x, double y, double z)
      Check whether a point is strictly within a plane.
      Parameters:
      x - is the point x value.
      y - is the point y value.
      z - is the point z value.
      Returns:
      true if within.
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Plane
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Plane
    • toString

      public String toString()
      Overrides:
      toString in class Plane