Revision: 65507
          http://sourceforge.net/p/brlcad/code/65507
Author:   ejno
Date:     2015-07-01 13:39:40 +0000 (Wed, 01 Jul 2015)
Log Message:
-----------
fixes

Modified Paths:
--------------
    brlcad/trunk/src/librt/primitives/bot/gct_decimation/meshdecimation.c

Modified: brlcad/trunk/src/librt/primitives/bot/gct_decimation/meshdecimation.c
===================================================================
--- brlcad/trunk/src/librt/primitives/bot/gct_decimation/meshdecimation.c       
2015-06-30 21:20:15 UTC (rev 65506)
+++ brlcad/trunk/src/librt/primitives/bot/gct_decimation/meshdecimation.c       
2015-07-01 13:39:40 UTC (rev 65507)
@@ -35,7 +35,6 @@
 #include <math.h>
 #include <float.h>
 
-
 #include "auxiliary/cpuconfig.h"
 #include "auxiliary/cpuinfo.h"
 #include "auxiliary/cc.h"
@@ -49,13 +48,6 @@
 #include "bu/log.h"
 #include "vmath.h"
 
-#if defined(__GNUC__) && (__GNUC__ == 4 && __GNUC_MINOR__ >= 3) && 
!defined(__clang__)
-#  pragma GCC diagnostic ignored "-Wunused-function"
-#endif
-#if defined(__clang__)
-#  pragma clang diagnostic ignored "-Wunused-function"
-#endif
-
 #ifdef __SSE__
 #include <xmmintrin.h>
 #endif
@@ -75,6 +67,12 @@
 #include <smmintrin.h>
 #endif
 
+#if defined(__GNUC__) && (__GNUC__ == 4 && __GNUC_MINOR__ >= 3) && 
!defined(__clang__)
+#  pragma GCC diagnostic ignored "-Wunused-function"
+#endif
+#if defined(__clang__)
+#  pragma clang diagnostic ignored "-Wunused-function"
+#endif
 
 /* Define to use double floating point precision */
 /*
@@ -183,14 +181,20 @@
 
 #ifdef MD_CONFIG_SSE_SUPPORT
 extern int mdPathSSE4p1;
-float mdEdgeCollapsePenaltyTriangleSSE4p1f(float *newpoint, float *oldpoint, 
float *leftpoint, float *rightpoint, int *denyflag, float compactnesstarget);
-double mdEdgeCollapsePenaltyTriangleSSE4p1d(double *newpoint, double 
*oldpoint, double *leftpoint, double *rightpoint, int *denyflag, double 
compactnesstarget);
+float mdEdgeCollapsePenaltyTriangleSSE4p1f(float *newpoint, float *oldpoint,
+       float *leftpoint, float *rightpoint, int *denyflag, float 
compactnesstarget);
+double mdEdgeCollapsePenaltyTriangleSSE4p1d(double *newpoint, double *oldpoint,
+       double *leftpoint, double *rightpoint, int *denyflag, double 
compactnesstarget);
 extern int mdPathSSE3;
-float mdEdgeCollapsePenaltyTriangleSSE3f(float *newpoint, float *oldpoint, 
float *leftpoint, float *rightpoint, int *denyflag, float compactnesstarget);
-double mdEdgeCollapsePenaltyTriangleSSE3d(double *newpoint, double *oldpoint, 
double *leftpoint, double *rightpoint, int *denyflag, double compactnesstarget);
+float mdEdgeCollapsePenaltyTriangleSSE3f(float *newpoint, float *oldpoint,
+       float *leftpoint, float *rightpoint, int *denyflag, float 
compactnesstarget);
+double mdEdgeCollapsePenaltyTriangleSSE3d(double *newpoint, double *oldpoint,
+       double *leftpoint, double *rightpoint, int *denyflag, double 
compactnesstarget);
 extern int mdPathSSE2;
-float mdEdgeCollapsePenaltyTriangleSSE2f(float *newpoint, float *oldpoint, 
float *leftpoint, float *rightpoint, int *denyflag, float compactnesstarget);
-double mdEdgeCollapsePenaltyTriangleSSE2d(double *newpoint, double *oldpoint, 
double *leftpoint, double *rightpoint, int *denyflag, double compactnesstarget);
+float mdEdgeCollapsePenaltyTriangleSSE2f(float *newpoint, float *oldpoint,
+       float *leftpoint, float *rightpoint, int *denyflag, float 
compactnesstarget);
+double mdEdgeCollapsePenaltyTriangleSSE2d(double *newpoint, double *oldpoint,
+       double *leftpoint, double *rightpoint, int *denyflag, double 
compactnesstarget);
 #endif
 
 
@@ -224,13 +228,13 @@
 #define mdfacos(x) acos(x)
 #else
 typedef float mdf;
-#define mdfmin(x,y) fminf((x),(y))
-#define mdfmax(x,y) fmaxf((x),(y))
-#define mdffloor(x) floorf(x)
-#define mdfceil(x) ceilf(x)
-#define mdfround(x) roundf(x)
+#define mdfmin(x,y) FMIN((x),(y))
+#define mdfmax(x,y) FMAX((x),(y))
+#define mdffloor(x) floor(x)
+#define mdfceil(x) ceil(x)
+#define mdfround(x) round(x)
 #define mdfsqrt(x) sqrt(x)
-#define mdfcbrt(x) cbrtf(x)
+#define mdfcbrt(x) cbrt(x)
 #define mdfabs(x) fabs(x)
 #define mdflog2(x) log2(x)
 #define mdfacos(x) acos(x)
@@ -276,7 +280,8 @@
 #endif
 } mathQuadric;
 
-static void mathQuadricInit(mathQuadric *q, mdqf a, mdqf b, mdqf c, mdqf d, 
mdqf area)
+static void mathQuadricInit(mathQuadric *q, mdqf a, mdqf b, mdqf c, mdqf d,
+                           mdqf area)
 {
     q->area = area;
 
@@ -296,7 +301,9 @@
 #endif
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-    printf("    Q Init %f ; %f %f %f %f %f %f %f %f %f %f\n", (double)q->area, 
(double)q->a2, (double)q->ab, (double)q->ac, (double)q->ad, (double)q->b2, 
(double)q->bc, (double)q->bd, (double)q->c2, (double)q->cd, (double)q->d2);
+    printf("    Q Init %f ; %f %f %f %f %f %f %f %f %f %f\n", (double)q->area,
+          (double)q->a2, (double)q->ab, (double)q->ac, (double)q->ad, 
(double)q->b2,
+          (double)q->bc, (double)q->bd, (double)q->c2, (double)q->cd, 
(double)q->d2);
 #endif
 
     return;
@@ -309,9 +316,12 @@
 static mdqf mathMatrix3x3Determinant(mdqf *m)
 {
     mdqf det;
-    det  = m[0 * 3 + 0] * (m[2 * 3 + 2] * m[1 * 3 + 1] - m[2 * 3 + 1] * m[1 * 
3 + 2]);
-    det -= m[1 * 3 + 0] * (m[2 * 3 + 2] * m[0 * 3 + 1] - m[2 * 3 + 1] * m[0 * 
3 + 2]);
-    det += m[2 * 3 + 0] * (m[1 * 3 + 2] * m[0 * 3 + 1] - m[1 * 3 + 1] * m[0 * 
3 + 2]);
+    det  = m[0 * 3 + 0] * (m[2 * 3 + 2] * m[1 * 3 + 1] - m[2 * 3 + 1] * m[1 * 
3 +
+                          2]);
+    det -= m[1 * 3 + 0] * (m[2 * 3 + 2] * m[0 * 3 + 1] - m[2 * 3 + 1] * m[0 * 
3 +
+                          2]);
+    det += m[2 * 3 + 0] * (m[1 * 3 + 2] * m[0 * 3 + 1] - m[1 * 3 + 1] * m[0 * 
3 +
+                          2]);
     return det;
 }
 
@@ -343,15 +353,24 @@
 {
     mdf detinv;
     detinv = 1.0 / det;
-    mdst[0 * 3 + 0] = (m[2 * 3 + 2] * m[1 * 3 + 1] - m[2 * 3 + 1] * m[1 * 3 + 
2]) * detinv;
-    mdst[0 * 3 + 1] = -(m[2 * 3 + 2] * m[0 * 3 + 1] - m[2 * 3 + 1] * m[0 * 3 + 
2]) * detinv;
-    mdst[0 * 3 + 2] = (m[1 * 3 + 2] * m[0 * 3 + 1] - m[1 * 3 + 1] * m[0 * 3 + 
2]) * detinv;
-    mdst[1 * 3 + 0] = -(m[2 * 3 + 2] * m[1 * 3 + 0] - m[2 * 3 + 0] * m[1 * 3 + 
2]) * detinv;
-    mdst[1 * 3 + 1] = (m[2 * 3 + 2] * m[0 * 3 + 0] - m[2 * 3 + 0] * m[0 * 3 + 
2]) * detinv;
-    mdst[1 * 3 + 2] = -(m[1 * 3 + 2] * m[0 * 3 + 0] - m[1 * 3 + 0] * m[0 * 3 + 
2]) * detinv;
-    mdst[2 * 3 + 0] = (m[2 * 3 + 1] * m[1 * 3 + 0] - m[2 * 3 + 0] * m[1 * 3 + 
1]) * detinv;
-    mdst[2 * 3 + 1] = -(m[2 * 3 + 1] * m[0 * 3 + 0] - m[2 * 3 + 0] * m[0 * 3 + 
1]) * detinv;
-    mdst[2 * 3 + 2] = (m[1 * 3 + 1] * m[0 * 3 + 0] - m[1 * 3 + 0] * m[0 * 3 + 
1]) * detinv;
+    mdst[0 * 3 + 0] = (m[2 * 3 + 2] * m[1 * 3 + 1] - m[2 * 3 + 1] * m[1 * 3 + 
2]) *
+                     detinv;
+    mdst[0 * 3 + 1] = -(m[2 * 3 + 2] * m[0 * 3 + 1] - m[2 * 3 + 1] * m[0 * 3 + 
2]) *
+                     detinv;
+    mdst[0 * 3 + 2] = (m[1 * 3 + 2] * m[0 * 3 + 1] - m[1 * 3 + 1] * m[0 * 3 + 
2]) *
+                     detinv;
+    mdst[1 * 3 + 0] = -(m[2 * 3 + 2] * m[1 * 3 + 0] - m[2 * 3 + 0] * m[1 * 3 + 
2]) *
+                     detinv;
+    mdst[1 * 3 + 1] = (m[2 * 3 + 2] * m[0 * 3 + 0] - m[2 * 3 + 0] * m[0 * 3 + 
2]) *
+                     detinv;
+    mdst[1 * 3 + 2] = -(m[1 * 3 + 2] * m[0 * 3 + 0] - m[1 * 3 + 0] * m[0 * 3 + 
2]) *
+                     detinv;
+    mdst[2 * 3 + 0] = (m[2 * 3 + 1] * m[1 * 3 + 0] - m[2 * 3 + 0] * m[1 * 3 + 
1]) *
+                     detinv;
+    mdst[2 * 3 + 1] = -(m[2 * 3 + 1] * m[0 * 3 + 0] - m[2 * 3 + 0] * m[0 * 3 + 
1]) *
+                     detinv;
+    mdst[2 * 3 + 2] = (m[1 * 3 + 1] * m[0 * 3 + 0] - m[1 * 3 + 0] * m[0 * 3 + 
1]) *
+                     detinv;
     return;
 }
 
@@ -383,7 +402,8 @@
     v[2] =  vres[2];
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-    printf("    Vector : %f %f %f : %f %f %f\n", (double)vector[0], 
(double)vector[1], (double)vector[2], (double)v[0], (double)v[1], (double)v[2]);
+    printf("    Vector : %f %f %f : %f %f %f\n", (double)vector[0],
+          (double)vector[1], (double)vector[2], (double)v[0], (double)v[1], 
(double)v[2]);
 #endif
 
     return 1;
@@ -406,12 +426,17 @@
 }
 
 
-static void mathQuadricAddStoreQuadric(mathQuadric *qdst, mathQuadric *q0, 
mathQuadric *q1)
+static void mathQuadricAddStoreQuadric(mathQuadric *qdst, mathQuadric *q0,
+                                      mathQuadric *q1)
 {
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-    printf("    QAdd Sr0 %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)q0->area, (double)q0->a2, (double)q0->ab, (double)q0->ac, 
(double)q0->ad, (double)q0->b2, (double)q0->bc, (double)q0->bd, (double)q0->c2, 
(double)q0->cd, (double)q0->d2);
-    printf("    QAdd Sr1 %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)q1->area, (double)q1->a2, (double)q1->ab, (double)q1->ac, 
(double)q1->ad, (double)q1->b2, (double)q1->bc, (double)q1->bd, (double)q1->c2, 
(double)q1->cd, (double)q1->d2);
+    printf("    QAdd Sr0 %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)q0->area,
+          (double)q0->a2, (double)q0->ab, (double)q0->ac, (double)q0->ad, 
(double)q0->b2,
+          (double)q0->bc, (double)q0->bd, (double)q0->c2, (double)q0->cd, 
(double)q0->d2);
+    printf("    QAdd Sr1 %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)q1->area,
+          (double)q1->a2, (double)q1->ab, (double)q1->ac, (double)q1->ad, 
(double)q1->b2,
+          (double)q1->bc, (double)q1->bd, (double)q1->c2, (double)q1->cd, 
(double)q1->d2);
 #endif
 
     qdst->area = q0->area + q1->area;
@@ -427,7 +452,10 @@
     qdst->d2 = q0->d2 + q1->d2;
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-    printf("      QSum   %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)qdst->area, (double)qdst->a2, (double)qdst->ab, (double)qdst->ac, 
(double)qdst->ad, (double)qdst->b2, (double)qdst->bc, (double)qdst->bd, 
(double)qdst->c2, (double)qdst->cd, (double)qdst->d2);
+    printf("      QSum   %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)qdst->area,
+          (double)qdst->a2, (double)qdst->ab, (double)qdst->ac, 
(double)qdst->ad,
+          (double)qdst->b2, (double)qdst->bc, (double)qdst->bd, 
(double)qdst->c2,
+          (double)qdst->cd, (double)qdst->d2);
 #endif
 
     return;
@@ -437,8 +465,13 @@
 {
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-    printf("    QAdd Src %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)q->area, (double)q->a2, (double)q->ab, (double)q->ac, (double)q->ad, 
(double)q->b2, (double)q->bc, (double)q->bd, (double)q->c2, (double)q->cd, 
(double)q->d2);
-    printf("    QAdd Dst %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)qdst->area, (double)qdst->a2, (double)qdst->ab, (double)qdst->ac, 
(double)qdst->ad, (double)qdst->b2, (double)qdst->bc, (double)qdst->bd, 
(double)qdst->c2, (double)qdst->cd, (double)qdst->d2);
+    printf("    QAdd Src %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)q->area,
+          (double)q->a2, (double)q->ab, (double)q->ac, (double)q->ad, 
(double)q->b2,
+          (double)q->bc, (double)q->bd, (double)q->c2, (double)q->cd, 
(double)q->d2);
+    printf("    QAdd Dst %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)qdst->area,
+          (double)qdst->a2, (double)qdst->ab, (double)qdst->ac, 
(double)qdst->ad,
+          (double)qdst->b2, (double)qdst->bc, (double)qdst->bd, 
(double)qdst->c2,
+          (double)qdst->cd, (double)qdst->d2);
 #endif
 
     qdst->area += q->area;
@@ -454,7 +487,10 @@
     qdst->d2 += q->d2;
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-    printf("      QSum   %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)qdst->area, (double)qdst->a2, (double)qdst->ab, (double)qdst->ac, 
(double)qdst->ad, (double)qdst->b2, (double)qdst->bc, (double)qdst->bd, 
(double)qdst->c2, (double)qdst->cd, (double)qdst->d2);
+    printf("      QSum   %f ; %f %f %f %f %f %f %f %f %f %f\n", 
(double)qdst->area,
+          (double)qdst->a2, (double)qdst->ab, (double)qdst->ac, 
(double)qdst->ad,
+          (double)qdst->b2, (double)qdst->bc, (double)qdst->bd, 
(double)qdst->c2,
+          (double)qdst->cd, (double)qdst->d2);
 #endif
 
     return;
@@ -470,9 +506,12 @@
     vh[1] = v[1];
     vh[2] = v[2];
 
-    d = vh[0] * vh[0] * (mdqfhigh)q->a2 + vh[1] * vh[1] * (mdqfhigh)q->b2 + 
vh[2] * vh[2] * (mdqfhigh)q->c2;
-    d += 2.0 * (vh[0] * vh[1] * (mdqfhigh)q->ab + vh[0] * vh[2] * 
(mdqfhigh)q->ac + vh[1] * vh[2] * (mdqfhigh)q->bc);
-    d += 2.0 * (vh[0] * (mdqfhigh)q->ad + vh[1] * (mdqfhigh)q->bd + vh[2] * 
(mdqfhigh)q->cd);
+    d = vh[0] * vh[0] * (mdqfhigh)q->a2 + vh[1] * vh[1] * (mdqfhigh)q->b2 + 
vh[2] *
+       vh[2] * (mdqfhigh)q->c2;
+    d += 2.0 * (vh[0] * vh[1] * (mdqfhigh)q->ab + vh[0] * vh[2] *
+               (mdqfhigh)q->ac + vh[1] * vh[2] * (mdqfhigh)q->bc);
+    d += 2.0 * (vh[0] * (mdqfhigh)q->ad + vh[1] * (mdqfhigh)q->bd + vh[2] *
+               (mdqfhigh)q->cd);
     d += q->d2;
 #else
     volatile mdqf d;
@@ -482,13 +521,17 @@
     vd[2] = v[2];
 
     d = vd[0] * vd[0] * q->a2 + vd[1] * vd[1] * q->b2 + vd[2] * vd[2] * q->c2;
-    d += 2.0 * (vd[0] * vd[1] * q->ab + vd[0] * vd[2] * q->ac + vd[1] * vd[2] 
* q->bc);
+    d += 2.0 * (vd[0] * vd[1] * q->ab + vd[0] * vd[2] * q->ac + vd[1] * vd[2] *
+               q->bc);
     d += 2.0 * (vd[0] * q->ad + vd[1] * q->bd + vd[2] * q->cd);
     d += q->d2;
 #endif
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-    printf("        Q Eval %f ; %f %f %f %f %f %f %f %f %f %f : %.12f\n", 
(double)q->area, (double)q->a2, (double)q->ab, (double)q->ac, (double)q->ad, 
(double)q->b2, (double)q->bc, (double)q->bd, (double)q->c2, (double)q->cd, 
(double)q->d2, (double)d);
+    printf("        Q Eval %f ; %f %f %f %f %f %f %f %f %f %f : %.12f\n",
+          (double)q->area, (double)q->a2, (double)q->ab, (double)q->ac, 
(double)q->ad,
+          (double)q->b2, (double)q->bc, (double)q->bd, (double)q->c2, 
(double)q->cd,
+          (double)q->d2, (double)d);
 #endif
 
     return (mdf)d;
@@ -674,7 +717,8 @@
     void *edgehashtable;
 
     /* Collapse penalty function */
