Package org.apache.commons.geometry.core.partitioning.bsp
package org.apache.commons.geometry.core.partitioning.bsp
This package contains classes related to Binary Space Partitioning (BSP) trees. BSP tree are data structures that allow arbitrary partitioning of spaces using hyperplanes.
-
ClassDescriptionAbstract class for Binary Space Partitioning (BSP) tree implementations.Abstract implementation of
BSPTree.Node
.Class for iterating through the nodes in a BSP subtree.Interface used to initialize newly created BSP subtrees, consisting of a single parent node and two child nodes.Class containing the basic algorithm for merging twoAbstractBSPTree
instances.AbstractPartitionedRegionBuilder<P extends Point<P>,N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> Class encapsulating logic for building regions by inserting boundaries into a BSP tree containing structural cuts, i.e.AbstractBSPTree
specialized for representing regions of space.AbstractRegionBSPTree.AbstractRegionNode<P extends Point<P>,N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> BSPTree.Node
implementation for use withAbstractRegionBSPTree
s.AbstractRegionBSPTree.BoundaryProjector<P extends Point<P>,N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> Class used to compute the point on the region's boundary that is closest to a target point.AbstractRegionBSPTree.Condenser<P extends Point<P>,N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> Internal class used to perform tree condense operations.AbstractRegionBSPTree.DifferenceOperator<P extends Point<P>,N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> Class for performing boolean difference operations on region trees.AbstractRegionBSPTree.IntersectionOperator<P extends Point<P>,N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> Class for performing boolean intersection operations on region trees.AbstractRegionBSPTree.RegionBoundaryIterator<P extends Point<P>,C extends HyperplaneConvexSubset<P>, N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> Class that iterates over the boundary hyperplane convex subsets from a set of region nodes.AbstractRegionBSPTree.RegionMergeOperator<P extends Point<P>,N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> Class containing the basic algorithm for merging region BSP trees.AbstractRegionBSPTree.RegionSizeProperties<P extends Point<P>>Class containing the primary size-related properties of a region.AbstractRegionBSPTree.UnionOperator<P extends Point<P>,N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> Class for performing boolean union operations on region trees.AbstractRegionBSPTree.XorOperator<P extends Point<P>,N extends AbstractRegionBSPTree.AbstractRegionNode<P, N>> Class for performing boolean symmetric difference (xor) operations on region trees.Interface for types that form the root of BSP subtrees.Interface for Binary Space Partitioning (BSP) trees.Enum specifying possible behaviors when a point used to locate a node falls directly on the cut of an internal node.Interface for Binary Space Partitioning (BSP) tree nodes.Internal class for creating simple string representations of BSP trees.Interface for visiting the nodes in aBSPTree
orBSPSubtree
.BSPTreeVisitor
base class that orders tree nodes so that nodes closest to the target point are visited first.BSPTreeVisitor
base class that orders tree nodes so that nodes farthest from the target point are traversed first.Enum used to specify the order in which visitors should visit the nodes in the tree.Enum representing the result of a BSP tree node visit operation.Abstract class forBSPTreeVisitor
implementations that base their visit ordering on a target point.RegionCutBoundary<P extends Point<P>>Class representing the portion of anAbstractRegionNode
's cut that lies on the boundary of the region.Enum describing the possible behaviors when cutting a region BSP tree node with a hyperplane to produce two new child nodes.