Interface SubHyperplane<S extends Space>

 Type Parameters:
S
 Type of the embedding space.
 All Known Implementing Classes:
AbstractSubHyperplane
,SubCircle
,SubLimitAngle
,SubLine
,SubOrientedPoint
,SubPlane
public interface SubHyperplane<S extends Space>
This interface represents the remaining parts of an hyperplane after other parts have been chopped off.subhyperplanes are obtained when parts of an
hyperplane
are chopped off by other hyperplanes that intersect it. The remaining part is a convex region. Such objects appear inBSP trees
as the intersection of a cut hyperplane with the convex region which it splits, the chopping hyperplanes are the cut hyperplanes closer to the tree root.Note that this interface is not intended to be implemented by Hipparchus users, it is only intended to be implemented within the library itself. New methods may be added even for minor versions, which breaks compatibility for external implementations.


Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
SubHyperplane.SplitSubHyperplane<U extends Space>
Class holding the results of thesplit
method.

Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description SubHyperplane<S>
copySelf()
Copy the instance.Hyperplane<S>
getHyperplane()
Get the underlying hyperplane.double
getSize()
Get the size of the instance.boolean
isEmpty()
Check if the instance is empty.SubHyperplane<S>
reunite(SubHyperplane<S> other)
Compute the union of the instance and another subhyperplane.SubHyperplane.SplitSubHyperplane<S>
split(Hyperplane<S> hyperplane)
Split the instance in two parts by an hyperplane.



Method Detail

copySelf
SubHyperplane<S> copySelf()
Copy the instance.The instance created is completely independent of the original one. A deep copy is used, none of the underlying objects are shared (except for the nodes attributes and immutable objects).
 Returns:
 a new subhyperplane, copy of the instance

getHyperplane
Hyperplane<S> getHyperplane()
Get the underlying hyperplane. Returns:
 underlying hyperplane

isEmpty
boolean isEmpty()
Check if the instance is empty. Returns:
 true if the instance is empty

getSize
double getSize()
Get the size of the instance. Returns:
 the size of the instance (this is a length in 1D, an area in 2D, a volume in 3D ...)

split
SubHyperplane.SplitSubHyperplane<S> split(Hyperplane<S> hyperplane)
Split the instance in two parts by an hyperplane. Parameters:
hyperplane
 splitting hyperplane Returns:
 an object containing both the part of the instance on the plus side of the hyperplane and the part of the instance on the minus side of the hyperplane

reunite
SubHyperplane<S> reunite(SubHyperplane<S> other)
Compute the union of the instance and another subhyperplane. Parameters:
other
 other subhyperplane to union (must be in the same hyperplane as the instance) Returns:
 a new subhyperplane, union of the instance and other

