fix another misapplied diff

This commit is contained in:
Rudolf Polzer 2011-01-13 21:18:04 +01:00
parent dfb4b5c8c1
commit cfbdf38d39

View File

@ -321,52 +321,6 @@ void SnapWeldVectorAccu(vec3_accu_t a, vec3_accu_t b, vec3_accu_t out)
}
}
/*
==================
SnapWeldVectorAccu
Welds two vectors into a third, taking into account nearest-to-integer
instead of averaging.
==================
*/
void SnapWeldVectorAccu(vec3_accu_t a, vec3_accu_t b, vec3_accu_t out)
{
// I'm just preserving what I think was the intended logic of the original
// SnapWeldVector(). I'm not actually sure where this function should even
// be used. I'd like to know which kinds of problems this function addresses.
// TODO: I thought we're snapping all coordinates to nearest 1/8 unit?
// So what is natural about snapping to the nearest integer? Maybe we should
// be snapping to the nearest 1/8 unit instead?
int i;
vec_accu_t ai, bi, ad, bd;
if (a == NULL || b == NULL || out == NULL)
Error("SnapWeldVectorAccu: NULL argument");
for (i = 0; i < 3; i++)
{
ai = Q_rintAccu(a[i]);
bi = Q_rintAccu(b[i]);
ad = fabs(ai - a[i]);
bd = fabs(bi - b[i]);
if (ad < bd)
{
if (ad < SNAP_EPSILON) out[i] = ai;
else out[i] = a[i];
}
else
{
if (bd < SNAP_EPSILON) out[i] = bi;
else out[i] = b[i];
}
}
}
/*
FixWinding() - ydnar
removes degenerate edges from a winding