Make the only selected face active

if I have only one selected mesh component (face, edge, vertex), how would I go about making it the active one ?

??? If there’s only one element selected, then that element is the active one!!

Can you explain a bit better what you’re trying to do (and what are you getting from your tries)?

You use the active property of that mesh component.


bpy.data.objects['Cube'].data.polygons.active = 1 #1 as the faces index

You can loop through the mesh components and assign the selected active:


for face in bpy.data.objects['Cube'].data.polygons:
    if face.select:
        bpy.data.objects['Cube'].data.polygons.active = face.index

There are cases where this isn’t true.

Thanks cmomoney,
I had to add “.data” after “.data.objects[‘Cube’]”, otherwise there wouldn’t be a “polygons” attribute.
Other than that your script works but only in Object Mode. Do you think there’s a way to make it work without leaving Edit Mode ?
Secrop, as cmomoney pointed out, the active face can be unselected, leaving the remaining selection inactive.