-    mdf(*collapsepenalty)(mdf *newpoint, mdf *oldpoint, mdf *leftpoint, mdf 
*rightpoint, int *denyflag, mdf compactnesstarget);
+    mdf(*collapsepenalty)(mdf *newpoint, mdf *oldpoint, mdf *leftpoint,
+                         mdf *rightpoint, int *denyflag, mdf 
compactnesstarget);
 
     /* Custom vertex attributes besides point position */
     int attribcount;
@@ -781,7 +825,7 @@
 
 static void mdVertexFloatToNative(mdf *dst, void *src)
 {
-    float *s = (mdf *)src;
+    float *s = (float *)src;
     dst[0] = s[0];
     dst[1] = s[1];
     dst[2] = s[2];
@@ -799,7 +843,7 @@
 
 static void mdVertexNativeToFloat(void *dst, mdf *src)
 {
-    float *d = (mdf *)dst;
+    float *d = (float *)dst;
     d[0] = src[0];
     d[1] = src[1];
     d[2] = src[2];
@@ -816,7 +860,8 @@
 }
 
 
-static void mdTriangleComputeQuadric(mdMesh *mesh, mdTriangle *tri, 
mathQuadric *q)
+static void mdTriangleComputeQuadric(mdMesh *mesh, mdTriangle *tri,
+                                    mathQuadric *q)
 {
     mdf area, norm, norminv, vecta[3], vectb[3], plane[4];
     mdVertex *vertex0, *vertex1, *vertex2;
@@ -831,7 +876,7 @@
 
     norm = mdfsqrt(M3D_VectorDotProduct(plane, plane));
 
-    if (ZERO(norm)) {
+    if (!ZERO(norm)) {
        area = 0.5 * norm;
 #ifdef MD_CONFIG_AREA_QUADRICS
        norminv = 0.5;
@@ -851,7 +896,8 @@
     }
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-    printf("  Plane %f %f %f %f : Area %f\n", plane[0], plane[1], plane[2], 
plane[3], area);
+    printf("  Plane %f %f %f %f : Area %f\n", plane[0], plane[1], plane[2],
+          plane[3], area);
 #endif
 
     mathQuadricInit(q, plane[0], plane[1], plane[2], plane[3], area);
@@ -878,14 +924,16 @@
        bestcost = mathQuadricEvaluate(&q, midpoint);
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-       printf("        MidCost %f %f %f : %f\n", midpoint[0], midpoint[1], 
midpoint[2], bestcost);
+       printf("        MidCost %f %f %f : %f\n", midpoint[0], midpoint[1], 
midpoint[2],
+              bestcost);
 #endif
 
        bestpoint = midpoint;
        cost = mathQuadricEvaluate(&q, vertex0->point);
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-       printf("        Vx0Cost %f %f %f : %f\n", vertex0->point[0], 
vertex0->point[1], vertex0->point[2], cost);
+       printf("        Vx0Cost %f %f %f : %f\n", vertex0->point[0], 
vertex0->point[1],
+              vertex0->point[2], cost);
 #endif
 
        if (cost < bestcost) {
@@ -896,7 +944,8 @@
        cost = mathQuadricEvaluate(&q, vertex1->point);
 
 #ifdef DEBUG_VERBOSE_QUADRIC
-       printf("        Vx1Cost %f %f %f : %f\n", vertex1->point[0], 
vertex1->point[1], vertex1->point[2], cost);
+       printf("        Vx1Cost %f %f %f : %f\n", vertex1->point[0], 
vertex1->point[1],
+              vertex1->point[2], cost);
 #endif
 
        if (cost < bestcost) {
@@ -914,7 +963,8 @@
 /****/
 
 
-static void mdMeshAccumulateBoundary(mdVertex *vertex0, mdVertex *vertex1, 
mdVertex *vertex2)
+static void mdMeshAccumulateBoundary(mdVertex *vertex0, mdVertex *vertex1,
+                                    mdVertex *vertex2)
 {
     mdf normal[3], sideplane[4], vecta[3], vectb[3], norm, norminv, area;
     mathQuadric q;
@@ -922,7 +972,8 @@
     M3D_VectorSubStore(vecta, vertex1->point, vertex0->point);
     M3D_VectorSubStore(vectb, vertex2->point, vertex0->point);
     M3D_VectorCrossProduct(normal, vectb, vecta);
-    norm = mdfsqrt(normal[0] * normal[0] + normal[1] * normal[1] + normal[2] * 
normal[2]);
+    norm = mdfsqrt(normal[0] * normal[0] + normal[1] * normal[1] + normal[2] *
+                  normal[2]);
     area = 0.5 * norm;
     norminv = 1.0 / norm;
     M3D_VectorMulScalar(normal, norminv);
@@ -938,10 +989,12 @@
 
 #ifdef DEBUG_VERBOSE_BOUNDARY
     printf("  Area %f\n", area);
-    printf("  Boundary %f %f %f %f\n", sideplane[0], sideplane[1], 
sideplane[2], sideplane[3]);
+    printf("  Boundary %f %f %f %f\n", sideplane[0], sideplane[1], 
sideplane[2],
+          sideplane[3]);
 #endif
 
-    mathQuadricInit(&q, sideplane[0], sideplane[1], sideplane[2], 
sideplane[3], area);
+    mathQuadricInit(&q, sideplane[0], sideplane[1], sideplane[2], sideplane[3],
+                   area);
     mathQuadricMul(&q, MD_BOUNDARY_WEIGHT);
     /*
       mathQuadricMul( &q, area * MD_BOUNDARY_WEIGHT );
@@ -1056,7 +1109,8 @@
     NULL
 };
 
-static int mdMeshHashInit(mdMesh *mesh, size_t trianglecount, mdf 
hashextrabits, uint32_t lockpageshift, size_t maxmemorysize)
+static int mdMeshHashInit(mdMesh *mesh, size_t trianglecount, mdf 
hashextrabits,
+                         uint32_t lockpageshift, size_t maxmemorysize)
 {
     size_t edgecount, hashmemsize, meshmemsize, totalmemorysize;
     uint32_t hashbits, hashbitsmin, hashbitsmax;
@@ -1087,7 +1141,8 @@
     else if (lockpageshift > 16)
        lockpageshift = 16;
 
-    meshmemsize = (mesh->tricount * sizeof(mdTriangle)) + (mesh->vertexcount * 
sizeof(mdVertex));
+    meshmemsize = (mesh->tricount * sizeof(mdTriangle)) + (mesh->vertexcount *
+                 sizeof(mdVertex));
 
     for (; ; hashbits--) {
        if (hashbits < hashbitsmin)
@@ -1101,8 +1156,10 @@
 
 #ifdef DEBUG_VERBOSE_MEMORY
        printf("  Hash bits : %d (%d)\n", hashbits, hashbitsmin);
-       printf("    Estimated Memory Requirements : %lld bytes (%lld MB)\n", 
(long long)totalmemorysize, (long long)totalmemorysize >> 20);
-       printf("    Memory Hard Limit : %lld bytes (%lld MB)\n", (long 
long)maxmemorysize, (long long)maxmemorysize >> 20);
+       printf("    Estimated Memory Requirements : %lld bytes (%lld MB)\n",
+              (long long)totalmemorysize, (long long)totalmemorysize >> 20);
+       printf("    Memory Hard Limit : %lld bytes (%lld MB)\n",
+              (long long)maxmemorysize, (long long)maxmemorysize >> 20);
 #endif
 
        if (totalmemorysize > maxmemorysize)
@@ -1114,7 +1171,8 @@
            break;
     }
 
-    mmHashInit(mesh->edgehashtable, &mdEdgeHashEdge, sizeof(mdEdge), hashbits, 
lockpageshift, MM_HASH_FLAGS_NO_COUNT);
+    mmHashInit(mesh->edgehashtable, &mdEdgeHashEdge, sizeof(mdEdge), hashbits,
+              lockpageshift, MM_HASH_FLAGS_NO_COUNT);
 
     return 1;
 }
@@ -1215,7 +1273,8 @@
     return;
 }
 
-static void mdUpdateBufferAdd(mdUpdateBuffer *updatebuffer, mdOp *op, int 
orflags)
+static void mdUpdateBufferAdd(mdUpdateBuffer *updatebuffer, mdOp *op,
+                             int orflags)
 {
     int32_t flags;
 
@@ -1231,7 +1290,8 @@
            return;
        }
 
-       if (mmAtomicCmpReplace32(&op->flags, flags, flags | orflags | 
MD_OP_FLAGS_UPDATE_QUEUED | MD_OP_FLAGS_UPDATE_NEEDED))
+       if (mmAtomicCmpReplace32(&op->flags, flags,
+                                flags | orflags | MD_OP_FLAGS_UPDATE_QUEUED | 
MD_OP_FLAGS_UPDATE_NEEDED))
            break;
     }
 
@@ -1240,7 +1300,8 @@
 
     if (updatebuffer->opcount >= updatebuffer->opalloc) {
        updatebuffer->opalloc <<= 1;
-       updatebuffer->opbuffer = (void **)realloc(updatebuffer->opbuffer, 
updatebuffer->opalloc * sizeof(mdOp *));
+       updatebuffer->opbuffer = (void **)realloc(updatebuffer->opbuffer,
+                                updatebuffer->opalloc * sizeof(mdOp *));
     }
 
     updatebuffer->opbuffer[ updatebuffer->opcount++ ] = op;
@@ -1266,7 +1327,8 @@
 
     if (updatebuffer->opcount >= updatebuffer->opalloc) {
        updatebuffer->opalloc <<= 1;
-       updatebuffer->opbuffer = realloc(updatebuffer->opbuffer, 
updatebuffer->opalloc * sizeof(mdOp *));
+       updatebuffer->opbuffer = realloc(updatebuffer->opbuffer,
+                                        updatebuffer->opalloc * sizeof(mdOp 
*));
     }
 
     updatebuffer->opbuffer[ updatebuffer->opcount++ ] = op;
@@ -1283,10 +1345,12 @@
 
 #define MD_COMPACTNESS_NORMALIZATION_FACTOR (0.5*4.0*1.732050808)
 
-static mdf mdEdgeCollapsePenaltyTriangle(mdf *newpoint, mdf *oldpoint, mdf 
*leftpoint, mdf *rightpoint, int *denyflag, mdf compactnesstarget)
+static mdf mdEdgeCollapsePenaltyTriangle(mdf *newpoint, mdf *oldpoint,
+       mdf *leftpoint, mdf *rightpoint, int *denyflag, mdf compactnesstarget)
 {
     mdf penalty, compactness, oldcompactness, newcompactness, vecta2, norm;
-    mdf vecta[3], oldvectb[3], oldvectc[3], newvectb[3], newvectc[3], 
oldnormal[3], newnormal[3];
+    mdf vecta[3], oldvectb[3], oldvectc[3], newvectb[3], newvectc[3], 
oldnormal[3],
+       newnormal[3];
 
     /* Normal of old triangle */
     M3D_VectorSubStore(vecta, rightpoint, leftpoint);
@@ -1307,13 +1371,18 @@
     penalty = 0.0;
     vecta2 = M3D_VectorDotProduct(vecta, vecta);
     M3D_VectorSubStore(newvectc, newpoint, rightpoint);
-    newcompactness = MD_COMPACTNESS_NORMALIZATION_FACTOR * 
mdfsqrt(M3D_VectorDotProduct(newnormal, newnormal));
-    norm = vecta2 + M3D_VectorDotProduct(newvectb, newvectb) + 
M3D_VectorDotProduct(newvectc, newvectc);
+    newcompactness = MD_COMPACTNESS_NORMALIZATION_FACTOR * mdfsqrt(
+                        M3D_VectorDotProduct(newnormal, newnormal));
+    norm = vecta2 + M3D_VectorDotProduct(newvectb,
+                                        newvectb) + 
M3D_VectorDotProduct(newvectc, newvectc);
 
     if (newcompactness < (compactnesstarget * norm)) {
        newcompactness /= norm;
        M3D_VectorSubStore(oldvectc, oldpoint, rightpoint);
-       oldcompactness = (MD_COMPACTNESS_NORMALIZATION_FACTOR * 
mdfsqrt(M3D_VectorDotProduct(oldnormal, oldnormal))) / (vecta2 + 
M3D_VectorDotProduct(oldvectb, oldvectb) + M3D_VectorDotProduct(oldvectc, 
oldvectc));
+       oldcompactness = (MD_COMPACTNESS_NORMALIZATION_FACTOR * mdfsqrt(
+                             M3D_VectorDotProduct(oldnormal,
+                                     oldnormal))) / (vecta2 + 
M3D_VectorDotProduct(oldvectb,
+                                             oldvectb) + 
M3D_VectorDotProduct(oldvectc, oldvectc));
        compactness = FMIN(compactnesstarget, oldcompactness) - newcompactness;
 
        if (compactness > 0.0)
@@ -1324,13 +1393,16 @@
 }
 
 
-static mdf mdEdgeCollapsePenaltyAll(mdMesh *mesh, mdThreadData *UNUSED(tdata), 
mdi *trireflist, mdi trirefcount, mdi pivotindex, mdi skipindex, mdf 
*collapsepoint, int *denyflag)
+static mdf mdEdgeCollapsePenaltyAll(mdMesh *mesh, mdThreadData *UNUSED(tdata),
+                                   mdi *trireflist, mdi trirefcount, mdi 
pivotindex, mdi skipindex,
+                                   mdf *collapsepoint, int *denyflag)
 {
     int vindex;
     mdf penalty;
     mdi triindex;
     mdTriangle *tri;
-    mdf(*collapsepenalty)(mdf * newpoint, mdf * oldpoint, mdf * leftpoint, mdf 
* rightpoint, int *denyflag, mdf compactnesstarget);
+    mdf(*collapsepenalty)(mdf * newpoint, mdf * oldpoint, mdf * leftpoint,
+                         mdf * rightpoint, int *denyflag, mdf 
compactnesstarget);
 
     collapsepenalty = mesh->collapsepenalty;
     penalty = 0.0;
@@ -1346,7 +1418,8 @@
            continue;
 
 #ifdef DEBUG_VERBOSE_PENALTY
-       printf("    Penalty Tri %d,%d,%d ( Pivot %d ; Skip %d )\n", tri->v[0], 
tri->v[1], tri->v[2], pivotindex, skipindex);
+       printf("    Penalty Tri %d,%d,%d ( Pivot %d ; Skip %d )\n", tri->v[0],
+              tri->v[1], tri->v[2], pivotindex, skipindex);
 #endif
 
 #ifdef DEBUG_DEBUG
@@ -1360,17 +1433,23 @@
            if ((tri->v[1] == skipindex) || (tri->v[2] == skipindex))
                continue;
 
-           penalty += collapsepenalty(collapsepoint, mesh->vertexlist[ 
tri->v[0] ].point, mesh->vertexlist[ tri->v[2] ].point, mesh->vertexlist[ 
tri->v[1] ].point, denyflag, mesh->compactnesstarget);
+           penalty += collapsepenalty(collapsepoint, mesh->vertexlist[ 
tri->v[0] ].point,
+                                      mesh->vertexlist[ tri->v[2] ].point, 
mesh->vertexlist[ tri->v[1] ].point,
+                                      denyflag, mesh->compactnesstarget);
        } else if (tri->v[1] == pivotindex) {
            if ((tri->v[2] == skipindex) || (tri->v[0] == skipindex))
                continue;
 
-           penalty += collapsepenalty(collapsepoint, mesh->vertexlist[ 
tri->v[1] ].point, mesh->vertexlist[ tri->v[0] ].point, mesh->vertexlist[ 
tri->v[2] ].point, denyflag, mesh->compactnesstarget);
+           penalty += collapsepenalty(collapsepoint, mesh->vertexlist[ 
tri->v[1] ].point,
+                                      mesh->vertexlist[ tri->v[0] ].point, 
mesh->vertexlist[ tri->v[2] ].point,
+                                      denyflag, mesh->compactnesstarget);
        } else if (tri->v[2] == pivotindex) {
            if ((tri->v[0] == skipindex) || (tri->v[1] == skipindex))
                continue;
 
-           penalty += collapsepenalty(collapsepoint, mesh->vertexlist[ 
tri->v[2] ].point, mesh->vertexlist[ tri->v[1] ].point, mesh->vertexlist[ 
tri->v[0] ].point, denyflag, mesh->compactnesstarget);
+           penalty += collapsepenalty(collapsepoint, mesh->vertexlist[ 
tri->v[2] ].point,
+                                      mesh->vertexlist[ tri->v[1] ].point, 
mesh->vertexlist[ tri->v[0] ].point,
+                                      denyflag, mesh->compactnesstarget);
        } else {
 #ifdef DEBUG_DEBUG
            bu_bomb("SHOULD NOT HAPPEN");
@@ -1395,7 +1474,8 @@
 }
 
 
-static mdf mdEdgeCollapsePenalty(mdMesh *mesh, mdThreadData *tdata, mdi v0, 
mdi v1, mdf *collapsepoint, int *denyflag)
+static mdf mdEdgeCollapsePenalty(mdMesh *mesh, mdThreadData *tdata, mdi v0,
+                                mdi v1, mdf *collapsepoint, int *denyflag)
 {
     mdf penalty, collapsearea, penaltyfactor;
     mdVertex *vertex0, *vertex1;
@@ -1404,18 +1484,24 @@
     vertex1 = &mesh->vertexlist[ v1 ];
 
     collapsearea = vertex0->quadric.area + vertex1->quadric.area;
-    penaltyfactor = collapsearea * collapsearea / (vertex0->trirefcount + 
vertex1->trirefcount);
+    penaltyfactor = collapsearea * collapsearea / (vertex0->trirefcount +
+                   vertex1->trirefcount);
 
 #ifdef DEBUG_VERBOSE_PENALTY
     printf("  Compute Penalty Edge %d,%d\n", v0, v1);
 #endif
 
     *denyflag = 0;
-    penalty  = mdEdgeCollapsePenaltyAll(mesh, tdata, &mesh->trireflist[ 
vertex0->trirefbase ], vertex0->trirefcount, v0, v1, collapsepoint, denyflag);
-    penalty += mdEdgeCollapsePenaltyAll(mesh, tdata, &mesh->trireflist[ 
vertex1->trirefbase ], vertex1->trirefcount, v1, v0, collapsepoint, denyflag);
+    penalty  = mdEdgeCollapsePenaltyAll(mesh, tdata,
+                                       &mesh->trireflist[ vertex0->trirefbase 
], vertex0->trirefcount, v0, v1,
+                                       collapsepoint, denyflag);
+    penalty += mdEdgeCollapsePenaltyAll(mesh, tdata,
+                                       &mesh->trireflist[ vertex1->trirefbase 
], vertex1->trirefcount, v1, v0,
+                                       collapsepoint, denyflag);
 
 #ifdef DEBUG_VERBOSE_PENALTY
-    printf("    Penalty Total : %f * %f -> %f\n", penalty, penaltyfactor, 
penalty * penaltyfactor);
+    printf("    Penalty Total : %f * %f -> %f\n", penalty, penaltyfactor,
+          penalty * penaltyfactor);
 #endif
 
     penalty *= penaltyfactor;
@@ -1454,11 +1540,13 @@
     op->updatebuffer = tdata->updatebuffer;
     op->v0 = v0;
     op->v1 = v1;
-    op->value = mdEdgeSolvePoint(&mesh->vertexlist[v0], &mesh->vertexlist[v1], 
op->collapsepoint);
+    op->value = mdEdgeSolvePoint(&mesh->vertexlist[v0], &mesh->vertexlist[v1],
+                                op->collapsepoint);
 #ifdef MD_CONFIG_SSE_SUPPORT
     op->collapsepoint[3] = 0.0;
 #endif
-    op->penalty = mdEdgeCollapsePenalty(mesh, tdata, v0, v1, 
op->collapsepoint, &denyflag);
+    op->penalty = mdEdgeCollapsePenalty(mesh, tdata, v0, v1, op->collapsepoint,
+                                       &denyflag);
     op->collapsecost = op->value + op->penalty;
 
     if ((denyflag) || (op->collapsecost > mesh->maxcollapsecost))
@@ -1477,17 +1565,21 @@
     edge.v[0] = v0;
     edge.v[1] = v1;
 
-    if (mmHashLockCallEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
mdMeshEdgeOpCallback, op, 0) != MM_HASH_SUCCESS)
+    if (mmHashLockCallEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                           mdMeshEdgeOpCallback, op, 0) != MM_HASH_SUCCESS)
        bu_bomb("SHOULD NOT HAPPEN");
 
 #ifdef DEBUG_VERBOSE_COLLAPSE
-    printf("  Solve Edge %d,%d ; Point %f %f %f ; Value %f ; Penalty %f ; Cost 
%f\n", (int)op->v0, (int)op->v1, op->collapsepoint[0], op->collapsepoint[1], 
op->collapsepoint[2], op->value, op->penalty, op->collapsecost);
+    printf("  Solve Edge %d,%d ; Point %f %f %f ; Value %f ; Penalty %f ; Cost 
%f\n",
+          (int)op->v0, (int)op->v1, op->collapsepoint[0], op->collapsepoint[1],
+          op->collapsepoint[2], op->value, op->penalty, op->collapsecost);
 #endif
 
     return;
 }
 
-static void mdMeshPopulateOpList(mdMesh *mesh, mdThreadData *tdata, mdi 
tribase, mdi tricount)
+static void mdMeshPopulateOpList(mdMesh *mesh, mdThreadData *tdata, mdi 
tribase,
+                                mdi tricount)
 {
     mdTriangle *tri, *tristart, *triend;
     long populatecount;
@@ -1523,7 +1615,8 @@
 
 
 /* Merge vertex attributes of v0 and v1, write to v0 */
-static void mdEdgeCollapseAttrib(mdMesh *mesh, mdThreadData *UNUSED(tdata), 
mdi v0, mdi v1, mdf *collapsepoint)
+static void mdEdgeCollapseAttrib(mdMesh *mesh, mdThreadData *UNUSED(tdata),
+                                mdi v0, mdi v1, mdf *collapsepoint)
 {
     int vindex;
     mdVertex *vertex0, *vertex1;
@@ -1569,19 +1662,20 @@
            attr0pf = (float *)attr0p;
            attr1pf = (float *)attr1p;
 
-           for (vindex = 0 ; vindex < (mdi)attrib->count ; vindex++)
-               attr0pf[vindex] = (attr0pf[vindex] * (float)weight0) + 
(attr1pf[vindex] * (float)weight1);
+           for (vindex = 0 ; vindex < (int)attrib->count ; vindex++)
+               attr0pf[vindex] = (attr0pf[vindex] * (float)weight0) + 
(attr1pf[vindex] *
+                                 (float)weight1);
 
            if (attrib->flags & MD_ATTRIB_FLAGS_NORMALIZE) {
                sumf = 0.0;
 
-               for (vindex = 0 ; vindex < (mdi)attrib->count ; vindex++)
+               for (vindex = 0 ; vindex < (int)attrib->count ; vindex++)
                    sumf += attr0pf[vindex] * attr0pf[vindex];
 
                if (!ZERO(sumf)) {
                    suminvf = 1.0 / sumf;
 
-                   for (vindex = 0 ; vindex < (mdi)attrib->count ; vindex++)
+                   for (vindex = 0 ; vindex < (int)attrib->count ; vindex++)
                        attr0pf[vindex] *= suminvf;
                }
            }
@@ -1589,19 +1683,20 @@
            attr0pd = (double *)attr0p;
            attr1pd = (double *)attr1p;
 
-           for (vindex = 0 ; vindex < (mdi)attrib->count ; vindex++)
-               attr0pd[vindex] = (attr0pd[vindex] * (double)weight0) + 
(attr1pd[vindex] * (double)weight1);
+           for (vindex = 0 ; vindex < (int)attrib->count ; vindex++)
+               attr0pd[vindex] = (attr0pd[vindex] * (double)weight0) + 
(attr1pd[vindex] *
+                                 (double)weight1);
 
            if (attrib->flags & MD_ATTRIB_FLAGS_NORMALIZE) {
                sumd = 0.0;
 
-               for (vindex = 0 ; vindex < (mdi)attrib->count ; vindex++)
+               for (vindex = 0 ; vindex < (int)attrib->count ; vindex++)
                    sumd += attr0pd[vindex] * attr0pd[vindex];
 
                if (!ZERO(sumd)) {
                    suminvd = 1.0 / sumd;
 
-                   for (vindex = 0 ; vindex < (mdi)attrib->count ; vindex++)
+                   for (vindex = 0 ; vindex < (int)attrib->count ; vindex++)
                        attr0pd[vindex] *= suminvd;
                }
            }
@@ -1613,7 +1708,8 @@
 
 
 /* Delete triangle and return outer vertex */
-static mdi mdEdgeCollapseDeleteTriangle(mdMesh *mesh, mdThreadData *tdata, mdi 
v0, mdi v1, int *retdelflags)
+static mdi mdEdgeCollapseDeleteTriangle(mdMesh *mesh, mdThreadData *tdata,
+                                       mdi v0, mdi v1, int *retdelflags)
 {
     int delflags = 0;
     mdi outer = 0;
@@ -1627,13 +1723,15 @@
     edge.v[0] = v0;
     edge.v[1] = v1;
 
-    if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 1) 
!= MM_HASH_SUCCESS)
+    if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                             1) != MM_HASH_SUCCESS)
        return -1;
 
     op = (mdOp *)edge.op;
 
     if (op)
-       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >> 
mesh->updatebuffershift ], op, MD_OP_FLAGS_DELETION_PENDING);
+       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >>
+                                            mesh->updatebuffershift ], op, 
MD_OP_FLAGS_DELETION_PENDING);
 
     tri = &mesh->trilist[ edge.triindex ];
 
