From 7bcf9dda01714a1dfb606f4c94e05262144641c1 Mon Sep 17 00:00:00 2001 From: graham Date: Wed, 2 Feb 2011 21:06:19 +0000 Subject: [PATCH] ENH: Graceful handling of octree find nearest failures. --- .../conformalVoronoiMesh.C | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/mesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMesh.C b/src/mesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMesh.C index 124e052411..3d7e42aa99 100644 --- a/src/mesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMesh.C +++ b/src/mesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMesh.C @@ -896,9 +896,26 @@ void Foam::conformalVoronoiMesh::setVertexSizeAndAlignment() pointIndexHit info = tree.findNearest(pt, spanSqr); - vit->alignment() = storedAlignments_[info.index()]; + if (info.hit()) + { + vit->alignment() = storedAlignments_[info.index()]; - vit->targetCellSize() = storedSizes_[info.index()]; + vit->targetCellSize() = storedSizes_[info.index()]; + } + else + { + WarningIn + ( + "void " + "Foam::conformalVoronoiMesh::setVertexSizeAndAlignment()" + ) + << "Point " << pt << " did not find a nearest point " + << " for alignment and size lookup." << endl; + + vit->alignment() = requiredAlignment(pt); + + vit->targetCellSize() = cellSizeControl().cellSize(pt, false); + } } }