PDA

Voir la version complète : container personnel



paspas
12/05/2006, 16h55
salut

voila la question* en image

je realise tj la solution 1 est il possible de realiser la solution 2 en utilisant les container* de cofee ?

http://www.deltazone.org/~fc4d/images/paspas_exp2.JPG

tout ce que j ai vu se raporte tj a des container d objet preci exemple un cube .* :cry2:

vers quelle ligne de code du SDK dois je me retourner ??? et deja est ce possible ??

d avance merci

paspas

paspas
15/05/2006, 13h16
re salut

dans le sdk pour la 9.1 j ai* trouver enfin ca




// Stores a value in the container

var bc = new(BaseContainer);
bc->SetData(MY_ID, "Hello World!");

// Retrieves the value

var myString = bc->GetString(MY_ID);



j espere etre sur la bonne voie je teste ce soir

paspas

Majoul
16/05/2006, 02h54
Je comprend pas exactement ce que tu cherche à faire.

Sir Gong
16/05/2006, 09h26
Paspas, pourrais-tu avoir l'amabilité de rendre tes messages plus digestes et compréhensibles, notamment en employant des apostrophes lorsque nécessaire? merci pour ceux qui te lisent. :wink:

paspas
16/05/2006, 13h11
salut majoul

pour resumé voila ce que j' aimerai ( je sens que tu vas ma dire que c est inutile car y a surement plus simple et deja prevu a cette effet dans C4D)

voila

imaginon j' ai (en xpresso) un groupe X celui-ci traite 3 données differentes A B ET C , c' est données doive etre donnée à un autre
groupe x qui doit les retravailler ce que je fait d habitude je crée une sortie A que je connecte à une entrée A une B à B et ainsi de suite ....

ce que je pensait etait de crée un container dans le noeud cofee de xpresso celui- ci stoke les informations transmet ce container à un autre noeud qui recupere les donnée
pour que au final ca réduise le nombre de connection

les code que j' ai mis plus haut fonctionne et sert effectivement à crée un container ou l' on peut stoker ce que l' on veut ( ca tu le savait deja )

mais le noeud coffee n' a pas l' air d'avoir de sortie ni d' entrée pour acceuillir ces données ( ca aurait ete trop simple)

paspas

Majoul
16/05/2006, 20h17
ce que je pensait* etait de crée un container dans le noeud cofee de xpresso celui- ci stoke les informations transmet ce container* à un autre noeud qui recupere les donnée*
pour que au final ca réduise le nombre de connection


Je pense que cela est impossible, même le port lien ne permet pas de passe un Container.

Si c’est pour optimiser, le plus simple c’est d’éditer tous les scripts dans un même nœud Coffee.

paspas
17/05/2006, 02h10
merci
je m' en doutait bien un peu sinon tu l'aurait deja fait looooool
tu vas penser que je suis tetu majoul* :oops: :oops:
mais
une derniere question et apres je t' embete plus !!

le noeud coffee posséde une connection matrice* *

il n' est pas possible de crée en coffee par exemple une matrice 3 X 3* de la passer par le noeud de récupere cette matrice dans un autre coffee et de recuperre chaque valeur séparement ?

la variable* (array,x,y)* ne crée pas une matrice ?* ( heu j' ai* essayer mais bon ,* ca marche pas, mais comme suis pas tres bon en coffee mes code sont peut etre érrone ) d' ou ma qusetion

je sait que ces questions peuvent etre naive mais bon j' essaye de comprendre

merci majoull* *:odile:

paspas
19/05/2006, 12h21
toujours dans mes recherches de l' impossible voila une nouvelle decouverte :mrgreen:

la connection matrice est une matrice (4 par 3 ) mais c est 4 vecteurs

mais ca bon c' est que le début des soucis

car

je cree un tableau : var AA = new (array,4,3);

je lui affecte des des vecteurs

var a=100;
var b=50;
var c=25;


var BB = vector(a,b,c);

AA [0,0]= a
AA [0,1] = b
AA [0,2] = c


si je ne fait que ca il me sort

AA [0,0]= 100
AA [0,1] = 50
AA [0,2] = 25


AA [1,0] = 100
AA [1,1] = 50
AA [1,2] = 25

AA [2,0]= 100
AA [2,1] = 50
AA [2,2] = 25

AA [3,0] = 100
AA [3,1]= 50
AA [3,2] = 25


et si je remet un autre vecteur



var e=200;
var f=300;
var g=400;

CC = vector (e,f,g)
avec

AA [1,0]= e
AA [2,1] = f
AA [3,2] = g



si je ne fait que ca il me sort

AA [0,0]= 200
AA [0,1] = 300
AA [0,2] = 400


AA [1,0] = 200
AA [1,1] = 300
AA [1,2] = 400

AA [2,0]= 200
AA [2,1] = 300
AA [2,2] = 400

AA [3,0] = 200
AA [3,1]= 300
AA [3,2] = 400

et me tient plus compte du premier vecteur :coup:

2 solution soit les matrice ne sont pas composse uniquement de reel ou il la calcule ( ce que je doute puisque il me sors les données tel quelle )

paspas

Majoul
20/05/2006, 02h05
Une matrice et un tableau (array) se sont deux class différentes.

Pour créer une nouvelle matrice m : var m = new(Matrix) ; elle est définie par quatre vecteurs :
V0 = vecteur qui défini la position.
V1 = vecteur qui défini l'axe X
V2 = vecteur qui défini l'axe Y
V3 = vecteur qui défini l'axe Z

Si tu veut stocker des vecteur v1, v2, …..vn dans un array tu stocke tout simplement le vecteur.
v1 = vector(a1, b1, c1) ;
……..
vn = vector(an, bn, cn) ;

var* VEC = new(array, n) ;

VEC[0] = v1 ;
VEC[1] = v2 ;
……..
VEC[n-1] = vn ;

paspas
22/05/2006, 01h01
encore merci majoul c' est le detail qui me manquait* :poucehaut: :poucehaut:

tout ca pour réaliser ca* en fait* ca permet de rentre jusque 12 réel de les compiler pour qu' iils ne passent que par une seul connection


voila les codes* *


ne noeud entree



main()
{

var M = new(Matrix);
var CC = vector(a,b,c);
var DD = vector(d,e,f);
var EE = vector(g,h,i);
var FF = vector(j,k,l);


M->SetV0(CC);* *
M->SetV1(DD);* *
M->SetV2(EE);* *
M->SetV3(FF);* *


AA=M;

}



celui de sortie



main()
{

var M = new(Matrix);

M=AA;

var CC;
var DD;
var EE;*
var FF;


CC = M->GetV0();
DD = M->GetV1();
EE = M->GetV2();
FF = M->GetV3();


a=CC.x;
b=CC.y;
c=CC.z;

d=DD.x;
e=DD.y;
f=DD.z;

g=EE.x;
h=EE.y;
i=EE.z;

j=FF.x;
k=FF.y;
l=FF.z;




paspas

[Fichier joint supprimé par l'administrateur]