Python api: rotar seleccionado alrededor del vértice usando el operador bpy

Aug 31 2020

Quiero rotar un elemento seleccionado alrededor de un vértice específico como este:

 vertex.select=true
 bpy.ops.transform.rotate(value=1)

Este código básicamente gira en el centro del cuadro delimitador. He intentado configurar el cursor del punto de pivote y configurar manualmente el cursor, pero esto no funciona.

bpy.context.scene.tool_settings.transform_pivot_point = 'CURSOR'
bpy.context.scene.cursor.location = (1,1,1)
    
bpy.ops.transform.rotate(value=1)

El resultado sigue siendo una rotación con eje en el punto central del objeto.

Estoy buscando una solución simple a nivel de scripting para este problema.

Respuestas

1 mugnozzo Aug 31 2020 at 19:42

El bpy.ops.transform.rotate()gira sobre el origen del objeto.

Puedes hacerlo bpy.ops.transform.rotate(value=yourValue,center_override=(x,y,z))donde x, y y z son las x, y y z del vértice.

Básicamente, center_override anula la posición del pivote de rotación.