Creer un fichier de projet nuke sans ouvrir nuke !
4 participants
Page 1 sur 1
Creer un fichier de projet nuke sans ouvrir nuke !
salut a tous
je fais en ce moment une appli mac en applescript pour creer automatiquement des dossiers et organiser un projet en creant les fichiers .nk avec les read and write node configurer.
jusque la tout va bien le seul probleme est:
comment creer un fichier .nk avec les infos correcte dedans ?
en applescript ce n'est pas possible car il interprete le contenu d'un fichier nuke (xml) comme du code (logique c'en est)
du coup je pense que ce doit etre faisable en python...
j'oubliais, le tout sans ouvrir nuke bien entendu
si quelqu'un a une piste...
merci
je fais en ce moment une appli mac en applescript pour creer automatiquement des dossiers et organiser un projet en creant les fichiers .nk avec les read and write node configurer.
jusque la tout va bien le seul probleme est:
comment creer un fichier .nk avec les infos correcte dedans ?
en applescript ce n'est pas possible car il interprete le contenu d'un fichier nuke (xml) comme du code (logique c'en est)
du coup je pense que ce doit etre faisable en python...
j'oubliais, le tout sans ouvrir nuke bien entendu
si quelqu'un a une piste...
merci
Re: Creer un fichier de projet nuke sans ouvrir nuke !
je ne connais pas les applescript, mais il existe pas des stream?? ou simplement des write pour crée le type de fichier qu'on veux?
Par exemple en .net (C#) il est facile d'enregistrer le type de fichier qu'on veux (au cas ou il existe .net pour mac -> mono)
Par exemple en .net (C#) il est facile d'enregistrer le type de fichier qu'on veux (au cas ou il existe .net pour mac -> mono)
KamS- Chef de partie
- Nombre de messages : 2581
Age : 44
Localisation : Suisse
Date d'inscription : 12/06/2007
Re: Creer un fichier de projet nuke sans ouvrir nuke !
si il y a des write le probleme c'est que le contenu d'un script nuke est en XML
du coup l'applescript le refuse comme texte et l'identifie comme code :/
c'est la tout le probleme !
du coup l'applescript le refuse comme texte et l'identifie comme code :/
c'est la tout le probleme !
Re: Creer un fichier de projet nuke sans ouvrir nuke !
meme si tu le crée comme un string (ou tableau de char)?
KamS- Chef de partie
- Nombre de messages : 2581
Age : 44
Localisation : Suisse
Date d'inscription : 12/06/2007
Re: Creer un fichier de projet nuke sans ouvrir nuke !
ouais car il refuse de compiler le script vu que l'application reconnait du code...
Re: Creer un fichier de projet nuke sans ouvrir nuke !
Dans la logique, il devrait pas reconnaitre ton code si tu le mets en string.
Faut juste pas l'evaluer.
Je suis sur qu'il y a moyen avec des \ ou """ ou connerie comme ça.
Faut juste pas l'evaluer.
Je suis sur qu'il y a moyen avec des \ ou """ ou connerie comme ça.
Re: Creer un fichier de projet nuke sans ouvrir nuke !
oui ca marche avec des \ mais du coup ca y est dans le code !
j'ai trouvé une finte j'ai divisé le code en plusieurs partie entrecallé des variables tout betement
j'ai trouvé une finte j'ai divisé le code en plusieurs partie entrecallé des variables tout betement
Re: Creer un fichier de projet nuke sans ouvrir nuke !
Execute du python via ton apple script peut etre?
Et là tu fais ce que tu veux !
Et là tu fais ce que tu veux !
Re: Creer un fichier de projet nuke sans ouvrir nuke !
oui c'est ce que je voulais faire (d'ou ma question vu que je ne connais rien au python ^^)
mais en fait j'ai trouvé, en simplifiant au max le texte d'un script nuke ca marche et en divisant le texte intercalé de variables
je vous posterai l'appli quand elle sera opérationnelle
merci
mais en fait j'ai trouvé, en simplifiant au max le texte d'un script nuke ca marche et en divisant le texte intercalé de variables
je vous posterai l'appli quand elle sera opérationnelle
merci
Re: Creer un fichier de projet nuke sans ouvrir nuke !
Je trouve le python bien plus simple et efficace que l'applescript
Sauf s'il s'agit de donner quelques ordres particuliers a l'application cible, m'enfin c'est pas le cas ici
Python a de bonnes librairies pour lire/ecrir du xml
je connais pas trop la structure d'un fichier nuke, mais tu devrais trouver ton bonheur assez rapidement.
Fais toi une scene exemple, enregistres le fichier nuke, regarde comment c'est structuré
Fais toi des petites fonctions que tu pourras repeter tout le temps apres
EDIT : allez, j'arrête ma fainéantise, j'ouvre le premier fichier nuke que je trouve ^^
Il n'y a pas tant d'xml que ça en fait dans le fichier nuke, ou c'est moi? A part la definition du layout au début
Bon, si je comprends bien, le noeud read est ecrit comme ça :
Read {
inputs 0
file /u/.../.../.../MaSequence.tiff
format "2000 1000 0 0 2000 1000 1 "
origset true
auto_alpha true
name Read25
label "\[value file]"
xpos -404
ypos 459
}
J'imagine qu'il y a des trucs qui ne servent pas forcément par defaut, et dans le reste du fichier nuke il y a des read plus complexes, donc le nombre de parametres est variable.
Tu peux faire une fonction python qui ressemble à ça:
Alors... je l'accorde, c'est pas ce qu'on a vu de plus propre (allez Tenro, montres toi!) et il y a surement mieux. C'est un début qui te permets déjà de traiter de nombreux cas de noeuds read puisque le nombre de parametres et variable
Faudrait faire un vrai wrapper, propre. Mais j'ai pas le temps là ^^
En espérant que ça t'aide un peu :]
Bon courage !
PS : je n'ai pas vérifié le code et il peut contenir des erreurs, mais l'idée est là
Sauf s'il s'agit de donner quelques ordres particuliers a l'application cible, m'enfin c'est pas le cas ici
Python a de bonnes librairies pour lire/ecrir du xml
je connais pas trop la structure d'un fichier nuke, mais tu devrais trouver ton bonheur assez rapidement.
Fais toi une scene exemple, enregistres le fichier nuke, regarde comment c'est structuré
Fais toi des petites fonctions que tu pourras repeter tout le temps apres
EDIT : allez, j'arrête ma fainéantise, j'ouvre le premier fichier nuke que je trouve ^^
Il n'y a pas tant d'xml que ça en fait dans le fichier nuke, ou c'est moi? A part la definition du layout au début
Bon, si je comprends bien, le noeud read est ecrit comme ça :
Read {
inputs 0
file /u/.../.../.../MaSequence.tiff
format "2000 1000 0 0 2000 1000 1 "
origset true
auto_alpha true
name Read25
label "\[value file]"
xpos -404
ypos 459
}
J'imagine qu'il y a des trucs qui ne servent pas forcément par defaut, et dans le reste du fichier nuke il y a des read plus complexes, donc le nombre de parametres est variable.
Tu peux faire une fonction python qui ressemble à ça:
- Code:
nukeFile = ""
# Faudrait mettre les en-tetes etc ici. Puis les premiers noeuds de base (root, etc)
# Encore une fois, je ne connais pas la structure des fichiers nuke, alors j'espère bien comprendre et répondre comme il faut. Les autres n'hesitez pas à me reprendre ^^
def addReadNode(params={}):
#Pour avoir des parametres par defaut et eventuellement ne pas y toucher je propose
defaults = {'inputs':0,'file':'','origset':True,...}
for k in defaults.keys(): # Pour chaque clé de mon dico defaults
if k not in params.keys() : params[k] = defaults[k] # Si la cle n'existe pas dans le dico params que l'utilisateur fourni, je l'ajoute
readNodeParams = "" # les parametres de mon readNode vide que je vais remplir
for param in params.keys(): # pour chaque cle des parametres (defaults compris donc)
# J'ajoute le parametre en metant une tabulation au debut pour la lecture
# Le nom du parametre, un espace, son contenu et un retour a la ligne
readNodeParams += "\t%s %s\n" % (param, str(params[param]))
# Enfin je mets le tout dans mon noeud read
readNode = "Read {\n%s}" % readNodeParams
# Que je renvoie a la fin pour en faire ce qu'on veut derriere
return readNode
#Et apres tu peux faire un truc du genre :
nukeFile += addReadNode({'file':'MonFichier', ...})
Alors... je l'accorde, c'est pas ce qu'on a vu de plus propre (allez Tenro, montres toi!) et il y a surement mieux. C'est un début qui te permets déjà de traiter de nombreux cas de noeuds read puisque le nombre de parametres et variable
Faudrait faire un vrai wrapper, propre. Mais j'ai pas le temps là ^^
En espérant que ça t'aide un peu :]
Bon courage !
PS : je n'ai pas vérifié le code et il peut contenir des erreurs, mais l'idée est là
Re: Creer un fichier de projet nuke sans ouvrir nuke !
Salut Flav
en fait j'ai trouvé en applescript mais merci !
je laisse en applescript pour le moment car j'en ai besoin
mais la prochaine version sera en python c'est bien plus propre
merci a toi
en fait j'ai trouvé en applescript mais merci !
je laisse en applescript pour le moment car j'en ai besoin
mais la prochaine version sera en python c'est bien plus propre
merci a toi
Re: Creer un fichier de projet nuke sans ouvrir nuke !
Ah? je suis curieux de voir ça si c'est possible
Pour python, je pense qu'il faudrait surtout passer par le python embarqué dans Nuke et toutes les librairies fournies
Mais je ne sais pas si on peut utiliser ces librairies en dehors du logiciel
Le problème de ma proposition c'est que c'est très superflu et y a des risques d'erreur et tout, il faudra notamment bien nommer les noeuds
Donc c'est, encore une fois, juste une première et simple piste. :]
Note pour moi même : va vraiment falloir que je me mette à Nuke aussi !
Pour python, je pense qu'il faudrait surtout passer par le python embarqué dans Nuke et toutes les librairies fournies
Mais je ne sais pas si on peut utiliser ces librairies en dehors du logiciel
Le problème de ma proposition c'est que c'est très superflu et y a des risques d'erreur et tout, il faudra notamment bien nommer les noeuds
Donc c'est, encore une fois, juste une première et simple piste. :]
Note pour moi même : va vraiment falloir que je me mette à Nuke aussi !
Re: Creer un fichier de projet nuke sans ouvrir nuke !
bin en fait tout le xml n'est pas du tout indispensable tu coup j'ai tout viré ^^
j'ai juste gardé les parametres root et des nodes en divisant le texte en morceau entrecalé de variable en string tout bêtement
j'ai juste gardé les parametres root et des nodes en divisant le texte en morceau entrecalé de variable en string tout bêtement
Sujets similaires
» [Nuke] importer un fichier XML
» creer une variable dans une node ?
» relier les fichiers dans nuke sans passer 3h
» probleme fichier nkple
» Gestion des fichier .XML dans Premiere CS3
» creer une variable dans une node ?
» relier les fichiers dans nuke sans passer 3h
» probleme fichier nkple
» Gestion des fichier .XML dans Premiere CS3
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum