Use better epsilon for line intersection, fixes bug where

missed some hits on very small scale meshes, e.g., bug #31143.
This commit is contained in:
Howard Trickey 2012-10-23 14:57:25 +00:00
parent d273ddfd4f
commit d677e4b8b3

@ -1164,7 +1164,7 @@ static BMEdgeHit *knife_edge_tri_isect(KnifeTool_OpData *kcd, BMBVHTree *bmtree,
/* for comparing distances, error of intersection depends on triangle scale.
* need to scale down before squaring for accurate comparison */
const float depsilon = (KNIFE_FLT_EPS / 2.0f) * len_v3_tri_side_max(v1, v2, v3);
const float depsilon = (FLT_EPSILON / 2.0f) * len_v3_tri_side_max(v1, v2, v3);
const float depsilon_squared = depsilon * depsilon;
copy_v3_v3(cos + 0, v1);