Hello,
I was wondering what is the difference between
bpy.ops.transform.rotate (value = ..., axis = ... constraint_axis = (False, False, False), constraint_orientation = 'GLOBAL' ...)
and
bpy.ops.transform.rotate (value = ..., axis = ... constraint_axis = (False, False, False), constraint_orientation = 'LOCAL' ...)
However, I would like to see in practice acting these functions. How effects the rotation matrices.
(It seems to me that the difference is related to [https://en.wikipedia.org/wiki/Euler_angles#Extrinsic_rotations](http://I was wondering what is the difference between bpy.ops.transform.rotate (value = …, axis = … constraint_axis = (False, False, False), constraint_orientation = ‘GLOBAL’ …)andbpy.ops.transform.rotate (value = …, axis = … constraint_axis = (False, False, False), constraint_orientation = ‘LOCAL’ …)However, I would like to see in practice acting these functions. How effects the rotation matrices. (It seems to me that the difference is related to [url))I was able to find one here is the link http://blender.stackexchange.com/questions/6880/find-bpy-function-in-source-codeidName it TRANSFORM_OT_rotate. and interesting to me to file blender-2.77 \ source \ blender \ editors \ transform \ transform_ops.c"]https://en.wikipedia.org/wiki/Euler_angles#Extrinsic_rotations)
I was able to find one here is the link
idname
is
TRANSFORM_OT_rotate
.
and interesting to me to file
blender-2.77 \ source \ blender \ editors \ transform \ transform_ops.c
static void TRANSFORM_OT_rotate(struct wmOperatorType *ot){
/* identifiers */
ot->name = "Rotate";
ot->description = "Rotate selected items";
ot->idname = OP_ROTATION;
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO | OPTYPE_BLOCKING;
/* api callbacks */
ot->invoke = transform_invoke;
ot->exec = transform_exec;
ot->modal = transform_modal;
ot->cancel = transform_cancel;
ot->poll = ED_operator_screenactive;
RNA_def_float_rotation(ot->srna, "value", 0, NULL, -FLT_MAX, FLT_MAX, "Angle", "", -M_PI * 2, M_PI * 2);
Transform_Properties(ot, P_AXIS | P_CONSTRAINT | P_PROPORTIONAL | P_MIRROR | P_GEO_SNAP | P_GPENCIL_EDIT);
}
I do not understand if i should look in
transform_exec;
?
Where can I find, what is going on? quaternion, rotation matrix anything ? How does
bpy.ops.transform.rotate affects on object