28bool Foam::VF::voxel::outOfBounds
30 const labelVector& ijk,
34 return (
ijk[dir] < 0 ||
ijk[dir] >= nijk_[dir]);
40 return globalPosition - bb0_.min();
46 return bb0_.
min() + localPosition;
50void Foam::VF::voxel::setVoxelDims(
const label i,
const label j,
const label
k)
56 dxyz_[0] = span0_[0]/nijk_[0];
57 dxyz_[1] = span0_[1]/nijk_[1];
58 dxyz_[2] = span0_[2]/nijk_[2];
62void Foam::VF::voxel::refineVoxelDims()
67 const auto& solutionD = mesh_.solutionD();
70 if (solutionD[d] == -1)
76 setVoxelDims(nijk_[0], nijk_[1], nijk_[2]);
87 return point(i*dxyz_[0], j*dxyz_[1],
k*dxyz_[2]);
98 return voxelMin(i+1, j+1,
k+1);
102constexpr Foam::label Foam::VF::voxel::sign0(
const scalar
x)
const
105 if (
x < 0)
return -1;
118 return nijk_[0]*nijk_[1]*nijk_[2];
138 return i + (nijk_[0]*(j + (nijk_[1]*
k)));
144 const label nx = nijk_[0];
145 const label ny = nijk_[1];
147 const label i = voxeli%nx;
148 const label
k = voxeli/nx/ny;
149 const label j = (voxeli/nx)%ny;
label voxeli(const labelVector ijk) const noexcept
labelVector nijk() const noexcept
labelVector ijk(const label voxeli) const noexcept
label nVoxel() const noexcept
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
Vector< label > labelVector
Vector of labels.
vector point
Point is a vector.