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


     




(1) 2 »


Création d'une interface graphique pour mes scripts python
Touriste
Inscrit:
05/07/2017 10:23
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/2017 14:12
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 17:05
De Le plus grand terrier du monde ! Et le plus high-tech.
Post(s): 4049
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/2017 14:24
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 19:12
De CH [+]
Post(s): 1558
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/2017 14:25
_________________
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/2017 10:23
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/2017 14:43
Créer un fichier PDF de la contribution Imprimer


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

Contribution le : 10/07/2017 15:03
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 19:12
De CH [+]
Post(s): 1558
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/2017 15:12
_________________
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 17:05
De Le plus grand terrier du monde ! Et le plus high-tech.
Post(s): 4049
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 : 10/07/2017 23:37
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 15: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/2017 14:37
Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
Touriste
Inscrit:
05/07/2017 10:23
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/2017 09:38
Créer un fichier PDF de la contribution Imprimer


Re: Création d'une interface graphique pour mes scripts python
Touriste
Inscrit:
05/07/2017 10:23
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/2017 11:16
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
Questions & Réponses [non résolu] aide animation 4 37 Aujourd'hui 20:45:49
Thelonewolf 
Moteur de jeu GameBlender et alternatives Au revoir, BGE 1 21 Aujourd'hui 19:49:51
Redstar 
The Blender Clan 'tchat [BUG PARIS] RDV en 2018 !    [1][2][3]...[69] 682 150017 Aujourd'hui 18:00:50
edddy 
Questions & Réponses [résolu] pb de rotation a base d'array 4 96 Aujourd'hui 16:50:18
ewok2 
Questions & Réponses Disparition soudaine de tous les objets d'une scène    [1][2] 14 155 Aujourd'hui 14:36:52
Scylla 
Questions & Réponses Problème de numéro d'image de rendu 7 430 Aujourd'hui 14:34:47
Scylla 
Hors Sujet !! Le sujet des conseils musicaux !    [1][2][3]...[37] 364 117937 Aujourd'hui 12:45:15
Jimoke 
Questions & Réponses [résolu] Animation qui ne suit pas le path 3 45 Aujourd'hui 09:50:53
Rimpotche 
[WIP] et travaux terminés Bière Pentakill 9 262 Aujourd'hui 08:01:35
Tardifice 
Questions & Réponses [non résolu] problème de transparence a l'exportation blender,unity 5 172 Hier 15:30:36
KRILIN07 
Questions & Réponses [résolu] NLA : mon animation ne joue pas 1 46 Hier 15:13:04
moonboots 
The Blender Clan 'tchat Rech stagiaire animation,props3d 0 69 Hier 09:53:30
majorfatal 
[WIP] et travaux terminés clip musical animé 0 61 23/04 22:25:34
medicalkit 
Questions & Réponses [résolu] Exportation animations fbx trop long 7 160 23/04 21:53:51
BleuRaven 
Questions & Réponses [résolu] Probleme de cliping ?    [1][2] 14 262 23/04 21:50:48
ewok2 
Questions & Réponses Fly navigation 1 203 23/04 19:35:42
fred937 
Questions & Réponses affichage des options de "propriété/material/" 7 149 23/04 15:23:21
Redstar 
Questions & Réponses bone axe rotation    [1][2] 12 222 23/04 11:04:37
sapajou 
Mes premières images sous Blender (débutants) Casque 2 127 22/04 20:14:25
parcker57 
Questions & Réponses [non résolu] Bas-relief, suite    [1][2][3] 20 1129 21/04 18:26:19
oliviertij 

Qui est en ligne
22 utilisateur(s) en ligne (dont 14 sur Forums)

Membre(s): 2
Invité(s): 20


moonboots, TicTacBoom, plus...
Nouveaux membres
Thelonewolf 25/4/2018
KRILIN07 22/4/2018
RyoChouChou 22/4/2018
parcker57 22/4/2018
JeSuisJerome 22/4/2018
supreme 21/4/2018
Rex95B 20/4/2018
Lucien69 20/4/2018
fredoart 18/4/2018
sebastiounet 16/4/2018
Dernier Ajout
DB11_Aston_Martin_2017_bothview.jpg

Evènements à venir
Jui 30
Anniv des Jedi :-D
Jui 14
BUG de Lyon
Jui 23
Anniv du BlenderClan !
plus 303 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