Region.
| Modifier and Type | Class and Description |
|---|---|
| private class | RegionFactory.
BSP tree leaf merger computing difference of two regions. |
| private class | RegionFactory.
BSP tree leaf merger computing intersection of two regions. |
| private class | RegionFactory.
Visitor removing internal nodes attributes. |
| private class | RegionFactory.
BSP tree leaf merger computing union of two regions. |
| private class | RegionFactory.
Handler replacing nodes with vanishing cuts with leaf nodes. |
| private class | RegionFactory.
BSP tree leaf merger computing symmetric difference (exclusive or) of two regions. |
| Modifier and Type | Field and Description |
|---|---|
| private final RegionFactory | nodeCleaner
Visitor removing internal nodes attributes. |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public Region | Returns: a new convex region, or null if the collection is emptycollection of bounding hyperplanes hyperplanes)Build a convex region from a collection of bounding hyperplanes. |
| public Region | Returns: a new region, result ofregion1 minus region2first region (will be unusable after the operation as
parts of it will be reused in the new region) region1, final Region<S> second region (will be unusable after the operation as
parts of it will be reused in the new region) region2)Compute the difference of two regions. |
| public Region | Returns: a new region, complement of the specified oneregion to complement, it will not modified, a new
region independent region will be built region)Get the complement of the region (exchanged interior/exterior). |
| public Region | Returns: a new region, result ofregion1 intersection region2first region (will be unusable after the operation as
parts of it will be reused in the new region) region1, final Region<S> second region (will be unusable after the operation as
parts of it will be reused in the new region) region2)Compute the intersection of two regions. |
| private BSPTree | Returns: new tree, complement of the nodecurrent node of the original tree node)Recursively build the complement of a BSP tree. |
| private BSPTree | Returns: new tree, complement of the nodecurrent node of the original tree node, final Map<BSPTree<S>, BSPTree<S>> transformed nodes map map)Recursively build the complement of a BSP tree. |
| public Region | Returns: a new region, result ofregion1 union region2first region (will be unusable after the operation as
parts of it will be reused in the new region) region1, final Region<S> second region (will be unusable after the operation as
parts of it will be reused in the new region) region2)Compute the union of two regions. |
| public Region | Returns: a new region, result ofregion1 xor region2first region (will be unusable after the operation as
parts of it will be reused in the new region) region1, final Region<S> second region (will be unusable after the operation as
parts of it will be reused in the new region) region2)Compute the symmetric difference (exclusive or) of two regions. |
| nodeCleaner | back to summary |
|---|---|
| private final RegionFactory<S>. Visitor removing internal nodes attributes. | |
| RegionFactory | back to summary |
|---|---|
| public RegionFactory() Simple constructor. | |
| buildConvex | back to summary |
|---|---|
| public Region Build a convex region from a collection of bounding hyperplanes.
| |
| difference | back to summary |
|---|---|
| public Region Compute the difference of two regions.
| |
| getComplement | back to summary |
|---|---|
| public Region Get the complement of the region (exchanged interior/exterior). | |
| intersection | back to summary |
|---|---|
| public Region Compute the intersection of two regions.
| |
| recurseComplement | back to summary |
|---|---|
| private BSPTree Recursively build the complement of a BSP tree. | |
| recurseComplement | back to summary |
|---|---|
| private BSPTree Recursively build the complement of a BSP tree. | |
| union | back to summary |
|---|---|
| public Region Compute the union of two regions.
| |
| xor | back to summary |
|---|---|
| public Region Compute the symmetric difference (exclusive or) of two regions.
| |
| Modifier and Type | Field and Description |
|---|---|
| private final Region | region1
Region to subtract from. |
| private final Region | region2
Region to subtract. |
| Access | Constructor and Description |
|---|---|
| pack-priv | DifferenceMerger(final Region<S>
region to subtract from region1, final Region<S> region to subtract region2)Simple constructor. |
| Modifier and Type | Method and Description |
|---|---|
| public BSPTree | fixNode(final BSPTree<S>
node to fix node)Implements org. Fix a node with both vanished cut and children. |
| public BSPTree | merge(final BSPTree<S>
leaf node (its cut hyperplane is guaranteed to be
null) leaf, final BSPTree<S> tree node (its cut hyperplane may be null or not) tree, final BSPTree<S> parent tree to connect to (may be null) parentTree, final boolean if true and if parentTree is not null, the
resulting tree should be the plus child of its parent, ignored if
parentTree is null isPlusChild, final boolean if true, the leaf node comes from the
instance tree ( leafFromInstance)tree1) and the tree node comes from
the argument tree (tree2)Implements org. Merge a leaf node and a tree node. |
| region1 | back to summary |
|---|---|
| private final Region<S> region1 Region to subtract from. | |
| region2 | back to summary |
|---|---|
| private final Region<S> region2 Region to subtract. | |
| DifferenceMerger | back to summary |
|---|---|
| pack-priv DifferenceMerger(final Region<S> region1, final Region<S> region2) Simple constructor. | |
| fixNode | back to summary |
|---|---|
| public BSPTree Implements org. Doc from org. Fix a node with both vanished cut and children. | |
| merge | back to summary |
|---|---|
| public BSPTree Implements org. Doc from org. Merge a leaf node and a tree node. This method is called at the end of a recursive merging
resulting from a Since the final operation may be non-commutative, it is
important to know if the leaf node comes from the instance tree
( The
| |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public BSPTree | merge(final BSPTree<S>
leaf node (its cut hyperplane is guaranteed to be
null) leaf, final BSPTree<S> tree node (its cut hyperplane may be null or not) tree, final BSPTree<S> parent tree to connect to (may be null) parentTree, final boolean if true and if parentTree is not null, the
resulting tree should be the plus child of its parent, ignored if
parentTree is null isPlusChild, final boolean if true, the leaf node comes from the
instance tree ( leafFromInstance)tree1) and the tree node comes from
the argument tree (tree2)Implements org. Merge a leaf node and a tree node. |
| IntersectionMerger | back to summary |
|---|---|
| private IntersectionMerger() | |
| merge | back to summary |
|---|---|
| public BSPTree Implements org. Doc from org. Merge a leaf node and a tree node. This method is called at the end of a recursive merging
resulting from a Since the final operation may be non-commutative, it is
important to know if the leaf node comes from the instance tree
( The
| |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public void | visitInternalNode(final BSPTree<S>
BSP node guaranteed to have a non null cut sub-hyperplane node)Implements org. Visit a BSP tree node node having a non-null sub-hyperplane. |
| public void | visitLeafNode(final BSPTree<S>
leaf BSP node having a null sub-hyperplane node)Implements org. Visit a leaf BSP tree node node having a null sub-hyperplane. |
| public BSPTreeVisitor. | visitOrder(final BSPTree<S>
BSP node guaranteed to have a non null cut sub-hyperplane node)Implements org. Determine the visit order for this node. |
| NodesCleaner | back to summary |
|---|---|
| private NodesCleaner() | |
| visitInternalNode | back to summary |
|---|---|
| public void visitInternalNode(final BSPTree<S> node) Implements org. Doc from org. Visit a BSP tree node node having a non-null sub-hyperplane. It is guaranteed that this method will be called after
| |
| visitLeafNode | back to summary |
|---|---|
| public void visitLeafNode(final BSPTree<S> node) Implements org. Doc from org. Visit a leaf BSP tree node node having a null sub-hyperplane.
| |
| visitOrder | back to summary |
|---|---|
| public BSPTreeVisitor. Implements org. Doc from org. 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
| |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public BSPTree | merge(final BSPTree<S>
leaf node (its cut hyperplane is guaranteed to be
null) leaf, final BSPTree<S> tree node (its cut hyperplane may be null or not) tree, final BSPTree<S> parent tree to connect to (may be null) parentTree, final boolean if true and if parentTree is not null, the
resulting tree should be the plus child of its parent, ignored if
parentTree is null isPlusChild, final boolean if true, the leaf node comes from the
instance tree ( leafFromInstance)tree1) and the tree node comes from
the argument tree (tree2)Implements org. Merge a leaf node and a tree node. |
| UnionMerger | back to summary |
|---|---|
| private UnionMerger() | |
| merge | back to summary |
|---|---|
| public BSPTree Implements org. Doc from org. Merge a leaf node and a tree node. This method is called at the end of a recursive merging
resulting from a Since the final operation may be non-commutative, it is
important to know if the leaf node comes from the instance tree
( The
| |
| Modifier and Type | Field and Description |
|---|---|
| private final boolean | inside
Inside/outside indocator to use for ambiguous nodes. |
| Access | Constructor and Description |
|---|---|
| pack-priv | VanishingToLeaf(final boolean
inside/outside indicator to use for ambiguous nodes inside)Simple constructor. |
| Modifier and Type | Method and Description |
|---|---|
| public BSPTree | fixNode(final BSPTree<S>
node to fix node)Implements org. Fix a node with both vanished cut and children. |
| inside | back to summary |
|---|---|
| private final boolean inside Inside/outside indocator to use for ambiguous nodes. | |
| VanishingToLeaf | back to summary |
|---|---|
| pack-priv VanishingToLeaf(final boolean inside) Simple constructor.
| |
| fixNode | back to summary |
|---|---|
| public BSPTree Implements org. Doc from org. Fix a node with both vanished cut and children. | |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public BSPTree | merge(final BSPTree<S>
leaf node (its cut hyperplane is guaranteed to be
null) leaf, final BSPTree<S> tree node (its cut hyperplane may be null or not) tree, final BSPTree<S> parent tree to connect to (may be null) parentTree, final boolean if true and if parentTree is not null, the
resulting tree should be the plus child of its parent, ignored if
parentTree is null isPlusChild, final boolean if true, the leaf node comes from the
instance tree ( leafFromInstance)tree1) and the tree node comes from
the argument tree (tree2)Implements org. Merge a leaf node and a tree node. |
| XorMerger | back to summary |
|---|---|
| private XorMerger() | |
| merge | back to summary |
|---|---|
| public BSPTree Implements org. Doc from org. Merge a leaf node and a tree node. This method is called at the end of a recursive merging
resulting from a Since the final operation may be non-commutative, it is
important to know if the leaf node comes from the instance tree
( The
| |