37#ifndef voxelMeshSearch_H
38#define voxelMeshSearch_H
80 label searchProcPatch(
const label seedFacei,
const point&)
const;
83 label findIntersectedFace(
const label celli,
const point&)
const;
103 const bool doUpdate =
true
174 template<
class Container,
class Type>
185 template<
class Container,
class Type,
class CombineOp>
198 template<
class Container,
class Type>
204 const Container& elems,
206 const bool isNot =
false
210 template<
class Container,
class Type>
216 const Container& elems,
218 const bool isNot =
false
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
OFstream that keeps track of vertices.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A bounding box defined in terms of min/max extrema points.
Mesh consisting of general polyhedral cells.
Fast, non-parallel searching in mesh without use of octree.
static labelVector index3(const labelVector &nDivs, const label voxeli)
Combined voxel index to individual indices.
static label index(const labelVector &nDivs, const labelVector &voxel)
Find cells. Returns number of cells found.
static void fill(Container &elems, const boundBox &bb, const labelVector &nDivs, const boundBox &subBb, const Type val)
Fill voxels indicated by bounding box.
label findCell(const point &) const
Find a cell.
static bool overlaps(const boundBox &bb, const labelVector &nDivs, const boundBox &subBb, const Container &elems, const Type val, const bool isNot=false)
Check if any voxel inside bounding box is set to val or.
static labelVector offset(const labelVector &nDivs)
Change in combined voxel index for change in components.
bool update()
Update lookup tables for geometry changes.
ClassName("voxelMeshSearch")
const labelVector & nDivs() const
Number of voxels for local mesh.
static void writeGrid(OBJstream &, const boundBox &, const labelVector &)
Debug: write all edges.
autoPtr< fvMesh > makeMesh(const IOobject &) const
Debug: construct fvMesh. Note: writes a dummy mesh to.
static point centre(const boundBox &bb, const labelVector &nDivs, const labelVector &voxel)
Voxel index to voxel centre.
#define ClassName(TypeNameString)
Add typeName information from argument TypeNameString to a class.
dimensionSet clip(const dimensionSet &ds1, const dimensionSet &ds2)