add asserts to ensure face normal is up to date.
authorCampbell Barton <ideasman42@gmail.com>
Mon, 29 Jul 2013 09:12:23 +0000 (09:12 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Mon, 29 Jul 2013 09:12:23 +0000 (09:12 +0000)
source/blender/bmesh/intern/bmesh_interp.c
source/blender/bmesh/intern/bmesh_polygon.c
source/blender/bmesh/operators/bmo_inset.c

index 3e8a49a01fcdf4e53b27226c0cd3fd6bc97f6c42..70d1d4c81dff8750c2fff09e323106922dcf9a5a 100644 (file)
@@ -205,6 +205,7 @@ void BM_face_interp_from_face(BMesh *bm, BMFace *target, BMFace *source, const b
        int i;
 
        /* convert the 3d coords into 2d for projection */
+       BLI_assert(BM_face_is_normal_valid(source));
        axis_dominant_v3_to_m3(axis_mat, source->no);
 
        i = 0;
@@ -638,6 +639,7 @@ void BM_loop_interp_from_face(BMesh *bm, BMLoop *target, BMFace *source,
        int i;
 
        /* convert the 3d coords into 2d for projection */
+       BLI_assert(BM_face_is_normal_valid(source));
        axis_dominant_v3_to_m3(axis_mat, source->no);
 
        i = 0;
@@ -678,6 +680,7 @@ void BM_vert_interp_from_face(BMesh *bm, BMVert *v, BMFace *source)
        int i;
 
        /* convert the 3d coords into 2d for projection */
+       BLI_assert(BM_face_is_normal_valid(source));
        axis_dominant_v3_to_m3(axis_mat, source->no);
 
        i = 0;
index c7772392c8edb573b7fb67aa8f58b20e904ea013..eea5ec596746c8dd493328290096f674e32ab0e4 100644 (file)
@@ -1006,6 +1006,8 @@ void BM_face_triangulate(BMesh *bm, BMFace *f,
        float *abscoss = BLI_array_alloca(abscoss, f_len_orig);
        float mat[3][3];
 
+       BLI_assert(BM_face_is_normal_valid(f));
+
        axis_dominant_v3_to_m3(mat, f->no);
 
        /* copy vertex coordinates to vertspace area */
index 97444a504388ae862d7f2e5d31ab44236df80fe3..60fdf075d18abda1baad802c6de05927c0f41525 100644 (file)
@@ -277,6 +277,8 @@ static void bm_interp_face_store(InterpFace *iface, BMesh *bm, BMFace *f, MemAre
        void *axis_mat     = iface->axis_mat;
        int i;
 
+       BLI_assert(BM_face_is_normal_valid(f));
+
        axis_dominant_v3_to_m3(axis_mat, f->no);
 
        iface->f = f;