Interface PlaneSubset

    • Method Detail

      • toConvex

        java.util.List<PlaneConvexSubset> toConvex()
        Convert this instance into a list of convex child subsets representing the same region. Implementations are not required to return an optimal convex subdivision of the current instance. They are free to return whatever subdivision is readily available.
        Specified by:
        toConvex in interface HyperplaneSubset<Vector3D>
        Returns:
        a list of hyperplane convex subsets representing the same subspace region as this instance
      • toTriangles

        java.util.List<Triangle3D> toTriangles()
        Return a list of triangles representing the same subset region as this instance. An IllegalStateException is thrown if the subset has infinite size and therefore cannot be converted to triangles. If the subset has zero size (is empty), an empty list is returned.
        Returns:
        a list of triangles representing the same subset region as this instance
        Throws:
        java.lang.IllegalStateException - if the subset has infinite size and therefore cannot be converted to triangles
      • getBounds

        Bounds3D getBounds()
        Get a Bounds3D object defining an axis-aligned bounding box containing all vertices for this subset. Null is returned if the subset is infinite or does not contain any vertices.
        Returns:
        the bounding box for this instance or null if no valid bounds could be determined
      • getEmbedded

        PlaneSubset.Embedded getEmbedded()
        Return an object containing the plane subset as an embedded 2D subspace region.
        Returns:
        an object containing the plane subset as an embedded 2D subspace region
      • intersection

        Vector3D intersection​(Line3D line)
        Get the unique intersection of this plane subset with the given line. Null is returned if no unique intersection point exists (ie, the line and plane are parallel or coincident) or the line does not intersect the plane subset.
        Parameters:
        line - line to intersect with this plane subset
        Returns:
        the unique intersection point between the line and this plane subset or null if no such point exists.
        See Also:
        Plane.intersection(Line3D)
      • intersection

        Vector3D intersection​(LineConvexSubset3D lineSubset)
        Get the unique intersection of this plane subset with the given line subset. Null is returned if the underlying line and plane do not have a unique intersection point (ie, they are parallel or coincident) or the intersection point is unique but is not contained in both the line subset and plane subset.
        Parameters:
        lineSubset - line subset to intersect with
        Returns:
        the unique intersection point between this plane subset and the argument or null if no such point exists.
        See Also:
        Plane.intersection(Line3D)