Connexion
Menu Principal
Recherche
Menu secondaire
Image Aléatoire
pf2.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): 12
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): 4041
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): 1512
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): 12
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): 12
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): 1512
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): 4041
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): 561
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): 12
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): 12
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
Questions & Réponses [résolu] Curve form mesh (soucis) 2 58 Hier 23:31:24
sinope 
Le coin des geeks Projet de passer à Linux    [1][2][3]...[14] 130 10916 Hier 22:47:52
Matpi 
[WIP] et travaux terminés Les WIP's de Pandora 5 264 Hier 22:07:47
Ecirbaf 
Moteur de jeu GameBlender et alternatives [WIP] Fps Survival Horror    [1][2][3]...[20] 194 19087 Hier 11:59:08
Hook 
Questions & Réponses [non résolu] ajouter des normals map ensemble 1 90 Hier 11:12:48
busanga 
[WIP] et travaux terminés [WIP] Un raton-laveur en costume (oui oui) 5 523 Hier 07:58:14
Zehnor 
Python & Plugins [non résolu] Travail en Python complexe 2 241 Hier 07:33:50
maixem 
[WIP] et travaux terminés [WIP] Meuble pour enfant 1 257 21/07 23:38:18
KADOSH 
Questions & Réponses [résolu] probleme de calquages "layer" dans le rendu 1 124 21/07 21:34:44
sirius21 
Questions & Réponses [résolu] Effet spot éclairage 2 153 21/07 11:36:23
Jaysc 
Questions & Réponses Probleme d'UV mapping 6 338 20/07 17:50:16
moonboots 
[WIP] et travaux terminés [WIP] La petite fourmi 9 462 20/07 17:18:09
KADOSH 
Questions & Réponses [non résolu] Problème de combinaison d'action 2 159 20/07 16:51:41
Ringskar 
The Blender Clan 'tchat Cherche Modeleur 3D/ emploi rémunéré 2 473 20/07 15:41:01
littlealien 
Questions & Réponses création d'un moule à partir d'une pièce au format stl    [1][2] 13 3209 20/07 15:30:47
JaAlVir657 
Mes premières images sous Blender (débutants) faire une lithophanie    [1][2] 17 1079 19/07 20:57:27
edddy 
[WIP] et travaux terminés [terminé] Typographisme 7 498 19/07 19:43:27
Zehnor 
The Blender Clan 'tchat AVE a tous compagnon du clan 3 370 19/07 12:17:55
Prosper1er 
Questions & Réponses [*Avancé] Modificateur noise sur une caméra : Comment ajouter une image clé ? 1 244 19/07 09:16:30
Rimpotche 
[WIP] et travaux terminés [terminé] Ichnos - Petit film 2D (avec un peu de 3D) 0 239 19/07 00:52:13
ximun64 

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

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


plus...
Nouveaux membres
JACKY56 22/7/2017
gasbakel 21/7/2017
sirius21 21/7/2017
Linkartoon95 19/7/2017
Tchutcho 19/7/2017
OmegaToxx 18/7/2017
UniQRoseZ 17/7/2017
alexandremilani 17/7/2017
cap 14/7/2017
daltonelgringo 13/7/2017
Dernier Ajout
Dp50.png

Evènements à venir
23:05
Anniv du BlenderClan !
Aou 4
Anniversaire de xemphra
Aou 7
anniversaire Cem47
plus 317 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