Commit: 23d10799c7836fcc3b9fea74df5693d317760015
Author: Alexander Pinzon Fernandez
Date:   Thu Jun 19 15:25:18 2014 -0500
https://developer.blender.org/rB23d10799c7836fcc3b9fea74df5693d317760015

Minor bug fixes and several correction.

===================================================================

M       source/blender/modifiers/intern/MOD_quadremesh.c

===================================================================

diff --git a/source/blender/modifiers/intern/MOD_quadremesh.c 
b/source/blender/modifiers/intern/MOD_quadremesh.c
index 6e0d6ee..2d1e582 100644
--- a/source/blender/modifiers/intern/MOD_quadremesh.c
+++ b/source/blender/modifiers/intern/MOD_quadremesh.c
@@ -229,43 +229,6 @@ static void laplacianDeformPreview(LaplacianSystem *sys)
 #endif
 }
 
-static void QuadRemeshModifier_do(
-       QuadRemeshModifierData *qmd, Object *ob, DerivedMesh *dm,
-       float(*vertexCos)[3], int numVerts)
-{
-       float(*filevertexCos)[3];
-       int sysdif, i;
-       LaplacianSystem *sys = NULL;
-       int defgrp_index;
-       MDeformVert *dvert = NULL;
-       MDeformVert *dv = NULL;
-       float mmin = 1000, mmax = 0;
-       float y;
-
-       if (numVerts == 0) return;
-       if (strlen(qmd->anchor_grp_name) < 3) return;
-       sys = initSystem(qmd, ob, dm, vertexCos, numVerts);
-       laplacianDeformPreview(sys);
-
-       if (!defgroup_find_name(ob, "QuadRemeshGroup")) {
-               BKE_defgroup_new(ob, "QuadRemeshGroup");
-               modifier_get_vgroup(ob, dm, "QuadRemeshGroup", &dvert, 
&defgrp_index);
-               BLI_assert(dvert != NULL);
-               dv = dvert;
-               for (i = 0; i < numVerts; i++) {
-                       mmin = min(mmin, sys->U_field[i]);
-                       mmax = max(mmax, sys->U_field[i]);
-               }
-
-               for (i = 0; i < numVerts; i++) {
-                       y = (sys->U_field[i] - mmin) / (mmax - mmin);
-                       defvert_add_index_notest(dv, defgrp_index, y);
-                       dv++;
-               }
-
-       }
-}
-
 static LaplacianSystem * initSystem(QuadRemeshModifierData *qmd, Object *ob, 
DerivedMesh *dm,
        float(*vertexCos)[3], int numVerts)
 {
@@ -277,9 +240,9 @@ static LaplacianSystem * initSystem(QuadRemeshModifierData 
*qmd, Object *ob, Der
        MDeformVert *dv = NULL;
        LaplacianSystem *sys = NULL;
 
-       
-       int *constraints = MEM_mallocN(sizeof(int)* numVerts, __func__);  
-       float *weights = MEM_mallocN(sizeof(float)* numVerts, __func__);  
+
+       int *constraints = MEM_mallocN(sizeof(int)* numVerts, __func__);
+       float *weights = MEM_mallocN(sizeof(float)* numVerts, __func__);
        MFace *tessface;
 
        modifier_get_vgroup(ob, dm, qmd->anchor_grp_name, &dvert, 
&defgrp_index);
@@ -305,7 +268,7 @@ static LaplacianSystem * initSystem(QuadRemeshModifierData 
*qmd, Object *ob, Der
        sys = initLaplacianSystem(numVerts, dm->getNumEdges(dm), 
dm->getNumTessFaces(dm), total_features, qmd->anchor_grp_name);
 
        memcpy(sys->co, vertexCos, sizeof(float[3]) * numVerts);
-       memcpy(sys->constraints, constraints, sizeof(int) * numVerts);
+       memcpy(sys->constraints, constraints, sizeof(int)* numVerts);
        memcpy(sys->weights, weights, sizeof(float)* numVerts);
        MEM_freeN(weights);
        MEM_freeN(constraints);
@@ -315,7 +278,44 @@ static LaplacianSystem * initSystem(QuadRemeshModifierData 
*qmd, Object *ob, Der
                memcpy(&sys->faces[i], &tessface[i].v1, sizeof(*sys->faces));
        }
        return sys;
-       
+
+}
+
+static void QuadRemeshModifier_do(
+       QuadRemeshModifierData *qmd, Object *ob, DerivedMesh *dm,
+       float(*vertexCos)[3], int numVerts)
+{
+       float(*filevertexCos)[3];
+       int sysdif, i;
+       LaplacianSystem *sys = NULL;
+       int defgrp_index;
+       MDeformVert *dvert = NULL;
+       MDeformVert *dv = NULL;
+       float mmin = 1000, mmax = 0;
+       float y;
+
+       if (numVerts == 0) return;
+       if (strlen(qmd->anchor_grp_name) < 3) return;
+       sys = initSystem(qmd, ob, dm, vertexCos, numVerts);
+       laplacianDeformPreview(sys);
+
+       if (!defgroup_find_name(ob, "QuadRemeshGroup")) {
+               BKE_defgroup_new(ob, "QuadRemeshGroup");
+               modifier_get_vgroup(ob, dm, "QuadRemeshGroup", &dvert, 
&defgrp_index);
+               BLI_assert(dvert != NULL);
+               dv = dvert;
+               for (i = 0; i < numVerts; i++) {
+                       mmin = min(mmin, sys->U_field[i]);
+                       mmax = max(mmax, sys->U_field[i]);
+               }
+
+               for (i = 0; i < numVerts; i++) {
+                       y = (sys->U_field[i] - mmin) / (mmax - mmin);
+                       defvert_add_index_notest(dv, defgrp_index, y);
+                       dv++;
+               }
+
+       }
 }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to