diff options
author | Antony Riakiotakis <kalast@gmail.com> | 2012-03-22 01:40:42 +0400 |
---|---|---|
committer | Antony Riakiotakis <kalast@gmail.com> | 2012-03-22 01:40:42 +0400 |
commit | 95f66f162ce695310872950232b6a00633646e1e (patch) | |
tree | 35d244d049192a07eedd2aae537a30361709c620 /source/blender/bmesh/intern/bmesh_walkers.h | |
parent | ff7088088f63a2cfb4ab9b2219c29afe751dfed8 (diff) |
Fix #30504 selecting self-intersecting face loop won't work correctly.
Added generic secondary hash to walker. In faceloop select it is used to remember if edge has been previously visited, in addition to the hash used for faces. This solves the case where walker stops if it finds an already added face.
Diffstat (limited to 'source/blender/bmesh/intern/bmesh_walkers.h')
-rw-r--r-- | source/blender/bmesh/intern/bmesh_walkers.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/source/blender/bmesh/intern/bmesh_walkers.h b/source/blender/bmesh/intern/bmesh_walkers.h index 90f7b36e3a2..1d548a0d4c7 100644 --- a/source/blender/bmesh/intern/bmesh_walkers.h +++ b/source/blender/bmesh/intern/bmesh_walkers.h @@ -61,6 +61,7 @@ typedef struct BMWalker { short mask_face; GHash *visithash; + GHash *secvisithash; int depth; } BMWalker; |