45 bool fullMatch =
true;
47 point compareOrigin = origin;
49 if (origin ==
point(VGREAT, VGREAT, VGREAT))
53 compareOrigin =
sum(pts1)/pts1.
size();
63 scalar dist0 = pts0MagSqr[i];
67 scalar matchDist = matchDistances[face0I];
78 scalar minDistSqr = VGREAT;
85 (j < pts1MagSqr.size())
86 && (pts1MagSqr[j] < 1.00001*dist0 + 2*matchDist)
93 scalar distSqr =
magSqr(pts0[face0I] - pts1[faceI]);
95 if (distSqr <=
sqr(matchDist) && distSqr < minDistSqr)
108 Pout<<
"Cannot find point in pts1 matching point " << face0I
109 <<
" coord:" << pts0[face0I]
110 <<
" in pts0 when using tolerance " << matchDist <<
endl;
113 Pout<<
"Searching started from:" << startI <<
" in pts1"
119 (j < pts1MagSqr.size())
120 && (pts1MagSqr[j] < 1.00001*dist0 + 2*matchDist)
127 Pout<<
" Compared coord: " << pts1[faceI]
129 <<
" with difference to point "
130 <<
mag(pts1[faceI] - pts0[face0I]) <<
endl;
135 from0To1[face0I] = minFaceI;
157 bool fullMatch =
true;
159 point compareOrigin = origin;
161 if (origin ==
point(VGREAT, VGREAT, VGREAT))
165 compareOrigin =
sum(pts1)/pts1.
size();
175 scalar dist0 = pts0MagSqr[i];
179 scalar matchDist = matchDistances[face0I];
181 label startI =
findLower(pts1MagSqr, 0.99999*dist0 - 2*matchDist);
189 scalar minDistSqr = VGREAT;
193 const scalar minDistNorm = 0;
199 (j < pts1MagSqr.size())
200 && (pts1MagSqr[j] < 1.00001*dist0 + 2*matchDist)
207 scalar distSqr =
magSqr(pts0[face0I] - pts1[faceI]);
209 scalar distNorm = (pts0Dir[face0I] & pts1Dir[faceI]);
220 if (distSqr <=
sqr(matchDist) && distSqr < minDistSqr)
223 if (distNorm < minDistNorm)
225 minDistSqr = distSqr;
237 Pout<<
"Cannot find point in pts1 matching point " << face0I
238 <<
" coord:" << pts0[face0I]
239 <<
" in pts0 when using tolerance " << matchDist <<
endl;
242 Pout<<
"Searching started from:" << startI <<
" in pts1"
248 (j < pts1MagSqr.size())
249 && (pts1MagSqr[j] < 1.00001*dist0 + 2*matchDist)
256 Pout<<
" Compared coord: " << pts1[faceI]
258 <<
" with difference to point "
259 <<
mag(pts1[faceI] - pts0[face0I]) <<
endl;
264 from0To1[face0I] = minFaceI;