Fix missing adjacent UV check for recent UV path select

Path selection could cross UV islands if the destination element was
on an island boundary.
This commit is contained in:
Campbell Barton
2020-07-10 12:18:43 +10:00
parent 8f24ec2e26
commit b0378440ce

View File

@@ -169,7 +169,7 @@ struct LinkNode *BM_mesh_calc_path_uv_vert(BMesh *bm,
while (!BLI_heapsimple_is_empty(heap)) {
l = BLI_heapsimple_pop_min(heap);
if (l->v == l_dst->v) {
if ((l->v == l_dst->v) && BM_loop_uv_share_vert_check(l, l_dst, params->cd_loop_uv_offset)) {
break;
}
@@ -180,7 +180,7 @@ struct LinkNode *BM_mesh_calc_path_uv_vert(BMesh *bm,
}
}
if (l->v == l_dst->v) {
if ((l->v == l_dst->v) && BM_loop_uv_share_vert_check(l, l_dst, params->cd_loop_uv_offset)) {
do {
BLI_linklist_prepend(&path, l);
} while ((l = loops_prev[BM_elem_index_get(l)]));