@@ -1645,39 +1743,45 @@
        edge.v[0] = tri->v[0];
        edge.v[1] = tri->v[1];
 
-       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
1) != MM_HASH_SUCCESS)
+       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                                 1) != MM_HASH_SUCCESS)
            bu_bomb("SHOULD NOT HAPPEN");
 
        op = (mdOp *)edge.op;
 
        if (op)
-           mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >> 
mesh->updatebuffershift ], op, MD_OP_FLAGS_DELETION_PENDING);
+           mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >>
+                                                mesh->updatebuffershift ], op, 
MD_OP_FLAGS_DELETION_PENDING);
     }
 
     if (tri->v[1] != v0) {
        edge.v[0] = tri->v[1];
        edge.v[1] = tri->v[2];
 
-       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
1) != MM_HASH_SUCCESS)
+       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                                 1) != MM_HASH_SUCCESS)
            bu_bomb("SHOULD NOT HAPPEN");
 
        op = (mdOp *)edge.op;
 
        if (op)
-           mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >> 
mesh->updatebuffershift ], op, MD_OP_FLAGS_DELETION_PENDING);
+           mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >>
+                                                mesh->updatebuffershift ], op, 
MD_OP_FLAGS_DELETION_PENDING);
     }
 
     if (tri->v[2] != v0) {
        edge.v[0] = tri->v[2];
        edge.v[1] = tri->v[0];
 
-       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
1) != MM_HASH_SUCCESS)
+       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                                 1) != MM_HASH_SUCCESS)
            bu_bomb("SHOULD NOT HAPPEN");
 
        op = (mdOp *)edge.op;
 
        if (op)
