Go to the documentation of this file.
174 label& nearestTriangle,
184 label& nearestTriangle,
225 const scalar tol = 1
e-4
FixedList< Vector< label >, 8 > octantVectors_
FixedList< meshOctreeCubeCoordinates, 26 > regularityPositions_
void findAllLeafNeighbours(const meshOctreeCubeCoordinates &, DynList< label > &neighbourLeaves) const
find neighbour leaves over nodes, edges and faces
const FixedList< meshOctreeCubeCoordinates, 26 > & regularityPositions() const
List< Pair< meshOctreeCubeCoordinates > > neiRange_
void findNearestSurfacePoint(point &nearest, scalar &distSq, label &nearestTriangle, label ®ion, const point &p) const
find nearest surface point for vertex and its region
void setOctantVectorsAndPositions()
set data needed for finding neighbours
void containedTriangles(const label, DynList< label > &) const
void findNeighboursForLeaf(const meshOctreeCubeCoordinates &, DynList< label > &neighbourLeaves) const
find neighbour leaf cubes over all faces
void findBoundaryPatchesForLeaf(const label, DynList< label > &) const
bool isQuadtree() const
is octree a quadtree or an octree
const FixedList< FixedList< meshOctreeCubeCoordinates, 8 >, 8 > & positionsOfLeavesAtNodes() const
return positions to find the leaves at each cube node
const labelList & neiProcs() const
neighbour processors of the current one
List< meshOctreeSlot > dataSlots_
List of slots containing data generated by each processor.
bool findNearestPointToEdge(point &nearest, scalar &distSq, label &nearestEdge, const FixedList< point, 2 > &edgePoints, const FixedList< label, 2 > &edgePointRegions) const
void findEdgesInBox(const boundBox &, DynList< label > &) const
void findLeavesContainedInBox(const boundBox &, DynList< const meshOctreeCube *, 256 > &) const
find leaves contained in the box
FixedList< FixedList< meshOctreeCubeCoordinates, 8 >, 8 > vrtLeavesPos_
void findLeavesForCubeVertex(const label, const direction, FixedList< label, 8 > &) const
find neighbouring leaves of a vertex
void findNeighboursInDirection(const meshOctreeCubeCoordinates &, const label dir, DynList< label > &neighbourLeaves) const
find neighbours over a leaf cube face in the given direction
label numberOfLeaves() const
return leaves of the octree
meshOctree(const meshOctree &)
Disallow default bitwise copy construct.
label findLeafLabelForPosition(const meshOctreeCubeCoordinates &) const
return leaf cube for the given position
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
label initialCubeRotation_
bool findNearestEdgePoint(point &edgePoint, scalar &distSq, label &nearestEdge, const point &p, const DynList< label > ®ions) const
find nearest feature-edges vertex to a given vertex
void exchangeRequestsWithNeighbourProcessors(const LongList< meshOctreeCubeCoordinates > &dataToSend, LongList< meshOctreeCubeCoordinates > &dataToReceive) const
exchange requests with other processors generating the octree
const bool isQuadtree_
a flag whether is true if is it a quadtree
bool hasContainedEdges(const label) const
bool findNearestPointToPatches(point &nearest, scalar &distSq, const point &p, const DynList< label > &patches, const scalar tol=1e-4) const
find the nearest vertex to the given patches
void findNeighboursOverEdge(const meshOctreeCubeCoordinates &, const label eI, DynList< label > &neighbourLeaves) const
find neighbours over a cube's edge
LongList< meshOctreeCube * > leaves_
list of cubes which are leaves of the octree
void containedEdges(const label, DynList< label > &) const
label findNeighbourOverNode(const meshOctreeCubeCoordinates &, const label nodeI) const
find a neighbour over a cube's node
bool isPointInside(const point &) const
checks if the point is inside or outside the surface
void findTrianglesInBox(const boundBox &, DynList< label > &) const
const double e
Elementary charge.
const boundBox & rootBox() const
return rootBox
label findLeafContainingVertex(const point &) const
find a cube containing the vertex
short leafAtProc(const label) const
const triSurf & surface_
Reference to surface to work on.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
A class for triangulated surface used in the meshing process. It is derived from points and facets wi...
A 1D vector of objects of type <T> with a fixed size <Size>.
meshOctreeCube * findCubeForPosition(const meshOctreeCubeCoordinates &) const
return leaf cube for the given position
A bounding box defined in terms of the points at its extremities.
bool hasContainedTriangles(const label) const
meshOctreeCube * initialCubePtr_
Root cube of the octree structure.
const FixedList< Vector< label >, 8 > & octantVectors() const
return octant vectors
bool findNearestCorner(point &nearest, scalar &distSq, label &nearestPoint, const point &p, const DynList< label > &patches) const
find nearest corner point
void findNearestSurfacePointInRegion(point &nearest, scalar &distSq, label &nearestTriangle, const label region, const point &p) const
find nearest surface point for vertex in a given region
const triSurf & surface() const
return a reference to the surface
void createInitialOctreeBox()
create initial octree box
scalar searchRange_
octree search range
void findLeavesInSphere(const point &, const scalar, DynList< label > &) const
find leaves within the given range from the given point
const meshOctreeCubeBasic & returnLeaf(const label) const
void operator=(const meshOctree &)
Disallow default bitwise assignment.