Connexion
Menu Principal
Recherche
Menu secondaire
Image Aléatoire
wire.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
[WIP] et travaux terminés Bière Pentakill 8 216 Aujourd'hui 21:11:24
camelia59236 
Questions & Réponses pb de rotation a base d'array 3 62 Aujourd'hui 20:56:53
moonboots 
Questions & Réponses Disparition soudaine de tous les objets d'une scène    [1][2] 12 86 Aujourd'hui 15:51:24
moonboots 
Questions & Réponses [non résolu] problème de transparence a l'exportation blender,unity 5 151 Aujourd'hui 15:30:36
KRILIN07 
Questions & Réponses [résolu] NLA : mon animation ne joue pas 1 25 Aujourd'hui 15:13:04
moonboots 
The Blender Clan 'tchat Rech stagiaire animation,props3d 0 43 Aujourd'hui 09:53:30
majorfatal 
[WIP] et travaux terminés clip musical animé 0 45 Hier 22:25:34
medicalkit 
Questions & Réponses [résolu] Exportation animations fbx trop long 7 153 Hier 21:53:51
BleuRaven 
Questions & Réponses [résolu] Probleme de cliping ?    [1][2] 14 256 Hier 21:50:48
ewok2 
Questions & Réponses Fly navigation 1 199 Hier 19:35:42
fred937 
Questions & Réponses affichage des options de "propriété/material/" 7 143 Hier 15:23:21
Redstar 
Questions & Réponses bone axe rotation    [1][2] 12 206 Hier 11:04:37
sapajou 
Mes premières images sous Blender (débutants) Casque 2 111 22/04 20:14:25
parcker57 
Questions & Réponses [non résolu] Bas-relief, suite    [1][2][3] 20 1112 21/04 18:26:19
oliviertij 
The Blender Clan 'tchat Dev recherche partenaire graphiste pour créer des jeux 4 404 21/04 17:03:21
moonboots 
Questions & Réponses courber une arche 2 104 21/04 14:00:53
sapajou 
Questions & Réponses Cycles : nombre de samples ne correspond pas au réglage 4 150 21/04 13:39:54
Akumax 
The Blender Clan 'tchat Recherche modélisateurs pour projet court-métrage 1 113 21/04 10:32:01
Akumax 
Questions & Réponses Erreur de Camera import 5 268 20/04 17:12:39
Akumax 
Moteur de jeu GameBlender et alternatives Texture animée dans game 5 180 20/04 15:06:18
mani_mani 

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

Membre(s): 0
Invité(s): 38


plus...
Nouveaux membres
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
Merou78 14/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