Votre premier Panel
Bien entendu, le scripting Python dans Blender ne s'arrête pas là, à ce stade qui relève simplement de la macro-commande. Vous allez maintenant créer votre premier Panel dans l'interface de Blender. Qu'est-ce qu'un Panel ? Il s'agit d'une zone de l'interface que vous pouvez placer n'importe où dans la partie droite de Blender, où toutes les propriétés sont présentes. Dans la fenêtre Texte, tapez les lignes suivantes :
class ObjectButtonsPanel(bpy.types.Panel):
bl_space_type = "PROPERTIES"
bl_region_type = "WINDOW"
bl_context = "object"
class MonPanel(ObjectButtonsPanel):
bl_label = "Mon Panel"
def draw(self, context):
layout = self.layout
bpy.types.register(MonPanel)
Faites très attention à ce qu'on appelle l' « indentation » dans les scripts Python : c'est-à-dire les décalages de lignes, que l'on fait en général avec des tabulations. Python est très sensible à cela, et le moindre décalage incorrect vous donnera des erreurs.
Lancez ce script (ALP-P) et allez voir dans la section Object de vos propriétés (le petit icone cube de la zone des paramètres) : tout en bas votre Panel (vide) est présent. (Il sera peut nécessaire d'ouvrir un Panel de cette zone (par exemple « Custom Properties ») pour que votre Panel s'affiche tout en bas à droite de l'écran.

Des infos dans mon Panel
Pas très intéressant ce Panel vide... Remarquons quand même qu'il est placé dans la fenêtre des PROPERTIES et dans l'onglet « object » grâce aux 3 premières lignes du script.
Il se nomme « Mon Panel », du nom du label de sa classe, et qu'on peut le voir car il est « enregistré » dans Blender par la dernière ligne du script.
Ajoutons quelques infos en plaçant les lignes suivantes juste avant la dernière ligne du script :
row = layout.row()
row.label(text="Infos !", icon='WORLD_DATA')
col = layout.column()
row = col.row()
ob = context.object
type = ob.type.capitalize()
row.label(text="Objet Courant : "+ob.name)
row = col.row()
if type == 'Mesh':
row.label(text="Objet de type Mesh avec "+str(len(ob.data.verts))+" sommets.")
else:
row.label(text="Objet de type "+type+".")
row = layout.row()
row.alignment = 'RIGHT'
row.label(text="Creanum 2010")
Relancez votre script (ALT-P) et voici votre nouveau Panel, beaucoup plus intéressant, qui vous donne le nom de l'objet sélectionné, ainsi que son nombre de sommets si c'est un Mesh, ou simplement le type de l'objet si ce n'est pas le cas.
Prenez le temps d'étudier de près ce script : il contient énormément d'informations sur la création de Panels, des lignes de texte (row.label), de l'objet courant (context.object), de la liste de ses sommets (data.verts), etc.