mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
BUG: If point is outside octree need to call getVolumeType explicitly
instead of via the octree
This commit is contained in:
@ -738,11 +738,21 @@ void Foam::triSurfaceMesh::getVolumeType
|
|||||||
{
|
{
|
||||||
const point& pt = points[pointI];
|
const point& pt = points[pointI];
|
||||||
|
|
||||||
|
if (!tree().bb().contains(pt))
|
||||||
|
{
|
||||||
|
// Have to calculate directly as outside the octree
|
||||||
|
volType[pointI] = tree().shapes().getVolumeType(tree(), pt);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
// - use cached volume type per each tree node
|
// - use cached volume type per each tree node
|
||||||
// - cheat conversion since same values
|
|
||||||
volType[pointI] = tree().getVolumeType(pt);
|
volType[pointI] = tree().getVolumeType(pt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Info<< "octree : " << pt << " = "
|
||||||
|
// << volumeType::names[volType[pointI]] << endl;
|
||||||
|
}
|
||||||
|
|
||||||
indexedOctree<treeDataTriSurface>::perturbTol() = oldTol;
|
indexedOctree<treeDataTriSurface>::perturbTol() = oldTol;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user