|
OpenVDB
2.3.0
|
Classes | |
| struct | AdaptivePrimBuilder |
| class | ClosestPointDist |
| class | ContourTracer |
| TBB body object that partitions a volume into 2D slices that can be processed in parallel and marks the exterior contour of disjoint voxel sets in each slice. More... | |
| struct | CopyActiveVoxelsOp |
| class | CountPoints |
| Counts the total number of points per leaf, accounts for cells with multiple points. More... | |
| class | CountRegions |
| Counts the total number of points per collapsed region. More... | |
| class | ExpandNB |
| TBB body object to expand the level set narrow band. More... | |
| class | FlagUsedPoints |
| class | FogVolumeOp |
| class | GenBoundaryMask |
| class | GenPoints |
| class | GenPolygons |
| class | GenSeamMask |
| class | GenTileMask |
| class | GenTopologyMask |
| class | InteriorMaskOp |
| class | IntersectingVoxelCleaner |
| TBB body object that removes intersecting voxels that were set via voxelization of self-intersecting parts of a mesh. More... | |
| class | IntersectingVoxelSign |
| TBB body object that traversers all intersecting voxels (defined by the intersectingVoxelsGrid) and potentially flips their sign, by comparing the "closest point" directions of outside-marked and non-intersecting neighboring voxels. More... | |
| class | LeafBS |
| struct | LeafTopologyDiffOp |
| class | MapPoints |
| Computes the point list indices for the index tree. More... | |
| struct | MaskEdges |
| struct | MergeBufferOp |
| class | MergeVoxelRegions |
| class | MeshVoxelizer |
| TBB body object to voxelize a mesh of triangles and/or quads into a collection of VDB grids, namely a squared distance grid, a closest primitive grid and an intersecting voxels grid (masks the mesh intersecting voxels) More... | |
| struct | MinOp |
| class | MovePoints |
| class | NodeBS |
| struct | OffsetOp |
| class | PartGen |
| struct | PartOp |
| struct | PointAccessor |
| class | PointListCopy |
| class | PointListTransform |
| class | PointTransform |
| class | PrimCpy |
| class | PropagateSign |
| TBB body object that performs a parallel flood fill. More... | |
| class | RemapIndices |
| struct | RenormOp |
| struct | SDFPrune |
| class | SeamWeights |
| class | ShellVoxelCleaner |
| TBB body object that removes non-intersecting voxels that where set by rasterizing self-intersecting parts of the mesh. More... | |
| class | SignData |
| class | SignMask |
| TBB body object that that finds seed points for the parallel flood fill. More... | |
| struct | SqrtAndScaleOp |
| class | TagSeamEdges |
| class | TileSampler |
| A TileSampler wraps a grid sampler of another type (BoxSampler, QuadraticSampler, etc.), and for samples that fall within a given tile of the grid, it returns a cached tile value instead of accessing the grid. More... | |
| struct | TileSampler< PointSampler, TreeT > |
| For point sampling, tree traversal is less expensive than testing bounding box membership. More... | |
| struct | TileSampler< StaggeredPointSampler, TreeT > |
| For point sampling, tree traversal is less expensive than testing bounding box membership. More... | |
| struct | Tolerance |
| struct | TrimOp |
| struct | UniformPrimBuilder |
| struct | UniquePtr |
| class | UpdatePoints |
| struct | VoxelSignOp |
Enumerations | |
| enum | { SIGNS = 0xFF, EDGES = 0xE00, INSIDE = 0x100, XEDGE = 0x200, YEDGE = 0x400, ZEDGE = 0x800, SEAM = 0x1000 } |
| Bit-flags used to classify cells. More... | |
Functions | |
| template<typename GridType , typename InterruptType > | |
| std::vector< typename GridType::Ptr > | segment (GridType &grid, InterruptType *interrupter=NULL) |
| Segmentation scheme, splits disjoint fragments into separate grids. More... | |
| template<typename FloatTreeT , typename IntTreeT > | |
| void | combine (FloatTreeT &lhsDist, IntTreeT &lhsIndex, FloatTreeT &rhsDist, IntTreeT &rhsIndex) |
| bool | isPlanarQuad (const Vec3d &p0, const Vec3d &p1, const Vec3d &p2, const Vec3d &p3, double epsilon=0.001) |
| template<typename AccessorT > | |
| unsigned char | evalCellSigns (const AccessorT &accessor, const Coord &ijk, typename AccessorT::ValueType iso) |
General method that computes the cell-sign configuration at the given ijk coordinate. More... | |
| template<typename LeafT > | |
| unsigned char | evalCellSigns (const LeafT &leaf, const Index offset, typename LeafT::ValueType iso) |
Leaf node optimized method that computes the cell-sign configuration at the given local offset. More... | |
| template<class AccessorT > | |
| void | correctCellSigns (unsigned char &signs, unsigned char face, const AccessorT &acc, Coord ijk, typename AccessorT::ValueType iso) |
| Used to correct topological ambiguities related to two adjacent cells that share an ambiguous face. More... | |
| template<class AccessorT > | |
| bool | isNonManifold (const AccessorT &accessor, const Coord &ijk, typename AccessorT::ValueType isovalue, const int dim) |
| template<class LeafType > | |
| void | mergeVoxels (LeafType &leaf, const Coord &start, int dim, int regionId) |
| template<class LeafType > | |
| bool | isMergable (LeafType &leaf, const Coord &start, int dim, typename LeafType::ValueType::value_type adaptivity) |
| double | evalRoot (double v0, double v1, double iso) |
| template<typename LeafT > | |
| void | collectCornerValues (const LeafT &leaf, const Index offset, std::vector< double > &values) |
| Extracts the eight corner values for leaf inclusive cells. More... | |
| template<typename AccessorT > | |
| void | collectCornerValues (const AccessorT &acc, const Coord &ijk, std::vector< double > &values) |
Extracts the eight corner values for a cell starting at the given coordinate. More... | |
| Vec3d | computePoint (const std::vector< double > &values, unsigned char signs, unsigned char edgeGroup, double iso) |
| Computes the average cell point for a given edge group. More... | |
| int | computeMaskedPoint (Vec3d &avg, const std::vector< double > &values, unsigned char signs, unsigned char signsMask, unsigned char edgeGroup, double iso) |
Computes the average cell point for a given edge group, ignoring edge samples present in the signsMask configuration. More... | |
| Vec3d | computeWeightedPoint (const Vec3d &p, const std::vector< double > &values, unsigned char signs, unsigned char edgeGroup, double iso) |
Computes the average cell point for a given edge group, by computing convex weights based on the distance from the sample point p. More... | |
| void | computeCellPoints (std::vector< Vec3d > &points, const std::vector< double > &values, unsigned char signs, double iso) |
Computes the average cell points defined by the sign configuration signs and the given corner values values. More... | |
| int | matchEdgeGroup (unsigned char groupId, unsigned char lhsSigns, unsigned char rhsSigns) |
Given a sign configuration lhsSigns and an edge group groupId, finds the corresponding edge group in a different sign configuration rhsSigns. Returns -1 if no match is found. More... | |
| void | computeCellPoints (std::vector< Vec3d > &points, std::vector< bool > &weightedPointMask, const std::vector< double > &lhsValues, const std::vector< double > &rhsValues, unsigned char lhsSigns, unsigned char rhsSigns, double iso, size_t pointIdx, const boost::scoped_array< uint32_t > &seamPoints) |
Computes the average cell points defined by the sign configuration signs and the given corner values values. Combines data from two different level sets to eliminate seam lines when meshing fractured segments. More... | |
| template<typename SignAccT , typename IdxAccT , typename PrimBuilder > | |
| void | constructPolygons (Int16 flags, Int16 refFlags, const Vec4i &offsets, const Coord &ijk, const SignAccT &signAcc, const IdxAccT &idxAcc, PrimBuilder &mesher, Index32 pointListSize) |
| template<class DistTreeT , class SignTreeT , class IdxTreeT > | |
| void | tileData (const DistTreeT &distTree, SignTreeT &signTree, IdxTreeT &idxTree, double iso) |
| template<typename LeafManagerT > | |
| bool | needsActiveVoxePadding (const LeafManagerT &leafs, double iso, double voxelSize) |
Variables | |
| const bool | sAdaptable [256] |
| Used to quickly determine if a given cell is adaptable. More... | |
| const unsigned char | sAmbiguousFace [256] |
| Contains the ambiguous face index for certain cell configuration. More... | |
| const unsigned char | sEdgeGroupTable [256][13] |
| Lookup table for different cell sign configurations. The first entry specifies the total number of points that need to be generated inside a cell and the remaining 12 entries indicate different edge groups. More... | |
| enum | { MASK_FIRST_10_BITS = 0x000003FF, MASK_DIRTY_BIT = 0x80000000, MASK_INVALID_BIT = 0x40000000 } |
| Utility methods for point quantization. More... | |
| uint32_t | packPoint (const Vec3d &v) |
| Utility methods for point quantization. More... | |
| Vec3d | unpackPoint (uint32_t data) |
| Utility methods for point quantization. More... | |
| anonymous enum |
| anonymous enum |
|
inline |
Extracts the eight corner values for leaf inclusive cells.
|
inline |
Extracts the eight corner values for a cell starting at the given
coordinate.
|
inline |
|
inline |
Computes the average cell points defined by the sign configuration signs and the given corner values values.
|
inline |
Computes the average cell points defined by the sign configuration signs and the given corner values values. Combines data from two different level sets to eliminate seam lines when meshing fractured segments.
|
inline |
Computes the average cell point for a given edge group, ignoring edge samples present in the signsMask configuration.
|
inline |
Computes the average cell point for a given edge group.
|
inline |
Computes the average cell point for a given edge group, by computing convex weights based on the distance from the sample point p.
|
inline |
|
inline |
Used to correct topological ambiguities related to two adjacent cells that share an ambiguous face.
|
inline |
General method that computes the cell-sign configuration at the given ijk coordinate.
|
inline |
Leaf node optimized method that computes the cell-sign configuration at the given local offset.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Given a sign configuration lhsSigns and an edge group groupId, finds the corresponding edge group in a different sign configuration rhsSigns. Returns -1 if no match is found.
|
inline |
|
inline |
|
inline |
Utility methods for point quantization.
|
inline |
Segmentation scheme, splits disjoint fragments into separate grids.
|
inline |
|
inline |
Utility methods for point quantization.
| const bool sAdaptable[256] |
Used to quickly determine if a given cell is adaptable.
| const unsigned char sAmbiguousFace[256] |
Contains the ambiguous face index for certain cell configuration.
| const unsigned char sEdgeGroupTable[256][13] |
Lookup table for different cell sign configurations. The first entry specifies the total number of points that need to be generated inside a cell and the remaining 12 entries indicate different edge groups.
1.8.7