Merged changes in the trunk up to revision 45383.
[blender.git] / source / blender / bmesh / intern / bmesh_construct.c
index 974bc814d9b8b0000acdb6fbdfa0623e0912bb6a..75d1eec4111f52bd5299af7cc9deaf865b3cabc5 100644 (file)
@@ -942,14 +942,16 @@ char BM_edge_flag_from_mflag(const short meflag)
        return ( ((meflag & SELECT)        ? BM_ELEM_SELECT : 0) |
                 ((meflag & ME_SEAM)       ? BM_ELEM_SEAM   : 0) |
                 ((meflag & ME_SHARP) == 0 ? BM_ELEM_SMOOTH : 0) | /* invert */
-                ((meflag & ME_HIDE)       ? BM_ELEM_HIDDEN : 0)
+                ((meflag & ME_HIDE)       ? BM_ELEM_HIDDEN : 0) |
+                ((meflag & ME_FREESTYLE_EDGE) ? BM_ELEM_FREESTYLE : 0)
                 );
 }
 char BM_face_flag_from_mflag(const char  meflag)
 {
        return ( ((meflag & ME_FACE_SEL)  ? BM_ELEM_SELECT : 0) |
                 ((meflag & ME_SMOOTH)    ? BM_ELEM_SMOOTH : 0) |
-                ((meflag & ME_HIDE)      ? BM_ELEM_HIDDEN : 0)
+                ((meflag & ME_HIDE)      ? BM_ELEM_HIDDEN : 0) |
+                ((meflag & ME_FREESTYLE_FACE) ? BM_ELEM_FREESTYLE : 0)
                 );
 }
 
@@ -970,6 +972,7 @@ short BM_edge_flag_to_mflag(BMEdge *eed)
                 ((hflag & BM_ELEM_SEAM)         ? ME_SEAM   : 0) |
                 ((hflag & BM_ELEM_SMOOTH) == 0  ? ME_SHARP  : 0) |
                 ((hflag & BM_ELEM_HIDDEN)       ? ME_HIDE   : 0) |
+                ((hflag & BM_ELEM_FREESTYLE) ? ME_FREESTYLE_EDGE : 0) |
                 ((BM_edge_is_wire(eed)) ? ME_LOOSEEDGE : 0) | /* not typical */
                 (ME_EDGEDRAW | ME_EDGERENDER)
                 );
@@ -980,6 +983,7 @@ char  BM_face_flag_to_mflag(BMFace *efa)
 
        return ( ((hflag & BM_ELEM_SELECT) ? ME_FACE_SEL : 0) |
                 ((hflag & BM_ELEM_SMOOTH) ? ME_SMOOTH   : 0) |
-                ((hflag & BM_ELEM_HIDDEN) ? ME_HIDE     : 0)
+                ((hflag & BM_ELEM_HIDDEN) ? ME_HIDE     : 0) |
+                ((hflag & BM_ELEM_FREESTYLE) ? ME_FREESTYLE_FACE : 0)
                 );
 }