Foam::label Foam::surfaceToCell::getNearest ( const triSurfaceSearch& querySurf, const label pointi, const point& pt, const vector& span, Map<label>& cache ) { Map<label>::const_iterator iter = cache.find(pointi); if (iter != cache.end()) { // Found cached answer return iter(); } else { pointIndexHit inter = querySurf.nearest(pt, span); // Triangle label (can be -1) label triI = inter.index(); // Store triangle on point cache.insert(pointi, triI); return triI; } }