Class PolyhedronsSet.FacetsContributionVisitor
java.lang.Object
org.apache.commons.math3.geometry.euclidean.threed.PolyhedronsSet.FacetsContributionVisitor
- All Implemented Interfaces:
BSPTreeVisitor<Euclidean3D>
- Enclosing class:
PolyhedronsSet
private class PolyhedronsSet.FacetsContributionVisitor
extends Object
implements BSPTreeVisitor<Euclidean3D>
Visitor computing geometrical properties.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.commons.math3.geometry.partitioning.BSPTreeVisitor
BSPTreeVisitor.Order
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
addContribution
(SubHyperplane<Euclidean3D> facet, boolean reversed) Add he contribution of a boundary facet.void
visitInternalNode
(BSPTree<Euclidean3D> node) Visit a BSP tree node node having a non-null sub-hyperplane.void
visitLeafNode
(BSPTree<Euclidean3D> node) Visit a leaf BSP tree node node having a null sub-hyperplane.visitOrder
(BSPTree<Euclidean3D> node) Determine the visit order for this node.
-
Constructor Details
-
FacetsContributionVisitor
FacetsContributionVisitor()Simple constructor.
-
-
Method Details
-
visitOrder
Determine the visit order for this node.Before attempting to visit an internal node, this method is called to determine the desired ordering of the visit. It is guaranteed that this method will be called before
visitInternalNode
for a given node, it will be called exactly once for each internal node.- Specified by:
visitOrder
in interfaceBSPTreeVisitor<Euclidean3D>
- Parameters:
node
- BSP node guaranteed to have a non null cut sub-hyperplane- Returns:
- desired visit order, must be one of
BSPTreeVisitor.Order.PLUS_MINUS_SUB
,BSPTreeVisitor.Order.PLUS_SUB_MINUS
,BSPTreeVisitor.Order.MINUS_PLUS_SUB
,BSPTreeVisitor.Order.MINUS_SUB_PLUS
,BSPTreeVisitor.Order.SUB_PLUS_MINUS
,BSPTreeVisitor.Order.SUB_MINUS_PLUS
-
visitInternalNode
Visit a BSP tree node node having a non-null sub-hyperplane.It is guaranteed that this method will be called after
visitOrder
has been called for a given node, it wil be called exactly once for each internal node.- Specified by:
visitInternalNode
in interfaceBSPTreeVisitor<Euclidean3D>
- Parameters:
node
- BSP node guaranteed to have a non null cut sub-hyperplane- See Also:
-
visitLeafNode
Visit a leaf BSP tree node node having a null sub-hyperplane.- Specified by:
visitLeafNode
in interfaceBSPTreeVisitor<Euclidean3D>
- Parameters:
node
- leaf BSP node having a null sub-hyperplane- See Also:
-
addContribution
Add he contribution of a boundary facet.- Parameters:
facet
- boundary facetreversed
- if true, the facet has the inside on its plus side
-