Connexion
Menu Principal
Recherche
Menu secondaire
Image Aléatoire
portrait_fin5.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 6090 FS Hydraulic Mining Shovel Caterpillar    [1][2][3] 29 3441 Aujourd'hui 18:55:54
busanga 
Questions & Réponses [non résolu] Courbe de bezier 5 175 Aujourd'hui 16:37:58
zeromeetsinfinity 
Questions & Réponses Redimensionner et exporter dans plusieurs échelles ? 2 56 Aujourd'hui 15:51:44
thibd 
Concours Défis du Clan 2018 - semaine 6 : "Cabinet de curiosités" 4 325 Aujourd'hui 12:35:11
Jimoke 
Mes premières images sous Blender (débutants) club Blender en collège/lycée - 3ème projet : un robot-chat [page 4]    [1][2][3]...[5] 44 10843 Hier 21:32:09
Jimoke 
Questions & Réponses question de débutante: courbe de béziers, arrière plan et viewer    [1][2] 15 719 Hier 21:14:02
blend74 
The Blender Clan 'tchat Gagner de l'argent avec Blender 4 434 Hier 09:12:25
moonboots 
Questions & Réponses [non résolu] Problème fonction boolean 9 3210 Hier 07:57:19
blendinfos 
[WIP] et travaux terminés [terminé] Le château magique - vidéo musique    [1][2] 19 1856 17/02 20:40:45
cricrie88 
Questions & Réponses Exporter une animation sans rendu 8 269 17/02 17:46:47
Deleatur 
Questions & Réponses Sélectionner des "boucles de surfaces" sur MacBook 8 322 17/02 17:02:28
smog 
[WIP] et travaux terminés [WIP] Wips Divers Lollito    [1][2][3]...[28] 278 38906 17/02 14:23:23
lollito 
Questions & Réponses [résolu] Mon sculpt ne sculpte pas! 1 167 16/02 21:32:00
webherbe 
Questions & Réponses Addon librairie 3 381 16/02 21:22:58
Lagaffe 
Questions & Réponses Question : modificateur Cloth 5 270 16/02 17:11:22
jerms 
Le coin des geeks config 1 142 16/02 10:13:25
Redstar 
Questions & Réponses Modifier position d'un personnage importé depuis Makehuman 2 198 15/02 22:50:13
Ragnaroklm 
Questions & Réponses comment supprimer les arêtes 8 407 15/02 22:06:47
ocin35 
Mes premières images sous Blender (débutants) Première sclupture 2 353 15/02 13:08:47
moonboots 
Questions & Réponses Débutant : non affichage de la grille couleur en mode texture apres depliage du mesh 2 273 15/02 12:56:58
moonboots 

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

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


plus...
Nouveaux membres
thibd 19/2/2018
ewok2 17/2/2018
torishogun 17/2/2018
smog 16/2/2018
vlad 16/2/2018
Ragnaroklm 15/2/2018
jerms 15/2/2018
Verororo 15/2/2018
Jeanjean 15/2/2018
noway1789 15/2/2018
Dernier Ajout
DB11_Aston_Martin_2017_bothview.jpg

Evènements à venir
Fev 23
anniversaire de windspirit
Mar 14
Anniversaire de AMV12
Mar 16
Anniversaire de galba
plus 307 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