-           mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >> 
mesh->updatebuffershift ], op, MD_OP_FLAGS_DELETION_PENDING);
+           mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >>
+                                                mesh->updatebuffershift ], op, 
MD_OP_FLAGS_DELETION_PENDING);
     }
 
     /* Determine outer vertex */
@@ -1721,33 +1825,38 @@
 }
 
 
-static void mdEdgeCollapseUpdateTriangle(mdMesh *mesh, mdThreadData *tdata, 
mdTriangle *tri, mdi newv, int pivot, int left, int right)
+static void mdEdgeCollapseUpdateTriangle(mdMesh *mesh, mdThreadData *tdata,
+       mdTriangle *tri, mdi newv, int pivot, int left, int right)
 {
     mdEdge edge;
     mdOp *op;
-    /* 2012-10-22 ch3: vertex set but never used, so commented */
-    /*mdVertex *vertex;*/
+    /* 2012-10-22 ch3: vertex set but never used, so commented
+    /mdVertex *vertex; */
 
-    memset(&edge, 0, sizeof(mdEdge));    /* DRH added so it's initialized */
+    memset(&edge, 0, sizeof(mdEdge));    /*DRH added so it's initialized*/
 
 #ifdef DEBUG_VERBOSE_COLLAPSE
-    printf("  Collapse Update %d : Tri %d,%d,%d\n", newv, tri->v[pivot], 
tri->v[right], tri->v[left]);
+    printf("  Collapse Update %d : Tri %d,%d,%d\n", newv, tri->v[pivot],
+          tri->v[right], tri->v[left]);
 #endif
 
-    /* vertex = &mesh->vertexlist[ tri->v[right] ]; */
+    /*vertex = &mesh->vertexlist[ tri->v[right] ]; */
     edge.v[0] = tri->v[pivot];
     edge.v[1] = tri->v[right];
 
     if (edge.v[0] == newv) {
-       if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge) != 
MM_HASH_SUCCESS)
+       if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge,
+                               &edge) != MM_HASH_SUCCESS)
            bu_bomb("SHOULD NOT HAPPEN");
     } else {
-       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
1) != MM_HASH_SUCCESS)
+       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                                 1) != MM_HASH_SUCCESS)
            bu_bomb("SHOULD NOT HAPPEN");
 
        edge.v[0] = newv;
 
-       if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 1) 
!= MM_HASH_SUCCESS)
+       if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                              1) != MM_HASH_SUCCESS)
            bu_bomb("SHOULD NOT HAPPEN");
     }
 
