Class AbstractPlaneSubset
- java.lang.Object
-
- org.apache.commons.geometry.euclidean.threed.AbstractPlaneSubset
-
- All Implemented Interfaces:
HyperplaneSubset<Vector3D>
,Splittable<Vector3D,HyperplaneSubset<Vector3D>>
,Sized
,PlaneSubset
- Direct Known Subclasses:
AbstractConvexPolygon3D
,AbstractEmbeddedRegionPlaneSubset
abstract class AbstractPlaneSubset extends java.lang.Object implements PlaneSubset
Abstract base class forPlaneSubset
implementations.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.commons.geometry.euclidean.threed.PlaneSubset
PlaneSubset.Embedded
-
-
Constructor Summary
Constructors Constructor Description AbstractPlaneSubset()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Plane
getHyperplane()
Get the hyperplane containing this instance.Vector3D
intersection(Line3D line)
Get the unique intersection of this plane subset with the given line.Vector3D
intersection(LineConvexSubset3D lineSubset)
Get the unique intersection of this plane subset with the given line subset.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.commons.geometry.core.partitioning.HyperplaneSubset
classify, closest, contains, getCentroid, isEmpty, isFull, transform
-
Methods inherited from interface org.apache.commons.geometry.euclidean.threed.PlaneSubset
getBounds, getEmbedded, getPlane, toConvex, toTriangles
-
Methods inherited from interface org.apache.commons.geometry.core.Sized
getSize, isFinite, isInfinite
-
Methods inherited from interface org.apache.commons.geometry.core.partitioning.Splittable
split
-
-
-
-
Method Detail
-
getHyperplane
public Plane getHyperplane()
Get the hyperplane containing this instance.- Specified by:
getHyperplane
in interfaceHyperplaneSubset<Vector3D>
- Specified by:
getHyperplane
in interfacePlaneSubset
- Returns:
- the hyperplane containing this instance
-
intersection
public 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.- Specified by:
intersection
in interfacePlaneSubset
- 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
public 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.- Specified by:
intersection
in interfacePlaneSubset
- 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)
-
-