org.apache.commons.math3.geometry.partitioning

## Class BoundarySizeVisitor<S extends Space>

- java.lang.Object
- - org.apache.commons.math3.geometry.partitioning.BoundarySizeVisitor<S>

- Type Parameters:
    `S` - Type of the space.
  All Implemented Interfaces:
    BSPTreeVisitor<S>

       class BoundarySizeVisitor<S extends Space>
      extends Object
      implements BSPTreeVisitor<S>

  Visitor computing the boundary size.
  Since:
    3.0
  Version:
    $Id: BoundarySizeVisitor.java 1416643 2012-12-03 19:37:14Z tn $

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.commons.math3.geometry.partitioning.BSPTreeVisitor

      `BSPTreeVisitor.Order`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private double` | `boundarySize` Size of the boundary.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BoundarySizeVisitor()` Simple constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `double` | `getSize()` Get the size of the boundary.
    `void` | `visitInternalNode(BSPTree<S> node)` Visit a BSP tree node node having a non-null sub-hyperplane.
    `void` | `visitLeafNode(BSPTree<S> node)` Visit a leaf BSP tree node node having a null sub-hyperplane.
    `BSPTreeVisitor.Order` | `visitOrder(BSPTree<S> node)` Determine the visit order for this node.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### boundarySize

          private double boundarySize

      Size of the boundary.

  - ### Constructor Detail

    - #### BoundarySizeVisitor

          public BoundarySizeVisitor()

      Simple constructor.

  - ### Method Detail

    - #### visitOrder

          public BSPTreeVisitor.Order visitOrder(BSPTree<S> node)

      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 interface `BSPTreeVisitor<S extends Space>`
      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

          public void visitInternalNode(BSPTree<S> node)

      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 interface `BSPTreeVisitor<S extends Space>`
      Parameters:
        `node` - BSP node guaranteed to have a non null cut sub-hyperplane
      See Also:
        `BSPTreeVisitor.visitLeafNode(org.apache.commons.math3.geometry.partitioning.BSPTree)`

    - #### visitLeafNode

          public void visitLeafNode(BSPTree<S> node)

      Visit a leaf BSP tree node node having a null sub-hyperplane.
      Specified by:
        `visitLeafNode` in interface `BSPTreeVisitor<S extends Space>`
      Parameters:
        `node` - leaf BSP node having a null sub-hyperplane
      See Also:
        `BSPTreeVisitor.visitInternalNode(org.apache.commons.math3.geometry.partitioning.BSPTree)`

    - #### getSize

          public double getSize()

      Get the size of the boundary.
      Returns:
        size of the boundary

Copyright (c) 2003-2013 Apache Software Foundation