Class BaseXYZSolid

    • Field Detail

      • xUnitVector

        protected static final Vector xUnitVector
        Unit vector in x
      • yUnitVector

        protected static final Vector yUnitVector
        Unit vector in y
      • zUnitVector

        protected static final Vector zUnitVector
        Unit vector in z
      • xVerticalPlane

        protected static final Plane xVerticalPlane
        Vertical plane normal to x unit vector passing through origin
      • yVerticalPlane

        protected static final Plane yVerticalPlane
        Vertical plane normal to y unit vector passing through origin
      • EMPTY_POINTS

        protected static final GeoPoint[] EMPTY_POINTS
        Empty point vector
      • ALL_INSIDE

        protected static final int ALL_INSIDE
        All edgepoints inside shape
        See Also:
        Constant Field Values
      • SOME_INSIDE

        protected static final int SOME_INSIDE
        Some edgepoints inside shape
        See Also:
        Constant Field Values
      • NONE_INSIDE

        protected static final int NONE_INSIDE
        No edgepoints inside shape
        See Also:
        Constant Field Values
      • NO_EDGEPOINTS

        protected static final int NO_EDGEPOINTS
        No edgepoints at all (means a shape that is the whole world)
        See Also:
        Constant Field Values
    • Constructor Detail

      • BaseXYZSolid

        public BaseXYZSolid​(PlanetModel planetModel)
        Base solid constructor.
        Parameters:
        planetModel - is the planet model.
    • Method Detail

      • glueTogether

        protected static GeoPoint[] glueTogether​(GeoPoint[]... pointArrays)
        Construct a single array from a number of individual arrays.
        Parameters:
        pointArrays - is the array of point arrays.
        Returns:
        the single unified array.
      • isWithin

        public boolean isWithin​(Vector point)
        Description copied from interface: Membership
        Check if a point is within this shape.
        Specified by:
        isWithin in interface Membership
        Parameters:
        point - is the point to check.
        Returns:
        true if the point is within this shape
      • isWithin

        public abstract 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
      • isShapeInsideArea

        protected int isShapeInsideArea​(GeoShape path)
        Determine the relationship between this area and the provided shape's edgepoints.
        Parameters:
        path - is the shape.
        Returns:
        the relationship.
      • isAreaInsideShape

        protected int isAreaInsideShape​(GeoShape path)
        Determine the relationship between a shape and this area's edgepoints.
        Parameters:
        path - is the shape.
        Returns:
        the relationship.
      • getEdgePoints

        protected abstract GeoPoint[] getEdgePoints()
        Get the edge points for this shape.
        Returns:
        the edge points.