Class OBBFactory


  • public class OBBFactory
    extends BVFactoryOBB
    factory for computing tight fitting Oriented Bounding Boxes.
    • Constructor Detail

      • OBBFactory

        public OBBFactory​(long cPtr,
                          boolean cMemoryOwn)
      • OBBFactory

        public OBBFactory​(OBBFactory.FitMethod method)
        Constructor.
        Parameters:
        method - [in] (optional) the method to use. Default is the DITO14 method.
      • OBBFactory

        public OBBFactory()
        Constructor.
    • Method Detail

      • getCPtr

        public static long getCPtr​(OBBFactory obj)
      • makeBV

        public OBB makeBV​(TriMesh geom)
        &)
        Overrides:
        makeBV in class BVFactoryOBB
        Parameters:
        geom - [in/out] the mesh to create bounding volume for.
        Returns:
        the bounding volume.
      • makeBV

        public OBB makeBV​(GeometryData geom)
        &)
        Overrides:
        makeBV in class BVFactoryOBB
        Parameters:
        geom - [in/out] the geometry to create bounding volume for.
        Returns:
        the bounding volume.
      • makeBV

        public OBB makeBV​(Primitive geom)
        &)
        Overrides:
        makeBV in class BVFactoryOBB
        Parameters:
        geom - [in/out] the primitive to create bounding volume for.
        Returns:
        the bounding volume.
      • makeDITO

        public OBB makeDITO​(TriMesh mesh)
      • makeBV

        public OBB makeBV​(Shell geom)
        &)
        Overrides:
        makeBV in class BVFactoryOBB
        Parameters:
        geom - [in/out] the shell to create bounding volume for.
        Returns:
        the bounding volume.
      • makePCA

        public OBB makePCA​(TriMesh mesh)
        computes covariance over vertices in mesh and calculates the
        eigen vectors of the covariance and use this as axes in the bounding box
        Parameters:
        mesh - [in] the triangle mesh to create oriented bounding box for.
        Returns:
        a tight fitting bounding box
      • makePCAHull

        public OBB makePCAHull​(TriMesh mesh)
        computes covariance over the vertices of the convex hull
        of the mesh and calculates the
        eigen vectors of the covariance and use this as axes in the bounding box
        Parameters:
        mesh - [in] the triangle mesh to create oriented bounding box for.
        Returns:
        a tight fitting bounding box