6.3 Types pour les maths

Les vecteurs, les quaternions, les angles d'Euler, les matrices et les types de couleurs sont accessible depuis mathutils.

Des attributs comme bpy.types.Object.location, bpy.types.PoseBone.rotation_euler et bpy.types.Scene.cursor_location sont accessible comme des types spéciaux et peuvent être utilisés ensemble pour faire différentes choses.

Par exemple, une multiplication matrice-vecteur :

1
bpy.context.object.matrix_world * bpy.context.object.data.verts[0].co

Mathutils garde une référence des données Blender, donc les changements sont appliqués immédiatement.

Exemple :

1
2
3
4
5
6
7
8
9
10
# modifies the Z axis in place.
bpy.context.object.location.z += 2.0

# location variable holds a reference to the object too.
location = bpy.context.object.location
location *= 2.0

# Copying the value drops the reference so the value can be passed to
# functions and modified without unwanted side effects.
location = bpy.context.object.location.copy()

La dernière ligne indique comment copier une variable pour que sa modification n'affecte pas la scène finale.