I'm using bmesh to alter my geometry via python. Now I don't seem to understand loops correctly. I thought that a BMLoop always covers the edges of a face as in it loops around it once. I can manouver back and forth between the next and previous loops via link_loop_previous/next and switch to adjacent face loops via link_loop_next_previous/next (order determined by the edge disks cycle around the loop vertex: https://wiki.blender.org/wiki/Source/Modeling/BMesh/Design)

But recently I stumbled upon a problem when i logged the loops that pass through a vertex which was the corner of a cube. The vertex had 4 loops. I don't understand what face the fourth loop should belongs to? I'm maybe understanding it incorrectly.

  • $\begingroup$ could you provide code to demonstrate the anomaly on default cube? $\endgroup$ – batFINGER Jul 31 '20 at 17:00
  • $\begingroup$ Could it be that there was an internal face? $\endgroup$ – Robert Gützkow Jul 31 '20 at 22:10
  • $\begingroup$ I have tried reproducing it for a cube but it was all ok, 3 loops per vertex. $\endgroup$ – glades Aug 6 '20 at 4:56

I believe the problem was that I was adding geometry while I was running the function and it right away included the additional loops that were being created in the background.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.