Console de Python¶
La console de Python est un moyen rapide d’exécuter des commandes, avec accès à tout l’API Python, à l’historique des commandes et à l’auto-complétion. L’invite de commande est typique pour python 3.x, l’interpréteur est chargé et est prêt à accepter des commandes à l’invite >>>
..
La console de Python est un bon moyen pour explorer les possibilités du Python intégré dans Blender. La console de Python peut être utilisée pour tester de petits bouts de code Python qui peuvent ensuite être collés dans des scripts plus grands.
Interface¶
View Main¶
Raccourcis clavier
Gauche / Droite – Déplacement du curseur.
Ctrl-Gauche / Ctrl-Droite – Déplacement du curseur, par mot.
Ret.Arr. / Suppr. – Effacer les caractères.
Ctrl-Ret.Arr. / Ctrl-Suppr. – Effacer les mots.
Entrée – Exécuter la commande.
Maj-Entrée – Ajouter à la commande history sans exécution.
Utilisation¶
Alias¶
Certains variables et modules sont disponibles pour des raisons pratiques :
C
: accès rapide àbpy.context
.D
: accès rapide àbpy.data
.bpy
: module API Python Blender de haut niveau.
Premier pas avec l’environnement de la Console¶
Pour vérifier ce qui est chargé dans l’environnement de l’interpréteur, tapez dir()
à l’invite et exécutez-le.
Complétion automatique¶
Maintenant tapez bpy.
et ensuite pressez Tab et vous verrez en action la fonction de complétion automatique de la Console.
Vous remarquerez qu’une liste de sous-modules dans bpy
apparaît. Ces modules encapsulent tout ce que nous pouvons faire avec l’API Python de Blender et sont des outils très puissants.
Listons tout le contenu du module bpy.app
.
Notez la sortie en vert au dessus de l’invite où vous avez activé la complétion automatique. Ce que vous voyez est le résultat du listing de la complétion automatique. Dans le listing ci-dessus figurent des noms attribués à des modules, mais si vous voyez un nom se terminant par (
, alors c’est une fonction.
Nous ferons grand usage de cela pour accélérer notre apprentissage de l’API. Maintenant que vous avez compris cela, passons à l’étude de certains modules de bpy
.
Avant de jouer avec les modules¶
Si vous regardez la Vue 3D dans la scène par défaut de Blender, vous remarquerez trois objets : Cube, Light et Camera.
Tous les objets existent dans un contexte et il peut y avoir divers modes dans lesquels ils opèrent.
Dans tous les cas, un objet et un seul est actif et il peut y avoir plus d’un objet sélectionné.
Tous les objets sont enregistrés comme données dans le fichier blend.
Il existe des opérateurs/fonctions qui créent et modifient ces objets.
Pour tous les scénarios susmentionnés (pas tous sont mentionnés, bien entendu…) le module bpy
fournit des fonctions pour accéder et modifier les données.
Exemples¶
bpy.context¶
Note
Pour que les commandes ci-dessous affichent la sortie correcte, assurez-vous que vous avez sélectionné de(s) objet(s) dans la Vue 3D.
bpy.context.mode
Affichera le mode Vue 3D courant (Object, Edit, Sculpt, etc.).
bpy.context.object
oubpy.context.active_object
Vous donnera accès à l’objet actif dans la Vue 3D.
Changer la position X à une valeur de 1
bpy.context.object.location.x = 1
Déplacer l’objet de la position X précédente de 0.5 unité
bpy.context.object.location.x += 0.5
Modifier la position X, Y, Z
bpy.context.object.location = (1, 2, 3)
Changez seulement les composants X et Y
bpy.context.object.location.xy = (1, 2)
Le type de donnée de la position de l’objet
type(bpy.context.object.location)
À présent c’est beaucoup de données auxquelles vous avez accès
dir(bpy.context.object.location)
bpy.context.selected_objects
Donnera accès à une liste de tous les objets sélectionnés.
Tapez ceci et ensuite pressez sur Tab:
bpy.context.selected_objects
Pour afficher le nom du premier objet dans la liste
bpy.context.selected_objects[0]
Une ligne complexe… Mais ceci affiche une liste d’objets n’incluant pas l’objet actif
[obj for obj in bpy.context.selected_objects if obj != bpy.context.object]
bpy.data¶
bpy.data
a des fonctions et des attributs qui vous donnent accès à toutes les données dans le fichier blend.
Vous pouvez accédez à toutes les données suivantes dans le fichier blend courant : objets, maillages, matériaux, textures, scènes, écrans, sons, scripts, etc.
C’est beaucoup de données.
bpy.ops¶
Le système d’outils est construit autour du concept d’opérateurs. Les opérateurs sont typiquement exécutés avec des boutons ou des menus mais peuvent aussi être appelés directement depuis Python.
Voir la documentation `bpy.ops <https://docs.blender.org/api/current/bpy.ops.html>>`__ API pour une liste de tous les opérateurs.