decimator - merge flags when collapsing edges / verts, so seams and edges draw flags are kept.

This commit is contained in:
Campbell Barton
2012-11-08 07:06:08 +00:00
parent 617a73c573
commit 09cce17d84

View File

@@ -760,8 +760,11 @@ static int bm_edge_collapse(BMesh *bm, BMEdge *e_clear, BMVert *v_clear, int r_e
BM_edge_kill(bm, e_clear);
v_other->head.hflag |= v_clear->head.hflag;
BM_vert_splice(bm, v_clear, v_other);
e_a_other[1]->head.hflag |= e_a_other[0]->head.hflag;
e_b_other[1]->head.hflag |= e_b_other[0]->head.hflag;
BM_edge_splice(bm, e_a_other[0], e_a_other[1]);
BM_edge_splice(bm, e_b_other[0], e_b_other[1]);
@@ -806,8 +809,10 @@ static int bm_edge_collapse(BMesh *bm, BMEdge *e_clear, BMVert *v_clear, int r_e
BM_edge_kill(bm, e_clear);
v_other->head.hflag |= v_clear->head.hflag;
BM_vert_splice(bm, v_clear, v_other);
e_a_other[1]->head.hflag |= e_a_other[0]->head.hflag;
BM_edge_splice(bm, e_a_other[0], e_a_other[1]);
// BM_mesh_validate(bm);