#include <MRTeethMaskToDirectionVolume.h>
Classes | |
| struct | ProcessResult |
Public Types | |
| using | DirectionVolume = std::array<SimpleVolumeMinMax, 3> |
| See meshToDirectionVolume for details. | |
Public Member Functions | |
| MRVOXELS_API const HashMap< int, Box3i > & | getObjectBounds () const |
| Returns all the objects present in volume and corresponding bounding boxes. | |
| MRVOXELS_API Expected< ProcessResult > | convertObject (int id) const |
| Converts single object into direction volume. | |
| MRVOXELS_API Expected< ProcessResult > | convertAll () const |
| Converts all the objects into direction volume. | |
Static Public Member Functions | |
| static MRVOXELS_API Expected< TeethMaskToDirectionVolumeConvertor > | create (const VdbVolume &volume, const std::vector< int > &additionalIds={}) |
This class is an alternative to directly invoking meshToDirectionVolume for the mesh retrieved from the teeth mask. It is better because when a single mesh is created from mask, some neighboring teeth might fuse together, creating incorrect mask. This class invokes meshing for each teeth separately, thus eliminating this problem.
| using MR::TeethMaskToDirectionVolumeConvertor::DirectionVolume = std::array<SimpleVolumeMinMax, 3> |
See meshToDirectionVolume for details.
| MRVOXELS_API Expected< ProcessResult > MR::TeethMaskToDirectionVolumeConvertor::convertAll | ( | ) | const |
Converts all the objects into direction volume.
| MRVOXELS_API Expected< ProcessResult > MR::TeethMaskToDirectionVolumeConvertor::convertObject | ( | int | id | ) | const |
Converts single object into direction volume.
|
static |
Initialize class
| volume | Voxel mask |
| additionalIds | List of additional ids (besides teeth) to convert |
| MRVOXELS_API const HashMap< int, Box3i > & MR::TeethMaskToDirectionVolumeConvertor::getObjectBounds | ( | ) | const |
Returns all the objects present in volume and corresponding bounding boxes.