PDA

Voir la version complète : quelques questions



parksto
06/05/2003, 09h18
j'ai trouvé ces fonctions dans le SDK :

GeExecuteFile
GeExeuteProgram
GeFileCopy
GeFileCreateDir
GeFileExist
GeFileKill
GeFileRename

on peux donc créer des dossiers, copier des fichiers, les renommer, les supprimmer, même.

mais est-il possible de les créer et de les modifier ?

Tengaal
06/05/2003, 10h18
Oui, il faut utiliser l'objet BaseFile (voir doc SDK), qui te permet de créer des fichiers en lecture/écriture.

parksto
06/05/2003, 10h51
ok, merci.

et j'imagine qu'on peux utiliser RenderData pour savoir où en est le rendu, non.

je ne comprend pas bien son utilisation. est-ce qu'il ne sert que dans les shaders ?

Tengaal
06/05/2003, 14h33
RenderData contient en fait les paramètres de rendu, on y accède en lecture/écriture par son container.

parksto
06/05/2003, 15h06
je pensait qu'on pouvait atteindre les pixels en cours avec RDATA_XPIX et RDATA_YPIX, ainsi que l'image en cours avec RDATA_FRAMESEQUENCE
(infos sur RenderData ici (http://www.plugincafe.com/sdk_detail.asp?ID=39624&gmode=4099))

est-ce que je me trompe ?
il doit exister un moyen de savoir à quel image nous en somme dans le rendu, utiliser dans les shaders...

Tengaal
06/05/2003, 20h24
Oui, tu te trompe ! :twisted: :D
En fait ces paramètres correspondent aux valeurs de rapport d'affichage dans la partie "Sortie" des paramètres de rendu.

Par exemple, tu commences par ouvrir la fenêtre "Console" que tu places dans un coin de ton écran, tu effaces son contenu, puis tu créés le script suivant sur un objet Neutre:

main(doc,op)
{ //accède aux paramètres de rendu
var RD= doc->GetFirstRenderData();
if (!RD) return;
//accède au container des ces paramètres
var BC=RD->GetContainer();
if (!BC) return;
//affiche la valeur du paramètre dans la fenêtre console
println(BC->GetData(RDATA_XPIX));
}


Maintenant si tu changes la première valeur du rapport d'affichage dans les paramètres de rendu et que tu valides, tu verras que ton expression affiche bien dans la fenêtre console la valeur de ce paramètre. :wink:

Pour gérer et connaitre l'état du rendu en cours au niveau du pixel de l'image, il faut travailler en C++, voir les exmples de sources du SDK et notamment les post-effects.

parksto
17/05/2003, 19h55
:oops: ...
merci




une autre question :
en coffee, j'ai trouver comment faire une interface pour un plug, mais je ne comprent pas comment faire en sorte que la case de chiffre (avec AddEditNumberArrows) puisse dépasser 100... je ne veux pas un pourcentage, mais une taille. :cry:
j'ai retourner le SDK dans tous les sens, je ne trouve pas :?
please...

Tengaal
17/05/2003, 23h25
Pour configurer le type de valeur ainsi que sa marge maxi-mini, pour un champ de saisie numérique comme un EditNumberArrow, il faut que sa valeur soit initialisée avec les fonctions de type SetFloat(...), SetDegree(...), SetPercent(...), etc...
Ces fonctions sont expliquées dans la partie "References -> GUI classes -> GeBaseDialog " de la doc SDK Coffee. Par exemple pour un champ de saisie qui doit être en degrés, avec une valeur de 60 cadrée entre 20 et 150 degrés, qui augmente ou diminue par étape de 10 degrés, il faudra initialiser le champ de saisie avec :
SetDegree(ID_monchamp, 60,20,150,10);
Ainsi, cet élément est définit une fois pour toute dans ton interface.
On donne en paramètre l'ID de l'objet de champ de saisie, sa valeur initiale, sa valeur minimum, sa valeur maximum, la valeur d'incrémentation/décrémentation.
Je te conseille pour l'interface de créer d'abord tous les éléments (Add...), et ensuite de faire toutes les initialisations des champs de saisies.

Ensuite on peut lire la valeur d'un champ de saisie avec les fonctions équivalentes valeur=GetFloat(ID), valeur=GetDegree(ID), valeur=GetPercent(ID)... où ID est le numéro identifiant le champ en question.

parksto
18/05/2003, 10h43
et ben voila une réponse claire et rapide :D

merci beaucoup Tengaal :wink: