MCPcopy Create free account
hub / github.com/MeshInspector/MeshLib / findSignedDistance

Function findSignedDistance

source/MRMesh/MRMeshProject.cpp:207–221  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

205}
206
207std::optional<SignedDistanceToMeshResult> findSignedDistance( const Vector3f & pt, const MeshPart & mp,
208 float upDistLimitSq, float loDistLimitSq )
209{
210 auto projRes = findProjection( pt, mp, upDistLimitSq, nullptr, loDistLimitSq );
211 std::optional<SignedDistanceToMeshResult> res;
212 if ( !( projRes.distSq < upDistLimitSq ) || projRes.distSq < loDistLimitSq )
213 {
214 return res;
215 }
216 res = SignedDistanceToMeshResult();
217 res->proj = projRes.proj;
218 res->mtp = projRes.mtp;
219 res->dist = mp.mesh.signedDistance( pt, projRes, mp.region );
220 return res;
221}
222
223} //namespace MR

Callers 8

applyCompensationMethod · 0.70
signedDistanceMethod · 0.70
TESTFunction · 0.50
TESTFunction · 0.50
TESTFunction · 0.50
EMSCRIPTEN_BINDINGSFunction · 0.50
mainFunction · 0.50
mainFunction · 0.50

Calls 3

findProjectionFunction · 0.85
signedDistanceMethod · 0.80

Tested by 3

TESTFunction · 0.40
TESTFunction · 0.40
TESTFunction · 0.40