Connexion
Menu Principal
Recherche
Menu secondaire
Image Aléatoire
Voiture2.jpg
Publicité
Formation Blender ElephormBlender 3d Elephorm


     




(1) 2 »


Création d'une interface graphique pour mes scripts python
Touriste
Inscrit:
05/07 11:23:13
Post(s): 13
Bonjour,

Je suis en train de faire des petits scripts pyhton auxquels j'aimerais assigner une interface graphique dans Blender.

Pour commencer, j'aimerais réussir à créer une interface graphique que l'on peut utiliser pour sélectionner des objets par leurs noms

L'objectif étant d'arriver à quelque chose comme ça :



J'ai pour cela suivi un tutoriel et je suis arrivé au code suivant :

import bpy
import Blender
from Blender import Draw, BGL

# Valeurs initiales des boutons :
stringName = Draw.Create("Cube")

#Fonction selectbyname : 
def selectbyname(name):
    name = "*" + name + "*"
    bpy.ops.object.select_pattern(pattern=name)

#Assignation des numeros d'evenement aux boutons    
EV_BT_OK = 1
EV_BT_CANCEL = 2
EV_ST_NAME = 3

#Assignation des positions de lignes
ligne = [None, None, None]
ligne[0] = 5
ligne[1] = 35
ligne[2] = 65

def event(evt, val):
    if event == Draw.ESCKEY:
        stop = Draw.PupMenu("OK?%t|Stopper le script %x1")
    if stop == 1:
        Draw.Exit()
def button_event(evt):
    if evt==EV_BT_OK:
        selectbyname(stringName.val)
        Blender.Redraw()
    elif evt==EV_BT_CANCEL:
        Draw.Exit()
def draw_gui():
    global stringName
    BGL.glRasterPos2i(5, ligne[2])
    Draw.Text("Choisissez le nom à sélectionner")
    Draw.pushButton("OK", EV_BT_OK, 5, ligne[0], 60, 25, "Valider")
    Draw.PushButton("Cancel", EV_BT_CANCEL, 80, ligne[0], 60, 25, "Annuler")
    stringName = Draw.String("Nom: ", EV_ST_NAME, 5, ligne[1], 310, 25, stringName.val, 32, "Nom à selectionner : ")
    
Draw.register(draw_gui, event, button_event)



Il y a une erreur, la console m'affiche :

Traceback (most recent call last):
File "<blender_console>", line 1, in <module>
NameError: name 'Draw' is not defined

Je ne m'y connais pas assez pour comprendre de quoi il s'agit.

Ai-je fait une erreur bête? ou la syntaxe n'est-elle pas bonne?

Je vous remercie d'avance pour votre aide !

Contribution le : 10/07 15:12:27
Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
OverdOzed
Inscrit:
16/01/2011 18:05
De Le plus grand terrier du monde ! Et le plus high-tech.
Post(s): 4044
Tu veux juste afficher une pop-up pour sélectionner un objet / rentrer un nom qui permettra de le sélectionner ?
Dans l'interface classique ? (pas avec le BGE)

Si c'est le cas tu te complique fortement la vie avec bgl, Blender fournit ça de base.

Contribution le : 10/07 15:24:16
Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
OverdOzed
Inscrit:
21/08/2013 20:12
De CH [+]
Post(s): 1555
Salut,

Le code que tu nous montres est prévu pour l'API de Blender 2.4x, assez différente de l'API actuelle.

Donc soit tu travailles encore avec cette version-là, et dans ce cas je ne crois guère que tu trouves beaucoup d'aide, soit tu travailles avec une version récente et il te faut trouver quelques tutos sur Python datant d'il y a moins d'un siècle (ce qui ne devrait pas être trop compliqué).

Et si tu travailles avec une version récente, je suis étonné de l'erreur que tu reçois, la deuxième ligne devrait déjà faire crasher le script.


EDIT: eh, j'ai vu passer un lapin fantôme!

Contribution le : 10/07 15:25:42
_________________
BAddons, La Collection d'Addons de Matpi: https://github.com/qwenger/BAddons
Développeur Blender quand j'en ai le temps...

Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
Touriste
Inscrit:
05/07 11:23:13
Post(s): 13
J'aimerai pouvoir rentrer un nom qui permettra de le sélectionner.

Je ne sais pas ce qu'est le BGE.




Je pars a la recherche de tutoriel plus récent alors, merci !

Contribution le : 10/07 15:43:21
Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
Touriste
Inscrit:
05/07 11:23:13
Post(s): 13
Si vous avez des tutoriels récent à me proposer, je suis partant, merci !

Contribution le : 10/07 16:03:49
Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
OverdOzed
Inscrit:
21/08/2013 20:12
De CH [+]
Post(s): 1555
Virtuellement n'importe quel tutoriel apparaissant dans les premiers résultats de la recherche "blender python tutorial" sur ton moteur de recherche préféré. Je ne comprends pas comment tu es arrivé sur un tuto pour 2.4x.