@@ -1755,27 +1864,36 @@
 
     if (op) {
 #ifdef DEBUG_VERBOSE_COLLAPSE
-       printf("    Update Edge %d,%d Before ; Point %f %f %f ; Cost %f\n", 
op->v0, op->v1, op->collapsepoint[0], op->collapsepoint[1], 
op->collapsepoint[2], op->collapsecost);
+       printf("    Update Edge %d,%d Before ; Point %f %f %f ; Cost %f\n", 
op->v0,
+              op->v1, op->collapsepoint[0], op->collapsepoint[1], 
op->collapsepoint[2],
+              op->collapsecost);
 #endif
 
 #ifdef MD_CONFIG_DELAYED_OP_REDIRECT
-       op->value = mdEdgeSolvePoint(&mesh->vertexlist[edge.v[0]], 
&mesh->vertexlist[edge.v[1]], op->collapsepoint);
+       op->value = mdEdgeSolvePoint(&mesh->vertexlist[edge.v[0]],
+                                    &mesh->vertexlist[edge.v[1]], 
op->collapsepoint);
 #ifdef MD_CONFIG_SSE_SUPPORT
        op->collapsepoint[3] = 0.0;
 #endif
-       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >> 
mesh->updatebuffershift ], op, 0x0);
+       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >>
+                                            mesh->updatebuffershift ], op, 
0x0);
 #else
        op->v0 = newv;
-       op->value = mdEdgeSolvePoint(&mesh->vertexlist[op->v0], 
&mesh->vertexlist[op->v1], op->collapsepoint);
+       op->value = mdEdgeSolvePoint(&mesh->vertexlist[op->v0],
+                                    &mesh->vertexlist[op->v1], 
op->collapsepoint);
 #ifdef MD_CONFIG_SSE_SUPPORT
        op->collapsepoint[3] = 0.0;
 #endif
-       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >> 
mesh->updatebuffershift ], op, 0x0);
+       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >>
+                                            mesh->updatebuffershift ], op, 
0x0);
 #endif
 
 #ifdef DEBUG_VERBOSE_COLLAPSE
-       printf("    Update Edge %d,%d After  ; Point %f %f %f ; Cost %f\n", 
op->v0, op->v1, op->collapsepoint[0], op->collapsepoint[1], 
op->collapsepoint[2], op->collapsecost);
-       printf("    Edge %d,%d ; Value %f ; Penalty %f ; Cost %f\n", op->v0, 
op->v1, op->value, op->penalty, op->collapsecost);
+       printf("    Update Edge %d,%d After  ; Point %f %f %f ; Cost %f\n", 
op->v0,
+              op->v1, op->collapsepoint[0], op->collapsepoint[1], 
op->collapsepoint[2],
+              op->collapsecost);
+       printf("    Edge %d,%d ; Value %f ; Penalty %f ; Cost %f\n", op->v0, 
op->v1,
+              op->value, op->penalty, op->collapsecost);
 #endif
     }
 
@@ -1784,15 +1902,18 @@
     edge.v[1] = tri->v[pivot];
 
     if (edge.v[1] == newv) {
-       if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge) != 
MM_HASH_SUCCESS)
+       if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge,
+                               &edge) != MM_HASH_SUCCESS)
            bu_bomb("SHOULD NOT HAPPEN");
     } else {
-       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
1) != MM_HASH_SUCCESS)
+       if (mmHashLockDeleteEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                                 1) != MM_HASH_SUCCESS)
            bu_bomb("SHOULD NOT HAPPEN");
 
        edge.v[1] = newv;
 
-       if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 1) 
!= MM_HASH_SUCCESS)
+       if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                              1) != MM_HASH_SUCCESS)
            bu_bomb("SHOULD NOT HAPPEN");
     }
 
@@ -1800,27 +1921,36 @@
 
     if (op) {
 #ifdef DEBUG_VERBOSE_COLLAPSE
-       printf("    Update Edge %d,%d Before ; Point %f %f %f ; Cost %f\n", 
op->v0, op->v1, op->collapsepoint[0], op->collapsepoint[1], 
op->collapsepoint[2], op->collapsecost);
+       printf("    Update Edge %d,%d Before ; Point %f %f %f ; Cost %f\n", 
op->v0,
+              op->v1, op->collapsepoint[0], op->collapsepoint[1], 
op->collapsepoint[2],
+              op->collapsecost);
 #endif
 
 #ifdef MD_CONFIG_DELAYED_OP_REDIRECT
-       op->value = mdEdgeSolvePoint(&mesh->vertexlist[edge.v[0]], 
&mesh->vertexlist[edge.v[1]], op->collapsepoint);
+       op->value = mdEdgeSolvePoint(&mesh->vertexlist[edge.v[0]],
+                                    &mesh->vertexlist[edge.v[1]], 
op->collapsepoint);
 #ifdef MD_CONFIG_SSE_SUPPORT
        op->collapsepoint[3] = 0.0;
 #endif
-       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >> 
mesh->updatebuffershift ], op, 0x0);
+       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >>
+                                            mesh->updatebuffershift ], op, 
0x0);
 #else
        op->v1 = newv;
-       op->value = mdEdgeSolvePoint(&mesh->vertexlist[op->v0], 
&mesh->vertexlist[op->v1], op->collapsepoint);
+       op->value = mdEdgeSolvePoint(&mesh->vertexlist[op->v0],
+                                    &mesh->vertexlist[op->v1], 
op->collapsepoint);
 #ifdef MD_CONFIG_SSE_SUPPORT
        op->collapsepoint[3] = 0.0;
 #endif
-       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >> 
mesh->updatebuffershift ], op, 0x0);
+       mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >>
+                                            mesh->updatebuffershift ], op, 
0x0);
 #endif
 
 #ifdef DEBUG_VERBOSE_COLLAPSE
-       printf("    Update Edge %d,%d After  ; Point %f %f %f ; Cost %f\n", 
op->v0, op->v1, op->collapsepoint[0], op->collapsepoint[1], 
op->collapsepoint[2], op->collapsecost);
-       printf("    Edge %d,%d ; Value %f ; Penalty %f ; Cost %f\n", op->v0, 
op->v1, op->value, op->penalty, op->collapsecost);
+       printf("    Update Edge %d,%d After  ; Point %f %f %f ; Cost %f\n", 
op->v0,
+              op->v1, op->collapsepoint[0], op->collapsepoint[1], 
op->collapsepoint[2],
+              op->collapsecost);
+       printf("    Edge %d,%d ; Value %f ; Penalty %f ; Cost %f\n", op->v0, 
op->v1,
+              op->value, op->penalty, op->collapsecost);
 #endif
     }
 
@@ -1835,7 +1965,8 @@
 - Update cost of collapse for other edges of triangles
 - Build up the updated list of triangle references for new vertex
 */
-static mdi *mdEdgeCollapseUpdateAll(mdMesh *mesh, mdThreadData *tdata, mdi 
*trireflist, mdi trirefcount, mdi oldv, mdi newv, mdi *trirefstore)
+static mdi *mdEdgeCollapseUpdateAll(mdMesh *mesh, mdThreadData *tdata,
+                                   mdi *trireflist, mdi trirefcount, mdi oldv, 
mdi newv, mdi *trirefstore)
 {
     int vindex;
     mdi triindex;
@@ -1869,16 +2000,18 @@
 }
 
 
-static void mdVertexInvalidateTri(mdMesh *mesh, mdThreadData *tdata, mdi v0, 
mdi v1)
+static void mdVertexInvalidateTri(mdMesh *mesh, mdThreadData *tdata, mdi v0,
+                                 mdi v1)
 {
     mdEdge edge;
     mdOp *op;
 
-    memset(&edge, 0, sizeof(mdEdge));    /* DRH added so it's initialized */
+    memset(&edge, 0, sizeof(mdEdge));    /*DRH added so it's initialized*/
     edge.v[0] = v0;
     edge.v[1] = v1;
 
-    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge) != 
MM_HASH_SUCCESS)
+    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge,
+                           &edge) != MM_HASH_SUCCESS)
        bu_bomb("SHOULD NOT HAPPEN");
 
     op = (mdOp *)edge.op;
@@ -1886,12 +2019,14 @@
     if (!(op))
        return;
 
-    mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >> 
mesh->updatebuffershift ], op, 0x0);
+    mdUpdateBufferAdd(&op->updatebuffer[ tdata->threadid >>
+                                        mesh->updatebuffershift ], op, 0x0);
 
     return;
 }
 
-static void mdVertexInvalidate(mdMesh *mesh, mdThreadData *tdata, mdi 
vertexindex)
+static void mdVertexInvalidate(mdMesh *mesh, mdThreadData *tdata,
+                              mdi vertexindex)
 {
     mdi vindex, triindex, trirefcount;
     mdi *trireflist;
@@ -1926,7 +2061,8 @@
     return;
 }
 
-static void mdVertexInvalidateAll(mdMesh *mesh, mdThreadData *tdata, mdi 
*trireflist, mdi trirefcount, mdi pivotindex)
+static void mdVertexInvalidateAll(mdMesh *mesh, mdThreadData *tdata,
+                                 mdi *trireflist, mdi trirefcount, mdi 
pivotindex)
 {
     int vindex;
     mdi triindex;
@@ -1956,7 +2092,8 @@
 }
 
 
-static void mdEdgeCollapseLinkOuter(mdMesh *mesh, mdThreadData *tdata, mdi 
newv, mdi outer)
+static void mdEdgeCollapseLinkOuter(mdMesh *mesh, mdThreadData *tdata, mdi 
newv,
+                                   mdi outer)
 {
     int sideflags;
     mdEdge edge;
@@ -1970,7 +2107,8 @@
     edge.v[0] = newv;
     edge.v[1] = outer;
 
-    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge) == 
MM_HASH_SUCCESS) {
+    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge,
+                           &edge) == MM_HASH_SUCCESS) {
        sideflags |= 0x1;
        op = (mdOp *)edge.op;
 
@@ -1981,7 +2119,8 @@
     edge.v[0] = outer;
     edge.v[1] = newv;
 
-    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge) == 
MM_HASH_SUCCESS) {
+    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge,
+                           &edge) == MM_HASH_SUCCESS) {
        sideflags |= 0x2;
        op = (mdOp *)edge.op;
 
@@ -2007,13 +2146,15 @@
     edge.v[0] = v1;
     edge.v[1] = v0;
 
-    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge) == 
MM_HASH_SUCCESS)
+    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge,
+                           &edge) == MM_HASH_SUCCESS)
        return;
 
     edge.v[0] = v0;
     edge.v[1] = v1;
 
-    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge) != 
MM_HASH_SUCCESS)
+    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge,
+                           &edge) != MM_HASH_SUCCESS)
        return;
 
     tri = &mesh->trilist[ edge.triindex ];
@@ -2088,7 +2229,8 @@
     return;
 }
 
-void mdLockBufferUnlockAll(mdMesh *mesh, mdThreadData *tdata, mdLockBuffer 
*buffer)
+void mdLockBufferUnlockAll(mdMesh *mesh, mdThreadData *tdata,
+                          mdLockBuffer *buffer)
 {
     int vindex;
     mdVertex *vertex;
@@ -2115,7 +2257,8 @@
 }
 
 /* If it fails, release all locks */
