PDA

Voir la version complète : Groupe d'objet



padawa
22/04/2003, 02h04
Salut,
je cherche a appliquer une expression a un groupe d'objet
directement dans l'expression

objet:
objet
objet.1
objet.2
etc...

ou éventuellement que mon expression duplique les objets
a partir du premier.

J'ai beau chercher mais j'y arrive pas.

Merci d'avance. :cry:

madcat
22/04/2003, 18h32
euh... tu demandes quoi exactement ? si Xpresso est récursif (agit sur les fils du père sélectionné) ?

padawa
22/04/2003, 20h23
oui c'est un peu ça

En fait quand tu duplique un objet tous les double sont mis dans un
objet neutre, je voudrai pouvoir agir sur tout ces doubles.

:?

Tengaal
22/04/2003, 20h41
Il faudrait plus de précisions pour comprendre ce que tu souhaites faire et pouvoir t'aider effivavement.
Si tu veux créer des objets ou des copies d'objets par programme il faut passer par la programmation de script coffee ou de plugin en coffee ou en C++. L'Xpresso n'agit que sur des objets existant, il ne peut pas en générer.

padawa
22/04/2003, 20h48
voila en fait je veux positionner sur une spline des objets
mais je veux que chaque objets correspondent en position
a chaque point de la spline. (J'ai ton expression Tengaal mais
je ne veux pas une répartition uniforme).

Donc j'arrive parfaitement a le faire avec un objet mais pas avec
une serie d'objet :cry:

Voila HELP ME

Tengaal
22/04/2003, 21h26
En Coffee, pour accéder à chaque objet contenu dans un groupe, il faut créer une boucle qui va lire à chaque passage l'objet suivant dans la liste avec GetNext(). On sort de la boucle lorsqu'il n'y a plus d'objet.
Voici un exemple de code qui se place sur l'objet parent.

main(doc,op)
{
//obj est le premier "enfant" du groupe d'objets "op"
var obj=op->GetDown();
if(!obj) return; // si il n'existe pas on quitte

// on prend les objets 1 par 1 jusqu'à ce qu'il n'y en aie plus
// c'est à dire quand obj=NULL
while (obj!=NULL) //la boucle s'arrête si obj=NULL
{
// on met ici l'action à faire sur "obj" (position...)

// on cherche l'objet suivant dans le groupe
obj=obj->GetNext();
}

//on est sorti de la boucle, rafraichissement de la scène
doc->Message(MSG_UPDATE);

}

madcat
22/04/2003, 22h22
ben demande à tengaal de te faire une modif sur chainspline... Il doit en avoir pour trois ou quatre secondes...

On voit plus trop Pivot, il a été banni ?

padawa
23/04/2003, 01h55
oui mais est ce que l'équivalent de ta boucle existe en xpresso?

tabou
23/04/2003, 10h23
Il y a de nouveaux noeuds de connexion dans la version 8.1, regardes dans le menu itérateur il y a un noeud hiérarchie et un noeud liste d'objets, en combinaison avec le noeud itération tu devrais pouvoir résoudre ton problème. Je ne peux pas te donner plus de détails parce que je n'ai pas encore testé ces nouvelles fonctions.