Contribution le : 10/07 16:12:35
_________________
BAddons, La Collection d'Addons de Matpi: https://github.com/qwenger/BAddons
Développeur Blender quand j'en ai le temps...

Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
OverdOzed
Inscrit:
16/01/2011 18:05
De Le plus grand terrier du monde ! Et le plus high-tech.
Post(s): 4044
Je me disais bien que ça ressemblait méchamment à la série 2.4x
(le import Blender aurait dû me mettre la puce à l'oreille, bien vu Matpi)


Comme le dit Matpi, le premier tutoriel qui tombe sur la création d'interface graphique avec python te donnera les grandes lignes du fonctionnement, via les panneaux par exemple.
Si par la suite tu as besoin spécifiquement d'un pop-up, tu trouvera aussi en affinant ta recherche
Mais n'hésite pas si tu as besoin d'aide

Contribution le : 11/07 00:37:41
Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
OverdOzed
Inscrit:
30/12/2011 16:44
Post(s): 564
Il y a aussi la possibilité de se baser sur un des templates disponibles dans l'éditeur de texte.

Contribution le : 11/07 15:37:30
Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
Touriste
Inscrit:
05/07 11:23:13
Post(s): 13
Rebonjour ! J'ai trouvé effectivement des tutoriels beaucoup plus récent :)
Je peux donc créer un panneau avec les templates, mais ce que j'aimerais c'est de pouvoir créer un bouton qui lance mon script.

Par exemple j'ai le script suivant très simple :

import bpy

bpy.ops.object.select_pattern(pattern="*Cube*")


qui me permet de sélectionner tous les cubes (non renommés)

Est-il possible de créer un bouton qui va exécuter ce script?

Par la suite je souhaiterais faire en sorte que ce soit l'utilisateur qui choisisse le nom à sélectionner (en changeant la variable 'name') :

import bpy

name = "Cube"
name = "*" + name + "*"
bpy.ops.object.select_pattern(pattern="name")


Merci encore de m'aider !

Contribution le : 12/07 10:38:24
Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
Touriste
Inscrit:
05/07 11:23:13
Post(s): 13
J'ai réussi à créer les boutons pour lancer mes scripts, je cherche juste a pouvoir modifier une variable avec un bouton maintenant.

Contribution le : 12/07 12:16:17
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant
(1) 2 »




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
Moteur de jeu GameBlender et alternatives Armory3d moteur alternatifs 6 381 Aujourd'hui 04:36:14
Fadge 
Questions & Réponses Nodes (Shaders) 1 73 Hier 23:49:31
Rimpotche 
Moteur de jeu GameBlender et alternatives BGA Pygame et Python pour coder un jeu (du plus simple au plus poussé)    [1][2] 12 325 Hier 21:24:44
Redstar 
The Blender Clan 'tchat Livre Rendu 3D avec Blender et Cycles    [1][2][3]...[5] 40 10176 Hier 20:25:48
origalde 
Questions & Réponses [non résolu] Problème de vertices qui partent en vacance ! 0 54 Hier 18:57:57
Gizmil 
Questions & Réponses Créer un panneau "Attention !" dans l'interface de Blender 5 239 Hier 18:49:39
Gizmil 
[WIP] et travaux terminés [terminé] Ordre et propreté - L'embauche...1er épisode 0 62 Hier 18:25:58
alienator1 
Questions & Réponses Point centra face problème subdivisions après plusieurs autres subdivisions... 4 187 Hier 18:21:00
Zack2554 
Moteur de jeu GameBlender et alternatives [WIP] Fps Survival Horror (Première vidéo de gameplay page 23)    [1][2][3]...[25] 247 25149 Hier 16:26:10
Hook 
Questions & Réponses Des modifiers de Material différents pour chaque particules ? 6 430 Hier 16:05:05
Boxime 
The Blender Clan 'tchat Blender Conférence 27-28-29 Octobre 2017 Amsterdam 3 894 Hier 15:07:54
julien_ 
Mes premières images sous Blender (débutants) Problème de collision 1 98 Hier 09:01:14
Redstar 
Questions & Réponses [non résolu] Sélection via Subsurf 0 82 18/09 18:39:45
Jaysc 
Python & Plugins [Addon] Skin Selection 0 99 18/09 15:52:58
lucky 
Mes premières images sous Blender (débutants) Divine volumétrie... ou addiction au volumétrique. 6 1092 18/09 14:42:19
Philelopez 
Questions & Réponses supprimer la relation objet-path 2 166 18/09 13:01:48
sapajou 
Concours Défis du Clan - s.37 - Thème : "Anachronisme"    [1][2] 10 529 18/09 11:55:45
Jimoke 
Hors Sujet !! Présentation pour tous    [1][2][3]...[99] 980 227013 18/09 09:27:22
Zack2554 
[WIP] et travaux terminés [WIP] Wips Divers Lollito    [1][2][3]...[26] 251 32173 18/09 07:35:19
Fadge 
Questions & Réponses [résolu] comment ignorer le Compositing lors d'un rendu 6 197 17/09 10:39:09
moonboots 

Qui est en ligne
29 utilisateur(s) en ligne (dont 20 sur Forums)

Membre(s): 1
Invité(s): 28


ebrain, plus...
Nouveaux membres
Leandro69N 20/9/2017
Marguerite 20/9/2017
TFILatanya 20/9/2017
AvaCorwin9 20/9/2017
TaniaRober 19/9/2017
TerrellCru 19/9/2017
ORXKeira88 19/9/2017
Zack2554 17/9/2017
Dan67 16/9/2017
sylca 13/9/2017
Dernier Ajout
seul.jpg

Evènements à venir
Oct 7
BUG de Paris
Oct 15
Aniv de melti
Nov 18
Anniversaire de RichDeg
plus 313 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2017 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445