-int mdLockBufferTryLock(mdMesh *mesh, mdThreadData *tdata, mdLockBuffer 
*buffer, mdi vertexindex)
+int mdLockBufferTryLock(mdMesh *mesh, mdThreadData *tdata, mdLockBuffer 
*buffer,
+                       mdi vertexindex)
 {
     int32_t owner;
     mdVertex *vertex;
@@ -2127,7 +2270,8 @@
     if (owner == tdata->threadid)
        return 1;
 
-    if ((owner != -1) || !(mmAtomicCmpReplace32(&vertex->atomicowner, -1, 
tdata->threadid))) {
+    if ((owner != -1)
+       || !(mmAtomicCmpReplace32(&vertex->atomicowner, -1, tdata->threadid))) {
        mdLockBufferUnlockAll(mesh, tdata, buffer);
        return 0;
     }
@@ -2156,7 +2300,8 @@
 }
 
 /* If it fails, release all locks then wait for the desired lock to become 
available */
-int mdLockBufferLock(mdMesh *mesh, mdThreadData *tdata, mdLockBuffer *buffer, 
mdi vertexindex)
+int mdLockBufferLock(mdMesh *mesh, mdThreadData *tdata, mdLockBuffer *buffer,
+                    mdi vertexindex)
 {
     int32_t owner;
     mdVertex *vertex;
@@ -2168,7 +2313,8 @@
     if (owner == tdata->threadid)
        return 1;
 
-    if ((owner == -1) && mmAtomicCmpReplace32(&vertex->atomicowner, -1, 
tdata->threadid)) {
+    if ((owner == -1)
+       && mmAtomicCmpReplace32(&vertex->atomicowner, -1, tdata->threadid)) {
        buffer->vertexlist[buffer->vertexcount++] = vertexindex;
        return 1;
     }
@@ -2216,7 +2362,8 @@
 }
 
 
-static int mdPivotLockRefs(mdMesh *mesh, mdThreadData *tdata, mdLockBuffer 
*buffer, mdi vertexindex)
+static int mdPivotLockRefs(mdMesh *mesh, mdThreadData *tdata,
+                          mdLockBuffer *buffer, mdi vertexindex)
 {
     int vindex;
     mdi triindex, iav = 0, ibv = 0, trirefcount;
@@ -2258,7 +2405,8 @@
 }
 
 
-static void mdOpResolveLockEdge(mdMesh *mesh, mdThreadData *tdata, 
mdLockBuffer *lockbuffer, mdOp *op)
+static void mdOpResolveLockEdge(mdMesh *mesh, mdThreadData *tdata,
+                               mdLockBuffer *lockbuffer, mdOp *op)
 {
     int failcount, globalflag;
     mdVertex *vertex0, *vertex1;
@@ -2277,7 +2425,8 @@
            globalflag = 1;
        }
 
-       if (!(mdLockBufferLock(mesh, tdata, lockbuffer, op->v0)) || 
!(mdLockBufferLock(mesh, tdata, lockbuffer, op->v1))) {
+       if (!(mdLockBufferLock(mesh, tdata, lockbuffer, op->v0))
+           || !(mdLockBufferLock(mesh, tdata, lockbuffer, op->v1))) {
            failcount++;
            continue;
        }
@@ -2313,12 +2462,14 @@
     return;
 }
 
-static int mdOpResolveLockEdgeTry(mdMesh *mesh, mdThreadData *tdata, 
mdLockBuffer *lockbuffer, mdOp *op)
+static int mdOpResolveLockEdgeTry(mdMesh *mesh, mdThreadData *tdata,
+                                 mdLockBuffer *lockbuffer, mdOp *op)
 {
     mdVertex *vertex0, *vertex1;
 
     for (; ;) {
-       if (!(mdLockBufferTryLock(mesh, tdata, lockbuffer, op->v0)) || 
!(mdLockBufferTryLock(mesh, tdata, lockbuffer, op->v1)))
+       if (!(mdLockBufferTryLock(mesh, tdata, lockbuffer, op->v0))
+           || !(mdLockBufferTryLock(mesh, tdata, lockbuffer, op->v1)))
            return 0;
 
        vertex0 = &mesh->vertexlist[ op->v0 ];
@@ -2340,7 +2491,8 @@
     return 1;
 }
 
-static void mdOpResolveLockFull(mdMesh *mesh, mdThreadData *tdata, 
mdLockBuffer *lockbuffer, mdOp *op)
+static void mdOpResolveLockFull(mdMesh *mesh, mdThreadData *tdata,
+                               mdLockBuffer *lockbuffer, mdOp *op)
 {
     int failcount, globalflag;
     mdVertex *vertex0, *vertex1;
@@ -2359,7 +2511,8 @@
            globalflag = 1;
        }
 
-       if (!(mdLockBufferLock(mesh, tdata, lockbuffer, op->v0)) || 
!(mdLockBufferLock(mesh, tdata, lockbuffer, op->v1))) {
+       if (!(mdLockBufferLock(mesh, tdata, lockbuffer, op->v0))
+           || !(mdLockBufferLock(mesh, tdata, lockbuffer, op->v1))) {
            failcount++;
            continue;
        }
@@ -2373,9 +2526,11 @@
        else if (vertex1->redirectindex != -1)
            op->v1 = vertex1->redirectindex;
        else {
-           mdLockBufferResize(lockbuffer, 2 + ((vertex0->trirefcount + 
vertex1->trirefcount) << 1));
+           mdLockBufferResize(lockbuffer,
+                              2 + ((vertex0->trirefcount + 
vertex1->trirefcount) << 1));
 
-           if (!(mdPivotLockRefs(mesh, tdata, lockbuffer, op->v0)) || 
!(mdPivotLockRefs(mesh, tdata, lockbuffer, op->v1))) {
+           if (!(mdPivotLockRefs(mesh, tdata, lockbuffer, op->v0))
+               || !(mdPivotLockRefs(mesh, tdata, lockbuffer, op->v1))) {
                failcount++;
                continue;
            }
@@ -2384,9 +2539,11 @@
        }
 
 #else
-       mdLockBufferResize(lockbuffer, 2 + ((vertex0->trirefcount + 
vertex1->trirefcount) << 1));
+       mdLockBufferResize(lockbuffer,
+                          2 + ((vertex0->trirefcount + vertex1->trirefcount) 
<< 1));
 
-       if (!(mdPivotLockRefs(mesh, tdata, lockbuffer, op->v0)) || 
!(mdPivotLockRefs(mesh, tdata, lockbuffer, op->v1))) {
+       if (!(mdPivotLockRefs(mesh, tdata, lockbuffer, op->v0))
+           || !(mdPivotLockRefs(mesh, tdata, lockbuffer, op->v1))) {
            failcount++;
            continue;
        }
@@ -2413,7 +2570,8 @@
 
 #define MD_EDGE_COLLAPSE_TRIREF_STATIC (512)
 
-static void mdEdgeCollapse(mdMesh *mesh, mdThreadData *tdata, mdi v0, mdi v1, 
mdf *collapsepoint)
+static void mdEdgeCollapse(mdMesh *mesh, mdThreadData *tdata, mdi v0, mdi v1,
+                          mdf *collapsepoint)
 {
     int vindex, delflags0, delflags1;
     long deletioncount;
@@ -2430,7 +2588,9 @@
     mdEdgeCollapseAttrib(mesh, tdata, v0, v1, collapsepoint);
 
 #ifdef DEBUG_VERBOSE_COLLAPSE
-    printf("Collapse %d,%d ; Point %f %f %f ( Overwrite %d ; Delete %d )\n", 
(int)v0, (int)v1, collapsepoint[0], collapsepoint[1], collapsepoint[2], 
(int)v0, (int)v1);
+    printf("Collapse %d,%d ; Point %f %f %f ( Overwrite %d ; Delete %d )\n",
+          (int)v0, (int)v1, collapsepoint[0], collapsepoint[1], 
collapsepoint[2], (int)v0,
+          (int)v1);
 #endif
 
     /* New vertex overwriting v0 */
@@ -2452,11 +2612,14 @@
     tdata->statusdeletioncount = deletioncount;
 
 #ifdef DEBUG_VERBOSE_COLLAPSE
-    printf("  Redirect %d -> %d ; %d -> %d\n", (int)v0, 
(int)vertex0->redirectindex, (int)v1, (int)vertex1->redirectindex);
+    printf("  Redirect %d -> %d ; %d -> %d\n", (int)v0, 
(int)vertex0->redirectindex,
+          (int)v1, (int)vertex1->redirectindex);
 #endif
 
 #ifdef DEBUG_VERBOSE_COLLAPSE
-    printf("    Move Point %f %f %f ( %f %f %f ) -> %f %f %f\n", 
vertex0->point[0], vertex0->point[1], vertex0->point[2], vertex1->point[0], 
vertex1->point[1], vertex1->point[2], collapsepoint[0], collapsepoint[1], 
collapsepoint[2]);
+    printf("    Move Point %f %f %f ( %f %f %f ) -> %f %f %f\n", 
vertex0->point[0],
+          vertex0->point[1], vertex0->point[2], vertex1->point[0], 
vertex1->point[1],
+          vertex1->point[2], collapsepoint[0], collapsepoint[1], 
collapsepoint[2]);
 #endif
 
     /* Set up new vertex over v0 */
@@ -2494,8 +2657,12 @@
 
     /* Update all triangles connected to vertex0 and vertex1 */
     trirefstore = trireflist;
-    trirefstore = mdEdgeCollapseUpdateAll(mesh, tdata, &mesh->trireflist[ 
vertex0->trirefbase ], vertex0->trirefcount, v0, newv, trirefstore);
-    trirefstore = mdEdgeCollapseUpdateAll(mesh, tdata, &mesh->trireflist[ 
vertex1->trirefbase ], vertex1->trirefcount, v1, newv, trirefstore);
+    trirefstore = mdEdgeCollapseUpdateAll(mesh, tdata,
+                                         &mesh->trireflist[ 
vertex0->trirefbase ], vertex0->trirefcount, v0, newv,
+                                         trirefstore);
+    trirefstore = mdEdgeCollapseUpdateAll(mesh, tdata,
+                                         &mesh->trireflist[ 
vertex1->trirefbase ], vertex1->trirefcount, v1, newv,
+                                         trirefstore);
 
     /* Find where to store the trirefs */
     trirefcount = (int)(trirefstore - trireflist);
@@ -2574,7 +2741,8 @@
     mdi triright;
 } mdEdgeCollisionData;
 
-static void mdEdgeCollisionCallback(void *opaque, void *entry, int 
UNUSED(newflag))
+static void mdEdgeCollisionCallback(void *opaque, void *entry,
+                                   int UNUSED(newflag))
 {
     mdEdge *edge;
     mdEdgeCollisionData *ecd;
@@ -2594,7 +2762,8 @@
 Check all triangles attached to v1 that would have to attach back to v0
 If any of the edge is already present in the hash table, deny the collapse
 */
-static int mdEdgeCollisionCheck(mdMesh *mesh, mdThreadData *UNUSED(tdata), mdi 
v0, mdi v1)
+static int mdEdgeCollisionCheck(mdMesh *mesh, mdThreadData *UNUSED(tdata),
+                               mdi v0, mdi v1)
 {
     int vindex, trirefcount, left, right;
     mdi triindex, vsrc, vdst;
@@ -2631,14 +2800,16 @@
     edge.v[0] = v0;
     edge.v[1] = v1;
 
-    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge) == 
MM_HASH_SUCCESS)
+    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge,
+                           &edge) == MM_HASH_SUCCESS)
        ecd.trileft = edge.triindex;
 
     ecd.triright = -1;
     edge.v[0] = v1;
     edge.v[1] = v0;
 
-    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge) == 
MM_HASH_SUCCESS)
+    if (mmHashLockReadEntry(mesh->edgehashtable, &mdEdgeHashEdge,
+                           &edge) == MM_HASH_SUCCESS)
        ecd.triright = edge.triindex;
 
     /* Check all trirefs for collision */
@@ -2673,14 +2844,16 @@
 
        edge.v[0] = vdst;
        edge.v[1] = tri->v[right];
-       mmHashLockCallEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
mdEdgeCollisionCallback, &ecd, 0);
+       mmHashLockCallEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                           mdEdgeCollisionCallback, &ecd, 0);
 
        if (ecd.collisionflag)
            return 0;
 
        edge.v[0] = tri->v[left];
        edge.v[1] = vdst;
-       mmHashLockCallEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
mdEdgeCollisionCallback, &ecd, 0);
+       mmHashLockCallEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                           mdEdgeCollisionCallback, &ecd, 0);
 
        if (ecd.collisionflag)
            return 0;
@@ -2699,7 +2872,8 @@
     int retval;
 
     /* Allocate vertices, no extra room for vertices, we overwrite existing 
ones as we decimate */
-    mesh->vertexlist = (mdVertex *)mmAlignAlloc(mesh->vertexalloc * 
sizeof(mdVertex), 0x40);
+    mesh->vertexlist = (mdVertex *)mmAlignAlloc(mesh->vertexalloc * sizeof(
+                          mdVertex), 0x40);
 
     /* Allocate space for per-vertex lists of face references, including 
future vertices */
     mesh->trirefcount = 0;
@@ -2732,7 +2906,8 @@
 
 
 /* Mesh init step 1, initialize vertices, threaded */
