[PYTHON] tv_runscript avec des Args ?

Pour la communauté francophone : aidez-vous les uns les autres sur l'utilisation de TVPaint
Post Reply
jeremyb
Posts: 31
Joined: 31 Jul 2020, 08:52

[PYTHON] tv_runscript avec des Args ?

Post by jeremyb » 24 Jan 2022, 12:43

Bonjour,

Jusqu'à présent je subprocess un maximum via python, pour la création de scene, de layers ect...
Pour les exports de layers, je passe par un script .grg qui parse le nom du fichier afin de récupérer les informations de séquences, shot, version.

Je me demandai si il était possible de donner des Args à la commande tv_runscript ?
https://www.tvpaint.com/doc/tvpaint-ani ... _runscript
La commande ne spécifie aucun Args.

ex:

Code: Select all

f"{tvpaint_exec} "cmd=tv_runscript {tvpaint_grg_script} {Args1} {Args2} {Args3}"
note :
Bien évidement, j'ai déjà essayé ;)
Auriez-vous une autre approche ? méthodo ?

bien à vous,
WINDOWS 10 : 10.0.19044 Build 19044
TVPAINT : 11.5.3-64bit dec 3 2021
CPU : i9-9900
RAM : 64Go
CG: RTX 2080 SUPER 8go

jeremyb
Posts: 31
Joined: 31 Jul 2020, 08:52

Re: [PYTHON] tv_runscript avec des Args ?

Post by jeremyb » 24 Jan 2022, 15:50

Ok, je pense avoir trouvé un moyen via tv_WriteUserString

Code: Select all

f'{tvpaint_exec} "cmd=tv_runscript {tvpaint_grg_script}" "cmd=tv_WriteUserString args1 ma_clef ma_var" "cmd=tv_WriteUserString args1 ma_clef ma_var"'
dans le script grg :

Code: Select all

tv_ReadUserString ma_clef ma_var
PARSE result monResultat
monResultat = monResultat
WINDOWS 10 : 10.0.19044 Build 19044
TVPAINT : 11.5.3-64bit dec 3 2021
CPU : i9-9900
RAM : 64Go
CG: RTX 2080 SUPER 8go

jeremyb
Posts: 31
Joined: 31 Jul 2020, 08:52

Re: [PYTHON] tv_runscript avec des Args ?

Post by jeremyb » 24 Jan 2022, 18:14

Finalement, en passant par tv_WriteUserString ça fonctionne.

en prérequis, un fichier tvpaint valide et un script george qui va recevoir les Strings

exemple :
python

Code: Select all

subprocess_publish_tvpp = f'{tvpaint_exec} "cmd=tv_loadproject {tvpaint_full_filepath}" "cmd=tv_writeuserstring anim export {anim_export_path}" "script={tvpaint_grg_script}"'
Popen(subprocess_publish_tvpp, shell=True)
george script

Code: Select all

tv_readuserstring anim export
PARSE result animExport
tv_warn '"'animExport'"'
WINDOWS 10 : 10.0.19044 Build 19044
TVPAINT : 11.5.3-64bit dec 3 2021
CPU : i9-9900
RAM : 64Go
CG: RTX 2080 SUPER 8go

Post Reply