Dorian Fevrier's blog - Mot-clé - dossiers - CommentairesJe m’appelle FEVRIER Dorian, je suis infographiste 3D passionné par mon métier, l’informatique en général, l’internet, la programmation et l’évolution de tout ce petit monde. Vous trouverez sur ce blog des tutoriaux, mes coups de cœurs, avis, etc.2024-01-02T23:48:05+01:00FEVRIER Dorianurn:md5:695d9c73474c33ce3dab043823509c4bDotclearMediaInfo: Lire les informations des fichiers vidéo et audio en ligne de commande. (Part 1) - weyburn:md5:0f05c2ade077da11fdaf9160767339d32018-08-13T17:04:18+02:002018-08-13T16:04:18+02:00weyb<p>bjr<br />
pas de 2e page avec python pour récupérer tout un répertoire svp ?<br />
cordt</p>Appliquer un script à toutes les scenes Maya du dossier - Dorianurn:md5:0d804c4a208421a07933aa338d1f30792013-03-19T17:41:57+01:002013-03-19T17:58:00+01:00Dorian<p>Cool merci!</p>
<p>Par contre je te conseil de passer par <a hreflang="en" href="http://pastebin.com/" rel="ugc">pastebin</a> car les commentaires gèrent mal le code.</p>Appliquer un script à toutes les scenes Maya du dossier - DrWeenyurn:md5:d84085e32de2aaef277b57c4fc04ef992013-03-19T17:32:13+01:002013-03-19T17:41:10+01:00DrWeeny<p>Okay, du coup, j'ai jeté un coup d'oeil du côté de mayapy.<br />
Pour ceux qui seraient intéressé pour faire ça en python, je copie ici la procedure et un template de script :</p>
<p>Tout d'abord, dans "C:\Program Files\Autodesk\Maya20xx\bin\", il y a mayapy.exe. Lorsque vous exécutez ce programme, vous avez une fenêtre DOS où vous pouvez copier/coller un script python et l'exécuter en batch :</p>
<code>"""Commencer votre script par ces deux lignes (c'est nécessaire pour lancer un batch)"""<br />
import maya.standalone<br />
maya.standalone.initialize(name='python')<br />
<br />
"""Vous pouvez commencer votre script de la manière habituelle"""<br />
import maya.cmds as cmds<br />
import os<br />
<br />
"""Lister tous les ".ma" du dossier et des sous-dossier"""<br />
"""Path du dossier:"""<br />
topdir = 'D:\\myFolder'<br />
<br />
""" L'extension de fichier que je cherche"""<br />
exten = '.ma'
</code><p><code>""" Stocker tous les path de scène dans la variable 'myFiles' """<br />
results = str()<br />
myFiles = <br />
for dirpath, dirnames, files in os.walk(topdir):<br />
<br />
for name in files:
if name.lower().endswith(exten):
results = '%s' % os.path.join(dirpath, name)
myFiles.append(results)<br />
<br />
"""Les commandes à exécuter dans chaque scènes :"""<br />
"""La boucle:"""<br />
for i in myFiles:<br />
<br />
cmds.file(i, force=True, open=True)<br />
"""La ou les commandes que vous voulez appliquer """<br />
cmds.polySphere(sx=5, sy=5, n="Awesome_Batched_Sphere")<br />
<br />
""" Save the file"""<br />
cmds.file(save=True, force=True)</code>
</p>
<p>Voilà, j'espère que cela peut-être utile à ceux qui passe par ici (le script s’exécute 10 fois plus vite, même plus le temps de prendre un café u.u)<br />
Pour plus de ressources :<br />
- <a href="http://www.chadvernon.com/blog/resources/python-scripting-for-maya-artists/python-in-maya/" title="http://www.chadvernon.com/blog/resources/python-scripting-for-maya-artists/python-in-maya/" rel="ugc">http://www.chadvernon.com/blog/reso...</a><br />
- <a href="http://www.toadstorm.com/blog/?p=136" title="http://www.toadstorm.com/blog/?p=136" rel="ugc">http://www.toadstorm.com/blog/?p=13...</a></p>Appliquer un script à toutes les scenes Maya du dossier - Dorianurn:md5:dc94144f88e307552378d4da72cb60242013-03-19T10:24:40+01:002013-03-19T10:24:54+01:00Dorian<p>Non, je disais:<br />
- Le script qui va lancer Maya pour chaque scene d'un dossier, je le fais en python direct.<br />
- Et ce n'est plus un .mel que j’exécute mais un .py. :D</p>Appliquer un script à toutes les scenes Maya du dossier - DrWeenyurn:md5:a8849f6c296f1f5413f96f49c12a72622013-03-18T20:03:31+01:002013-03-19T10:21:29+01:00DrWeeny<p>Au lieu d'un .mel, tu mets un .py ?</p>
<p>Il y a peut-être un autre moyen je suppose.</p>
<p>Par contre le %%~dpf%%f, il faut juste mettre %%f ^^'</p>
<p>Merci pour le tuto en tout cas, ça dépanne bien :)</p>Appliquer un script à toutes les scenes Maya du dossier - DrWeenyurn:md5:1483b8a101607bdddac9bb0ea58ce9462013-03-18T19:33:55+01:002013-03-19T10:20:47+01:00DrWeeny<p>EDIT :</p>
<p>La ligne de code était mauvaise :</p>
<p><code>for /R %%f in (*.ma) do call patchFolderScenes.bat %%f</code></p>
<p>Là le scripte s'applique partout :)</p>Appliquer un script à toutes les scenes Maya du dossier - Dorianurn:md5:9cdd38d361fa718bfbc4b68cc2a6a15f2013-03-18T19:30:25+01:002013-03-18T19:30:25+01:00Dorian<p>Tres intéressant. Merci pour l'info.</p>
<p>Cela dit, ça fait longtemps que je n'ai pas fait un .bat (ni un .sh d'ailleurs). Si j'avais a faire un tel .bat maintenant, je le ferais en Python.</p>
<p>C'est tellement plus simple. ^^</p>Appliquer un script à toutes les scenes Maya du dossier - DrWeenyurn:md5:23cc7796d4a67f79606deb8f18849fb82013-03-18T19:02:40+01:002013-03-18T19:11:32+01:00DrWeeny<p>Sympas ce tuto. J'ai mis juste une plombe à me rappeler que mon pc n'avait pas la variable environnement de maya....</p>
<p>J'ai modifié une variable dans le "allPatchFolderScenes.bat" pour que ça cherche aussi dans tous les sub-folders :</p>
<p><code>for /R %%f in (*.ma) do call patchFolderScenes.bat %%~dpf%%f</code></p>
<p>J'aime bien la nouvelle présentation du blog</p>
<p>PS : Vraiment sympas de voir tous ces mayas s'ouvrir =)</p>Bourrage de zéros en Python - Dorianurn:md5:28fc53668d512858d96c58a45b1b4cd02009-10-25T11:50:01+01:002009-10-25T11:50:01+01:00Dorian<p>Merci! En plus je crois que cette technique est la plus rapide...</p>Bourrage de zéros en Python - pacificatorurn:md5:4696066156b453ebf6330012f91fa1a42009-10-02T15:39:17+02:002009-10-02T14:39:17+02:00pacificator<p>En utilisant le formatage de chaîne, on y arrive aussi:</p>
<p>>>> "%04i" % 50<br />
'0050'</p>
<p>Bonne continuation :)</p>Créer 300 dossiers en Python - Dorianurn:md5:a9ad63140fec02161a0a503754acb6c72009-08-10T11:46:50+02:002009-08-10T10:46:50+02:00Dorian<p>Comme laurent_3d l'a fait remarqué ici:<br />
<a href="http://www.fevrierdorian.com/blog/index.php?post/2009/03/03/Bourrage-de-z%C3%A9ros-en-Python" title="http://www.fevrierdorian.com/blog/index.php?post/2009/03/03/Bourrage-de-z%C3%A9ros-en-Python" rel="ugc">http://www.fevrierdorian.com/blog/i...</a><br />
Le plus simple est d'utiliser la fonction zfill(nb_de_zero) et hop, le bourrage est automatique! :D</p>Créer 300 dossiers en Python - gseburn:md5:4b8c386d5128798de03ac26fda8fd8932009-08-07T10:08:14+02:002009-08-07T09:08:14+02:00gseb<p>Je ne sais pas si tu gagnes en terme de performances, mais il est possible d'éviter l'utilisation des if:</p>
<p>import os<br />
<br />
for i in range(300):<br />
planNum = str(i)<br />
folderName = "P%03d" % planNum<br />
os.makedirs(folderName)</p>Appliquer un script à toutes les scenes Maya du dossier - Dorianurn:md5:50b53277eccaa4ff245946d1a92cefa72009-06-04T19:54:13+02:002009-06-04T18:54:13+02:00Dorian<p>Si c'est pas du floutage de gueule ça! ^^</p>Appliquer un script à toutes les scenes Maya du dossier - Choupieurn:md5:37f62cb05173615a1bea2bca0eaa69fc2009-06-03T09:51:57+02:002009-06-03T08:51:57+02:00Choupie<p>Très intéressant vos commentaires informatiques...<br />
j'y apprends énormément</p>
<p>Félicitation</p>Tkinter: Vous aussi, faites des GUI en Python... Ouai, mes fesses ouai... - Dorianurn:md5:3ce65c6189f338c4b4cfeab3d25cfabe2009-05-14T16:23:46+02:002009-05-14T15:23:46+02:00Dorian<p>Merci :)<br />
Je commence à laisser tomber l'aspect UI de mes petits programmes, je préfère me concentrer sur le fond, c'est plus intéressant :)</p>Tkinter: Vous aussi, faites des GUI en Python... Ouai, mes fesses ouai... - AlbertHurn:md5:ab08330a5e626c4b726e92c32f2da4b32009-05-08T16:51:38+02:002009-05-08T15:51:38+02:00AlbertH<p>Bonjour,</p>
<p>Moi qui suis un éternel débutant en programmation et en particulier sur Python, çà me "réconforte" de voir que la Galère n'est pas de mon fait.<br />
Je suis tombé sur ton blog en cherchant la mécanique de Tkinter par rapport aux évènements souris.....!!<br />
Merci pour le résumé de tes liens et bon courage.</p>Bourrage de zéros en Python - Dorianurn:md5:f691ca967152aa3d516d6706a155989b2009-04-21T23:04:21+02:002009-04-21T22:04:21+02:00Dorian<p>Bon, là je me sent un peu bête... ^^' Je Pense que je vais éditer mon billet...</p>
<p>Merci pour l'info en tout cas! :)</p>Bourrage de zéros en Python - laurent_3durn:md5:9489a0f350fb9ad9a0a72db23632f0d32009-04-21T03:38:44+02:002009-04-21T02:38:44+02:00laurent_3d<p>Salut. C'est un bel exemple pedagogique.<br />
Mais si jamais tu veux aller plus vite, il y a la methode zfill, qui s'applique aux objets string:<br />
print str(50).zfill(4)<br />
>>> 0050</p>