-static void mdMeshInitVertices(mdMesh *mesh, mdThreadData *tdata, int 
threadcount)
+static void mdMeshInitVertices(mdMesh *mesh, mdThreadData *tdata,
+                              int threadcount)
 {
     int vertexindex, vertexindexmax, vertexperthread;
     mdVertex *vertex;
@@ -2771,7 +2946,8 @@
 
 
 /* Mesh init step 2, initialize triangles, threaded */
-static void mdMeshInitTriangles(mdMesh *mesh, mdThreadData *tdata, int 
threadcount)
+static void mdMeshInitTriangles(mdMesh *mesh, mdThreadData *tdata,
+                               int threadcount)
 {
     int i, triperthread, triindex, triindexmax;
     long buildtricount;
@@ -2781,7 +2957,7 @@
     mdEdge edge;
     mathQuadric q;
 
-    memset(&edge, 0, sizeof(mdEdge));    /* DRH added so it's initialized */
+    memset(&edge, 0, sizeof(mdEdge));    /*DRH added so it's initialized*/
     triperthread = (mesh->tricount / threadcount) + 1;
     triindex = tdata->threadid * triperthread;
     triindexmax = triindex + triperthread;
@@ -2795,7 +2971,8 @@
     tri = &mesh->trilist[triindex];
     edge.op = 0;
 
-    for (; triindex < triindexmax ; triindex++, indices = ADDRESS(indices, 
mesh->indicesstride), tri++) {
+    for (; triindex < triindexmax ;
+        triindex++, indices = ADDRESS(indices, mesh->indicesstride), tri++) {
        mesh->indicesUserToNative(tri->v, indices);
 #ifdef DEBUG_VERBOSE_QUADRIC
        printf("Triangle %d,%d,%d\n", (int)tri->v[0], (int)tri->v[1], 
(int)tri->v[2]);
@@ -2822,19 +2999,22 @@
            edge.v[0] = tri->v[0];
            edge.v[1] = tri->v[1];
 
-           if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
1) != MM_HASH_SUCCESS)
+           if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                                  1) != MM_HASH_SUCCESS)
                bu_bomb("SHOULD NOT HAPPEN");
 
            edge.v[0] = tri->v[1];
            edge.v[1] = tri->v[2];
 
-           if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
1) != MM_HASH_SUCCESS)
+           if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                                  1) != MM_HASH_SUCCESS)
                bu_bomb("SHOULD NOT HAPPEN");
 
            edge.v[0] = tri->v[2];
            edge.v[1] = tri->v[0];
 
-           if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge, 
1) != MM_HASH_SUCCESS)
+           if (mmHashLockAddEntry(mesh->edgehashtable, &mdEdgeHashEdge, &edge,
+                                  1) != MM_HASH_SUCCESS)
                bu_bomb("SHOULD NOT HAPPEN");
        }
 
@@ -2856,7 +3036,8 @@
     trirefcount = 0;
     vertex = mesh->vertexlist;
 
