# Understanding BMLoops: Does every loop enclose a face?

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.

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

## 1 Answer

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.