Class RegionFactory<S extends Space>

java.lang.Object
org.hipparchus.geometry.partitioning.RegionFactory<S>
Type Parameters:
S - Type of the space.

public class RegionFactory<S extends Space> extends Object
This class is a factory for Region.
  • Constructor Details

    • RegionFactory

      public RegionFactory()
      Simple constructor.
  • Method Details

    • buildConvex

      @SafeVarargs public final Region<S> buildConvex(Hyperplane<S>... hyperplanes)
      Build a convex region from a collection of bounding hyperplanes.
      Parameters:
      hyperplanes - collection of bounding hyperplanes
      Returns:
      a new convex region, or null if the collection is empty
    • union

      public Region<S> union(Region<S> region1, Region<S> region2)
      Compute the union of two regions.
      Parameters:
      region1 - first region (will be unusable after the operation as parts of it will be reused in the new region)
      region2 - second region (will be unusable after the operation as parts of it will be reused in the new region)
      Returns:
      a new region, result of region1 union region2
    • intersection

      public Region<S> intersection(Region<S> region1, Region<S> region2)
      Compute the intersection of two regions.
      Parameters:
      region1 - first region (will be unusable after the operation as parts of it will be reused in the new region)
      region2 - second region (will be unusable after the operation as parts of it will be reused in the new region)
      Returns:
      a new region, result of region1 intersection region2
    • xor

      public Region<S> xor(Region<S> region1, Region<S> region2)
      Compute the symmetric difference (exclusive or) of two regions.
      Parameters:
      region1 - first region (will be unusable after the operation as parts of it will be reused in the new region)
      region2 - second region (will be unusable after the operation as parts of it will be reused in the new region)
      Returns:
      a new region, result of region1 xor region2
    • difference

      public Region<S> difference(Region<S> region1, Region<S> region2)
      Compute the difference of two regions.
      Parameters:
      region1 - first region (will be unusable after the operation as parts of it will be reused in the new region)
      region2 - second region (will be unusable after the operation as parts of it will be reused in the new region)
      Returns:
      a new region, result of region1 minus region2
    • getComplement

      public Region<S> getComplement(Region<S> region)
      Get the complement of the region (exchanged interior/exterior).
      Parameters:
      region - region to complement, it will not modified, a new region independent region will be built
      Returns:
      a new region, complement of the specified one