-    for (vertexindex = 0 ; vertexindex < mesh->vertexcount ; vertexindex++, 
vertex++) {
+    for (vertexindex = 0 ; vertexindex < mesh->vertexcount ;
+        vertexindex++, vertex++) {
        vertex->trirefbase = trirefcount;
        trirefcount += vertex->trirefcount;
        vertex->trirefcount = 0;
@@ -2869,7 +3050,8 @@
 
 
 /* Mesh init step 4, store vertex trirefs and accumulate boundary quadrics, 
threaded */
-static void mdMeshBuildTrirefs(mdMesh *mesh, mdThreadData *tdata, int 
threadcount)
+static void mdMeshBuildTrirefs(mdMesh *mesh, mdThreadData *tdata,
+                              int threadcount)
 {
     int i, triperthread, triindex, triindexmax;
     long buildrefcount;
@@ -3021,7 +3203,8 @@
 }
 
 
-static void mdUpdateOp(mdMesh *mesh, mdThreadData *tdata, mdOp *op, int32_t 
opflagsmask)
+static void mdUpdateOp(mdMesh *mesh, mdThreadData *tdata, mdOp *op,
+                      int32_t opflagsmask)
 {
     int denyflag, flags;
 #ifdef MD_CONFIG_ATOMIC_SUPPORT
@@ -3062,14 +3245,16 @@
        mtSpinUnlock(&op->spinlock);
 #endif
     } else {
-       op->penalty = mdEdgeCollapsePenalty(mesh, tdata, op->v0, op->v1, 
op->collapsepoint, &denyflag);
+       op->penalty = mdEdgeCollapsePenalty(mesh, tdata, op->v0, op->v1,
+                                           op->collapsepoint, &denyflag);
        mdSortOp(mesh, tdata, op, denyflag);
     }
 
     return;
 }
 
-static void mdUpdateBufferOps(mdMesh *mesh, mdThreadData *tdata, 
mdUpdateBuffer *updatebuffer, mdLockBuffer *lockbuffer)
+static void mdUpdateBufferOps(mdMesh *mesh, mdThreadData *tdata,
+                             mdUpdateBuffer *updatebuffer, mdLockBuffer 
*lockbuffer)
 {
     int vindex;
     mdOp *op;
@@ -3084,7 +3269,8 @@
        op = (mdOp *)updatebuffer->opbuffer[vindex];
 
        if (mdOpResolveLockEdgeTry(mesh, tdata, lockbuffer, op)) {
-           mdUpdateOp(mesh, tdata, op, ~(MD_OP_FLAGS_UPDATE_QUEUED | 
MD_OP_FLAGS_UPDATE_NEEDED));
+           mdUpdateOp(mesh, tdata, op,
+                      ~(MD_OP_FLAGS_UPDATE_QUEUED | 
MD_OP_FLAGS_UPDATE_NEEDED));
            mdLockBufferUnlockAll(mesh, tdata, lockbuffer);
        } else {
 #ifdef MD_CONFIG_ATOMIC_SUPPORT
@@ -3093,7 +3279,8 @@
            mtSpinUnlock(&updatebuffer->spinlock);
 #endif
            mdOpResolveLockEdge(mesh, tdata, lockbuffer, op);
-           mdUpdateOp(mesh, tdata, op, ~(MD_OP_FLAGS_UPDATE_QUEUED | 
MD_OP_FLAGS_UPDATE_NEEDED));
+           mdUpdateOp(mesh, tdata, op,
+                      ~(MD_OP_FLAGS_UPDATE_QUEUED | 
MD_OP_FLAGS_UPDATE_NEEDED));
            mdLockBufferUnlockAll(mesh, tdata, lockbuffer);
 #ifdef MD_CONFIG_ATOMIC_SUPPORT
            mmAtomicSpin32(&updatebuffer->atomlock, 0x0, 0x1);
@@ -3159,7 +3346,10 @@
        }
 
 #ifdef DEBUG_VERBOSE
-       printf("Op %p ; Edge %d,%d (0x%x) ; Point %f %f %f ; Value %f ; Penalty 
%f ; Cost %f\n", op, op->v0, op->v1, mmAtomicRead32(&op->flags), 
op->collapsepoint[0], op->collapsepoint[1], op->collapsepoint[2], op->value, 
op->penalty, op->collapsecost);
+       printf("Op %p ; Edge %d,%d (0x%x) ; Point %f %f %f ; Value %f ; Penalty 
%f ; Cost %f\n",
+              op, op->v0, op->v1, mmAtomicRead32(&op->flags), 
op->collapsepoint[0],
+              op->collapsepoint[1], op->collapsepoint[2], op->value, 
op->penalty,
+              op->collapsecost);
 #endif
 
        /* Acquire lock for op edge and all trirefs vertices */
@@ -3183,7 +3373,8 @@
 #if defined(DEBUG_PENALTY_CHECK) && DEBUG_PENALTY_CHECK
        int denyflag;
        mdf penalty;
-       penalty = mdEdgeCollapsePenalty(mesh, tdata, op->v0, op->v1, 
op->collapsepoint, &denyflag);
+       penalty = mdEdgeCollapsePenalty(mesh, tdata, op->v0, op->v1, 
op->collapsepoint,
+                                       &denyflag);
 
        if (fabs(penalty - op->penalty) > 0.001 * fmax(penalty, op->penalty))
            printf("CRAP : %f %f\n", penalty, op->penalty);
@@ -3275,10 +3466,10 @@
     else if (dotangle <= -1.0)
        factor = 0.5 * M_PI;
     else {
-       if (0.0 < dotangle && dotangle < 1.0)
+       if (0.0 <= dotangle && dotangle <= 1.0)
+           factor = mdfacos(dotangle);
+       else
            factor = 0.0;
-       else
-           factor = mdfacos(dotangle);
     }
 
     return factor;
@@ -3288,7 +3479,8 @@
 {
     mdTriangle *tri, *triend;
     mdVertex *vertex0, *vertex1, *vertex2;
-    mdf vecta[3], vectb[3], vectc[3], normalfactor, magna, magnb, magnc, norm, 
norminv;
+    mdf vecta[3], vectb[3], vectc[3], normalfactor, magna, magnb, magnc, norm,
+       norminv;
     mdTriNormal *trinormal;
 
     trinormal = (mdTriNormal *)mesh->trinormal;
@@ -3326,9 +3518,12 @@
        magna = M3D_VectorMagnitude(vecta);
        magnb = M3D_VectorMagnitude(vectb);
        magnc = M3D_VectorMagnitude(vectc);
-       trinormal->factor[0] = norm * 
mdMeshAngleFactor(M3D_VectorDotProduct(vecta, vectb) / (magna * magnb));
-       trinormal->factor[1] = norm * 
mdMeshAngleFactor(-M3D_VectorDotProduct(vecta, vectc) / (magna * magnc));
-       trinormal->factor[2] = norm * 
mdMeshAngleFactor(M3D_VectorDotProduct(vectb, vectc) / (magnb * magnc));
+       trinormal->factor[0] = norm * 
mdMeshAngleFactor(M3D_VectorDotProduct(vecta,
+                              vectb) / (magna * magnb));
+       trinormal->factor[1] = norm * 
mdMeshAngleFactor(-M3D_VectorDotProduct(vecta,
+                              vectc) / (magna * magnc));
+       trinormal->factor[2] = norm * 
mdMeshAngleFactor(M3D_VectorDotProduct(vectb,
+                              vectc) / (magnb * magnc));
 
        trinormal++;
     }
@@ -3337,7 +3532,8 @@
 }
 
 
-static int mdMeshVertexComputeNormal(mdMesh *mesh, mdi vertexindex, mdi 
*trireflist, int trirefcount, mdf *normal)
+static int mdMeshVertexComputeNormal(mdMesh *mesh, mdi vertexindex,
+                                    mdi *trireflist, int trirefcount, mdf 
*normal)
 {
     int vindex, pivot, validflag;
     mdi triindex;
@@ -3402,7 +3598,8 @@
     retindex = -1;
     vertex = &mesh->vertexlist[ mesh->clonesearchindex ];
 
-    for (vertexindex = mesh->clonesearchindex ; vertexindex < 
mesh->vertexalloc ; vertexindex++, vertex++) {
+    for (vertexindex = mesh->clonesearchindex ; vertexindex < 
mesh->vertexalloc ;
+        vertexindex++, vertex++) {
        if ((vertexindex < mesh->vertexcount) && (vertex->trirefcount))
            continue;
 
@@ -3440,15 +3637,16 @@
 }
 
 
-static void mdMeshVertexRedirectTriRefs(mdMesh *mesh, mdi vertexindex, mdi 
newvertexindex, mdi *trireflist, int trirefcount)
+static void mdMeshVertexRedirectTriRefs(mdMesh *mesh, mdi vertexindex,
+                                       mdi newvertexindex, mdi *trireflist, 
int trirefcount)
 {
     int vindex;
     mdi triindex;
     mdTriangle *tri;
-    /* 2012-10-22 ch3: trinormal set but never used, so commented*/
-    /*mdTriNormal *trinormal;*/
+    /* 2012-10-22 ch3: trinormal set but never used, so commented
+    mdTriNormal *trinormal;
 
-    /*trinormal = mesh->trinormal;*/
+    trinormal = mesh->trinormal; */
 
     for (vindex = 0 ; vindex < trirefcount ; vindex++) {
        triindex = trireflist[ vindex ];
@@ -3476,7 +3674,8 @@
 
 
 /* Find a target normal */
-static int mdMeshVertexFindTarget(mdMesh *mesh, mdi *trireflist, int 
trirefcount, mdf **targetnormal)
+static int mdMeshVertexFindTarget(mdMesh *mesh, mdi *trireflist,
+                                 int trirefcount, mdf **targetnormal)
 {
     int i0, i1;
     mdi triindex0, triindex1;
@@ -3531,7 +3730,8 @@
 
 #define MD_MESH_TRIREF_MAX (256)
 
-static int mdMeshVertexBuildNormal(mdMesh *mesh, mdi vertexindex, mdi 
*trireflist, int trirefcount, mdf *point, mdf *normal)
+static int mdMeshVertexBuildNormal(mdMesh *mesh, mdi vertexindex,
+                                  mdi *trireflist, int trirefcount, mdf 
*point, mdf *normal)
 {
     int vindex, trirefbuffercount;
     mdi triindex, newvertexindex;
@@ -3549,7 +3749,8 @@
 
     for (; ;) {
        /* Compute normal for vertex */
-       if (!(mdMeshVertexComputeNormal(mesh, vertexindex, trireflist, 
trirefcount, normal)))
+       if (!(mdMeshVertexComputeNormal(mesh, vertexindex, trireflist, 
trirefcount,
+                                       normal)))
            return 0;
 
        /* If user doesn't allow vertex splitting, take the normal as it is */
@@ -3599,11 +3800,14 @@
            break;
 
        /* Correct all trirefs to new vertex */
-       mdMeshVertexRedirectTriRefs(mesh, vertexindex, newvertexindex, 
trirefbuffer, trirefbuffercount);
+       mdMeshVertexRedirectTriRefs(mesh, vertexindex, newvertexindex, 
trirefbuffer,
+                                   trirefbuffercount);
 
        /* Spawn a new vertex */
-       newnormal = (mdf *)ADDRESS(mesh->vertexnormal, newvertexindex * 3 * 
sizeof(mdf));
-       mdMeshVertexBuildNormal(mesh, newvertexindex, trirefbuffer, 
trirefbuffercount, point, newnormal);
+       newnormal = (mdf *)ADDRESS(mesh->vertexnormal,
+                                  newvertexindex * 3 * sizeof(mdf));
+       mdMeshVertexBuildNormal(mesh, newvertexindex, trirefbuffer, 
trirefbuffercount,
+                               point, newnormal);
     }
 
     return 1;
@@ -3635,7 +3839,8 @@
 }
 
 
-static void mdMeshWriteVertices(mdMesh *mesh, mdOpAttrib *normalattrib, mdf 
*vertexnormal)
+static void mdMeshWriteVertices(mdMesh *mesh, mdOpAttrib *normalattrib,
+                               mdf *vertexnormal)
 {
     mdi vertexindex, writeindex;
     mdf *point, *normal;
@@ -3659,7 +3864,8 @@
     attrib = mesh->attrib;
     attribend = &mesh->attrib[mesh->attribcount];
 
-    for (vertexindex = 0 ; vertexindex < mesh->vertexcount ; vertexindex++, 
vertex++) {
+    for (vertexindex = 0 ; vertexindex < mesh->vertexcount ;
+        vertexindex++, vertex++) {
        if (!(mesh->operationflags & MD_FLAGS_NO_VERTEX_PACKING)) {
            if (vertex->redirectindex != -1)
                continue;
@@ -3668,7 +3874,9 @@
                continue;
 
            /* The whole mdMeshRecomputeNormals() process already strips unused 
vertices */
-           if (!(vertexnormal) && (vertex->trirefcount != -1) && 
!(mdMeshVertexCheckUse(mesh, &mesh->trireflist[ vertex->trirefbase ], 
vertex->trirefcount)))
+           if (!(vertexnormal) && (vertex->trirefcount != -1)
+               && !(mdMeshVertexCheckUse(mesh, &mesh->trireflist[ 
vertex->trirefbase ],
+                                         vertex->trirefcount)))
                continue;
        }
 
@@ -3755,16 +3963,19 @@
     mdMeshBuildTriangleNormals(mesh);
 
     /* Build each vertex normal */
-    /*vertexcount = 0;*/
+    /* vertexcount = 0; */
     vertex = mesh->vertexlist;
 
-    for (vertexindex = 0 ; vertexindex < mesh->vertexcount ; vertexindex++, 
vertex++) {
+    for (vertexindex = 0 ; vertexindex < mesh->vertexcount ;
+        vertexindex++, vertex++) {
        if (!(vertex->trirefcount) || (vertex->trirefcount == -1))
            continue;
 
        normal = (mdf *)ADDRESS(mesh->vertexnormal, vertexindex * 3 * 
sizeof(mdf));
 
-       if (!(mdMeshVertexBuildNormal(mesh, vertexindex, &mesh->trireflist[ 
vertex->trirefbase ], vertex->trirefcount, vertex->point, normal)))
+       if (!(mdMeshVertexBuildNormal(mesh, vertexindex,
+                                     &mesh->trireflist[ vertex->trirefbase ], 
vertex->trirefcount, vertex->point,
+                                     normal)))
            vertex->trirefcount = 0;
     }
 
@@ -3833,7 +4044,9 @@
     } else
        mmBlockInit(&tdata.opblock, sizeof(mdOp), 16384, 16384, 0x10);
 
-    tdata.binsort = mmBinSortInit(offsetof(mdOp, list), 64, 16, -0.2 * 
mesh->maxcollapsecost, 1.2 * mesh->maxcollapsecost, groupthreshold, 
mdMeshOpValueCallback, 6, nodeindex);
+    tdata.binsort = mmBinSortInit(offsetof(mdOp, list), 64, 16,
+                                 -0.2 * mesh->maxcollapsecost, 1.2 * 
mesh->maxcollapsecost, groupthreshold,
+                                 mdMeshOpValueCallback, 6, nodeindex);
 
     for (vindex = 0 ; vindex < mesh->updatebuffercount ; vindex++)
        mdUpdateBufferInit(&tdata.updatebuffer[vindex], 4096);
@@ -3936,7 +4149,8 @@
     0.0
 };
 
-static void mdUpdateStatus(mdMesh *mesh, mdThreadInit *threadinit, int stage, 
mdStatus *status)
+static void mdUpdateStatus(mdMesh *mesh, mdThreadInit *threadinit, int stage,
+                          mdStatus *status)
 {
     int threadid, stageindex;
     long buildtricount, buildrefcount, populatecount, deletioncount;
@@ -4037,10 +4251,11 @@
     op->syncstepcount = 32;
     op->normalsearchangle = 45.0;
     mmInit();
-    op->maxmemorysize = ((size_t)2) * 1024 * 1024 * 1024;
+    op->maxmemorysize = ((long long)2) * 1024 * 1024 * 1024;
 
     if (mmcontext.sysmemory) {
-       op->maxmemorysize = (mmcontext.sysmemory >> 1) + (mmcontext.sysmemory 
>> 2);     /* By default, allow to allocate up to 75% of system memory */
+       op->maxmemorysize = (mmcontext.sysmemory >> 1) + (mmcontext.sysmemory >>
+                           2);     /* By default, allow to allocate up to 75% 
of system memory */
 
        if (op->maxmemorysize < 1024 * 1024 * 1024)
            op->maxmemorysize = 1024 * 1024 * 1024;
@@ -4049,7 +4264,9 @@
     return;
 }
 
-void mdOperationData(mdOperation *op, size_t vertexcount, void *vertex, int 
vertexwidth, size_t vertexstride, size_t tricount, void *indices, int 
indiceswidth, size_t indicesstride)
+void mdOperationData(mdOperation *op, size_t vertexcount, void *vertex,
+                    int vertexwidth, size_t vertexstride, size_t tricount, 
void *indices,
+                    int indiceswidth, size_t indicesstride)
 {
     op->vertexcount = vertexcount;
     op->vertex = vertex;
@@ -4062,7 +4279,8 @@
     return;
 }
 
-int mdOperationAddAttrib(mdOperation *op, void *base, int width, size_t count, 
size_t stride, int flags)
+int mdOperationAddAttrib(mdOperation *op, void *base, int width, size_t count,
+                        size_t stride, int flags)
 {
     mdOpAttrib *attrib;
 
@@ -4093,7 +4311,9 @@
     return;
 }
 
-void mdOperationStatusCallback(mdOperation *op, void (*statuscallback)(void 
*opaquepointer, const mdStatus *status), void *opaquepointer, long miliseconds)
+void mdOperationStatusCallback(mdOperation *op,
+                              void (*statuscallback)(void *opaquepointer, 
const mdStatus *status),
+                              void *opaquepointer, long miliseconds)
 {
     op->statusmiliseconds = miliseconds;
     op->statusopaquepointer = opaquepointer;
@@ -4219,7 +4439,8 @@
     if (mesh.syncstepcount > 1024)
        mesh.syncstepcount = 1024;
 
-    mesh.normalsearchangle = cos(1.0 * operation->normalsearchangle * (M_PI / 
180.0));
+    mesh.normalsearchangle = cos(1.0 * operation->normalsearchangle *
+                                (M_PI / 180.0));
 
     if (mesh.normalsearchangle > 0.9)
        mesh.normalsearchangle = 0.9;
@@ -4229,7 +4450,9 @@
     mdBarrierInit(&mesh.globalbarrier, threadcount + 1);
 
     /* Determine update buffer shift required, find the count of updatebuffers 
*/
-    for (mesh.updatebuffershift = 0 ; (threadcount >> mesh.updatebuffershift) 
> MD_THREAD_UPDATE_BUFFER_COUNTMAX ; mesh.updatebuffershift++);
+    for (mesh.updatebuffershift = 0 ;
+        (threadcount >> mesh.updatebuffershift) > 
MD_THREAD_UPDATE_BUFFER_COUNTMAX ;
+        mesh.updatebuffershift++);
 
     mesh.updatebuffercount = ((threadcount - 1) >> mesh.updatebuffershift) + 1;
 
@@ -4238,8 +4461,9 @@
 
 #ifdef MD_CONFIG_SSE_SUPPORT
 #ifndef MD_CONF_DOUBLE_PRECISION
-#if defined(__SSE_4_1__) && __SSE_4_1__
 
+#if defined(__SSE4_1__) && __SSE4_1__
+
     if ((mdCpuInfo.capsse4p1) && (mdPathSSE4p1 & 0x1)) {
 #ifdef DEBUG_VERBOSE
        printf("PATH : SSE4.1 Float\n");
@@ -4266,8 +4490,9 @@
            {}
 
 #else
-#if defined(__SSE_4_1__) && __SSE_4_1__
 
+#if defined(__SSE4_1__) && __SSE4_1__
+
     if ((mdCpuInfo.capsse4p1) && (mdPathSSE4p1 & 0x2)) {
 #ifdef DEBUG_VERBOSE
        printf("PATH : SSE4.1 Double\n");
@@ -4308,7 +4533,8 @@
 
     mesh.updatestatusflag = 0;
     status.progress = 0.0;
-    statuswait = (operation->statusmiliseconds > 10 ? 
operation->statusmiliseconds : 10);
+    statuswait = (operation->statusmiliseconds > 10 ? 
operation->statusmiliseconds :
+                 10);
     status.trianglecount = 0;
 
     if (operation->statuscallback) {
@@ -4324,7 +4550,8 @@
        tinit->threadid = threadid;
        tinit->mesh = &mesh;
        tinit->stage = MD_STATUS_STAGE_INIT;
-       mtThreadCreate(&thread[threadid], mdThreadMain, tinit, 
MT_THREAD_FLAGS_JOINABLE, 0, 0);
+       mtThreadCreate(&thread[threadid], mdThreadMain, tinit, 
MT_THREAD_FLAGS_JOINABLE,
+                      0, 0);
     }
 
     /* Wait until all threads have properly initialized */
@@ -4415,7 +4642,8 @@
        long accesscount, collisioncount, relocationcount;
        long entrycount, entrycountmax, hashsizemax;
 
-       mmHashStatistics(mesh.edgehashtable, &accesscount, &collisioncount, 
&relocationcount, &entrycount, &entrycountmax, &hashsizemax);
+       mmHashStatistics(mesh.edgehashtable, &accesscount, &collisioncount,
+                        &relocationcount, &entrycount, &entrycountmax, 
&hashsizemax);
 
        printf("Hash Access     : %ld\n", accesscount);
        printf("Hash Collision  : %ld\n", collisioncount);

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to