📋 Metadata

💬 Content

Woolfy13:

If one or more edges selected> then only merge
If no edge selected> select whats under the mouse+merge

Add a Stack Key with D hotkey, Mesh keymap and this code (Command tab):

import bmesh; bm = bmesh.from_edit_mesh(C.object.data); num_sel_edges = len([e for e in bm.edges if e.select]); open_menu("108 D Edge") if num_sel_edges == 0 else bpy.ops.mesh.merge(type='COLLAPSE')

Don’t forget to unset D hotkey for 108 D Edge macro.

Or import this file


If you prefer poll methods use this code:
No selected edges:

import bmesh; bm = bmesh.from_edit_mesh(C.object.data); num_sel_edges = len([e for e in bm.edges if e.select]); return num_sel_edges == 0

1+ selected edges:

import bmesh; bm = bmesh.from_edit_mesh(C.object.data); num_sel_edges = len([e for e in bm.edges if e.select]); return num_sel_edges > 0

❤️ 4 likes


🔗 View on Blender Artists