[Bf-blender-cvs] [72aefef9d23] blender-v3.0-release: Fix T93695: Discontinuous cutting with the knife tool
Cian Jinks
noreply at git.blender.org
Tue Jan 11 10:38:39 CET 2022
Commit: 72aefef9d23aa0c355822324b91e83c1f3fbbaab
Author: Cian Jinks
Date: Wed Jan 5 18:27:52 2022 +0000
Branches: blender-v3.0-release
https://developer.blender.org/rB72aefef9d23aa0c355822324b91e83c1f3fbbaab
Fix T93695: Discontinuous cutting with the knife tool
An important check to reject edge linehits when a vertex of that edge
was already hit was accidentally removed in
rB6e77afe6ec7b6a73f218f1fef264758abcbc778a
===================================================================
M source/blender/editors/mesh/editmesh_knife.c
===================================================================
diff --git a/source/blender/editors/mesh/editmesh_knife.c b/source/blender/editors/mesh/editmesh_knife.c
index b712cfc24ed..18ae112de47 100644
--- a/source/blender/editors/mesh/editmesh_knife.c
+++ b/source/blender/editors/mesh/editmesh_knife.c
@@ -3009,6 +3009,12 @@ static void knife_find_line_hits(KnifeTool_OpData *kcd)
for (val = BLI_smallhash_iternew(&kfes, &hiter, (uintptr_t *)&kfe); val;
val = BLI_smallhash_iternext(&hiter, (uintptr_t *)&kfe)) {
+ /* If we intersect any of the vertices, don't attempt to intersect the edge. */
+ if (BLI_smallhash_lookup(&kfvs, (intptr_t)kfe->v1) ||
+ BLI_smallhash_lookup(&kfvs, (intptr_t)kfe->v2)) {
+ continue;
+ }
+
knife_project_v2(kcd, kfe->v1->cageco, se1);
knife_project_v2(kcd, kfe->v2->cageco, se2);
int isect_kind = 1;
More information about the Bf-blender-cvs
mailing list