![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Tool object for building 3D distance field from the set of BVH triangulations. Distance field is a scalar field that measures the distance from a given point to some object, including optional information about the inside and outside of the structure. Distance fields are used as alternative surface representations (like polygons or NURBS). More...
#include <BVH_DistanceField.hxx>
Public Types | |
| typedef BVH::VectorType< T, N >::Type | BVH_VecNt |
Public Member Functions | |
| BVH_DistanceField (const int theMaximumSize, const bool theComputeSign) | |
| Creates empty 3D distance field. | |
| virtual | ~BVH_DistanceField () |
| Releases resources of 3D distance field. | |
| bool | Build (BVH_Geometry< T, N > &theGeometry) |
| Builds 3D distance field from BVH geometry. | |
| bool | IsParallel () const |
| Returns parallel flag. | |
| void | SetParallel (const bool isParallel) |
| Set parallel flag controlling possibility of parallel execution. | |
| const T * | PackedData () const |
| Returns packed voxel data. | |
| T & | Voxel (const int theX, const int theY, const int theZ) |
| Returns distance value for the given voxel. | |
| T | Voxel (const int theX, const int theY, const int theZ) const |
| Returns distance value for the given voxel. | |
| int | DimensionX () const |
| Returns size of voxel grid in X dimension. | |
| int | DimensionY () const |
| Returns size of voxel grid in Y dimension. | |
| int | DimensionZ () const |
| Returns size of voxel grid in Z dimension. | |
| const BVH_VecNt & | VoxelSize () const |
| Returns size of single voxel. | |
| const BVH_VecNt & | CornerMin () const |
| Returns minimum corner of voxel grid. | |
| const BVH_VecNt & | CornerMax () const |
| Returns maximum corner of voxel grid. | |
Protected Member Functions | |
| void | BuildSlices (BVH_Geometry< T, N > &theGeometry, const int theStartZ, const int theFinalZ) |
| Performs building of distance field for the given Z slices. | |
Protected Attributes | |
| T * | myVoxelData |
| Array of voxels. | |
| BVH_VecNt | myVoxelSize |
| Size of single voxel. | |
| BVH_VecNt | myCornerMin |
| Minimum corner of voxel grid. | |
| BVH_VecNt | myCornerMax |
| Maximum corner of voxel grid. | |
| int | myDimensionX |
| Size of voxel grid in X dimension. | |
| int | myDimensionY |
| Size of voxel grid in Y dimension. | |
| int | myDimensionZ |
| Size of voxel grid in Z dimension. | |
| int | myMaximumSize |
| Size of voxel grid in maximum dimension. | |
| bool | myComputeSign |
| Enables/disables signing of distance field. | |
| bool | myIsParallel |
Tool object for building 3D distance field from the set of BVH triangulations. Distance field is a scalar field that measures the distance from a given point to some object, including optional information about the inside and outside of the structure. Distance fields are used as alternative surface representations (like polygons or NURBS).
| typedef BVH::VectorType<T,N>::Type BVH_DistanceField< T, N >::BVH_VecNt |
| BVH_DistanceField< T, N >::BVH_DistanceField | ( | const int | theMaximumSize, |
| const bool | theComputeSign ) |
Creates empty 3D distance field.
|
virtual |
Releases resources of 3D distance field.
| bool BVH_DistanceField< T, N >::Build | ( | BVH_Geometry< T, N > & | theGeometry | ) |
Builds 3D distance field from BVH geometry.
|
protected |
Performs building of distance field for the given Z slices.
|
inline |
Returns maximum corner of voxel grid.
|
inline |
Returns minimum corner of voxel grid.
|
inline |
Returns size of voxel grid in X dimension.
|
inline |
Returns size of voxel grid in Y dimension.
|
inline |
Returns size of voxel grid in Z dimension.
|
inline |
Returns parallel flag.
|
inline |
Returns packed voxel data.
|
inline |
Set parallel flag controlling possibility of parallel execution.
|
inline |
Returns distance value for the given voxel.
|
inline |
Returns distance value for the given voxel.
|
inline |
Returns size of single voxel.
|
protected |
Enables/disables signing of distance field.
|
protected |
Maximum corner of voxel grid.
|
protected |
Minimum corner of voxel grid.
|
protected |
Size of voxel grid in X dimension.
|
protected |
Size of voxel grid in Y dimension.
|
protected |
Size of voxel grid in Z dimension.
|
protected |
|
protected |
Size of voxel grid in maximum dimension.
|
protected |
Array of voxels.
|
protected |
Size of single voxel.