- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
Deviens membre Premium magic_button
Débloque cette session en devenant Membre Premium 🚀
Inscris-toi
(c'est gratuit !)
Un compte est nécessaire pour participer aux discussions.
Créer un compte person00:00:00 :Dans cette partie, on va voir comment interagir avec l'utilisateur.Donc, l'utilisateur dans ce cas-ci, ça va être moi.Ça pourrait être quelqu'un qui utilise votre script,puisqu'on va vouloir, par exemple, que quand quelqu'un lance votre script,il y ait une boîte de dialogue qui lui demande des informationspour qu'il n'ait pas à modifier directement votre script
00:00:18 :pour modifier le comportement de celui-ci.Par exemple, on va faire un script très simple qui permet de créer un cubeet on souhaiterait que la personne qui utilise notre scriptpuisse spécifier la largeur du cube.
00:00:29 :Dans mon script éditor, je vais importer mayacmds as mc.Notre script va être mc.polycubeet dans le width, on va mettre une valeur de 5.
00:00:40 :Je peux exécuter ce script et j'ai bien un cube avec une largeur de 5.Nous, ce qu'on aimerait, c'est pouvoir afficher une boîte de dialoguequi nous permette de modifier cette valeur,donc de demander à l'utilisateur quelle largeur il souhaite pour le cubeet de l'insérer ici.
00:00:54 :Pour ça, on va utiliser la fonction inputdans laquelle on peut entrer la phrase qu'on va afficher à l'utilisateur.Je vais mettre ici, par exemple, entrer la largeur du cubeet on va mettre ça dans une variable.
00:01:07 :Je vais mettre ça dans une variable que je vais appeler w, tout simplement.Et si j'exécute cette ligne,vous allez voir qu'on a une boîte de dialogue qui s'affiche ici.
00:01:15 :Le seul truc dommage, je trouve, c'est qu'ici, on a marquépython is requesting inputet le texte qui est affiché est affiché dans le script editor.
00:01:23 :On voit également le texte qui est affiché en bas dans la barre,donc normalement, la personne peut voir l'information qui est demandéetout en bas ici ou alors dans le script editor s'il est ouvert.
00:01:33 :C'est vraiment dommage, je trouve, que cette phrase ne soit pas affichéedirectement dans cette fenêtre, mais bon, au moins,vous l'avez d'afficher à ces deux autres endroits.
00:01:41 :Donc ensuite, je vais pouvoir rentrer une valeur ici,donc je vais mettre, par exemple, 5.J'appuie sur OK ici pour valider.Et maintenant, dans ma variable w, si je l'affiche,on voit que j'ai bien 5 qui est affichée ici,donc result 5 quand on affiche w.
00:01:54 :On va afficher le type de w pour vous montrer que,ici, dans ce cas-ci, c'est une chaîne de caractère.Donc ça, c'est une des différences avec Python 2 et Python 3.
00:02:02 :Pour voir la différence complètement et toutes les explications,je vous redirige dans la partie sur cette formationqui parle des différences entre Python 2 et Python 3,puisque ça, c'est vraiment une des grosses différences.
00:02:11 :Avec Python 3, il faut savoir que dans tous les cas de figure,on aura une chaîne de caractère.Donc même si l'utilisateur rentre un nombre,vous voyez que le type de w ici, c'est une chaîne de caractère.
00:02:22 :Ça ne pose pas de problème à Pythonquand on va le passer à Polycube, par exemple ici.Donc si je passe w, vous allez voir que si j'exécute tout le script,que j'entre la valeur 5 ici et que je valide avec OK,on a bien le cube qui est correctement créé.
00:02:35 :Donc on peut passer une chaîne de caractère ici comme valeur à 8et Maya ne va pas s'en plaindre.Si on souhaitait, on pourrait convertir cette valeurvraiment pour lui passer un nombre,mais ce n'est pas forcément nécessaire.
00:02:46 :Il faut cependant bien retenir ici qu'on a une chaîne de caractère.C'est important si jamais vous souhaitez faire des additions.Imaginez par exemple que vous demandiez un premier nombreet ensuite un deuxième nombreet que vous souhaitez les additionner ensemble.
00:02:57 :Si vous ajoutez la chaîne de caractère 5 avec la chaîne de caractère 10,vous allez vous retrouver avec 510 et non pas 15.Donc il faut bien faire attention à ça.
00:03:07 :Si vous souhaitez convertir une chaîne de caractère en nombre,on peut utiliser la fonction int et lui passer notre chaîne de caractère,donc dans ce cas-ci w.
00:03:16 :Et si j'affiche cette valeur, là on va bien avoir 5,mais cette fois-ci le nombre 5.De la même façon, on peut convertir un nombre en chaîne de caractèreavec la fonction string.
00:03:25 :Donc si je passe le nombre 5 à la fonction string,vous allez voir qu'on a 5 ici et dans ce cas-ci,on ne voit pas la différence entre les deux,mais ici il s'agit bien d'une chaîne de caractère.
00:03:32 :Si je fais type de string de 5,là logiquement ça va nous afficher string.Donc ce qu'on fait en fait ici,c'est vraiment convertir ce nombre en chaîne de caractèreet on peut faire pareil avec int.
00:03:43 :Donc dans ce cas-ci,on passe directement la largeur à notre cube.Donc ça permet, comme vous le voyez,d'avoir quelque chose qui est un peu plus interactif.
00:03:50 :On pourrait demander une autre valeur à l'utilisateur,donc par exemple ici, entrer la profondeur du cubeet on pourrait mettre cette profondeur ici dans depthet mettre la valeur de d.
00:04:02 :Donc on peut très bien demander plusieurs choses à l'utilisateur,les unes à la suite des autres.Donc là, j'exécute tout le script,on me demande de rentrer une première valeur, je vais mettre 10.
00:04:10 :On me demande de rentrer cette fois-ci une deuxième valeur,donc la profondeur du cube, on va mettre 8.Je valide en cliquant sur OKet là j'ai bien mon cube qui a été créé.
00:04:18 :Donc voilà pour cette fonction input.Elle est quand même assez intéressante.Ce que vous pouvez faire sinon,qu'on voit assez souvent dans des scripts,c'est mettre ce qu'on appelle des constantes.
00:04:25 :Donc par exemple, vous allez mettre deux variables iciavec une valeur par défaut.Les constantes, généralement,donc ça c'est une convention,on va les mettre en majuscule.
00:04:33 :Ce n'est pas une obligation, mais plutôt une convention.Et ce que vous allez pouvoir faire après,c'est utiliser ces variables à l'intérieur de votre script.
00:04:41 :Donc ça, c'est une autre façon de faire.Comme je vous dis, vous pouvez passer ce script à un collègueet lui dire que voilà, s'il souhaite modifier votre script,il suffit pour lui de changer les valeursqui sont toutes au début dans ces constantes.
00:04:51 :Donc là, on pourrait très bien changer les valeurs,mettre 7 par exemple pour la profondeur,lancer le script.Là, ça fonctionne bien.On va essayer avec d'autres valeurs.
00:04:58 :On va mettre 2 pour le 8.Et là également, ces variables sont prises en comptepour la création de notre cube.Donc ça, c'est une autre façon de faire,ça avec des constantes ou alors avec input.
00:05:06 :Input, c'est pratique puisque vous avez quelque chosevraiment qui s'affiche au niveau de l'utilisateur.Le seul défaut vraiment, je trouve,c'est qu'on n'a pas l'affichage du texteque l'on met dans la fonction inputqui est dans la boîte de dialogue.
00:05:17 :Donc il faut demander à vos collèguesd'afficher le script editors'ils veulent voir le textequi correspond à ce que vous leur demandezou alors de regarder ici en basdans la barre de statut de Maya.
00:05:28 :Bien sûr, plus vous allez apprendre Python,plus vous allez pouvoir créer des programmes compliquéset également des interfaces graphiques.Donc dans ce cas-ci, c'est vraimentla plus simple des interfaces graphiques.
00:05:37 :Mais bien entendu, après,quand on crée des applications plus complexes,on peut créer des interfaces avec des boîtes de dialogue,avec des sliders, avec des listes,avec plein de choses comme çaqui vous permettent vraiment de donnerun outil très performant à votre utilisateursans qu'il n'ait besoin de toucher
Ce n'est pas fini...
✋
Tu as complété % du parcours 🔥
Termine l'intégralité de la formation pour pouvoir débloquer ton attestation de réussite.