force
force add
force add vol(id)
Retourne la force additionnelle du volume id.
force add vol(id)=x,y,z,v
Change cette force.
Note:
Peut être utilisé dans une fonction F5 pour modifier une force
automatiquement générée (par exemple par field, trajectoires, ...).
force add vertex(v)vol(id)
Retourne la force additionnelle du sommet v du volume id.
force add vertex(v)vol(id)=x,y,z,v
Change cette force.
Note:
Peut être utilisé dans une fonction F5 pour modifier des forces sur des sommets
automatiquement générée (par exemple par field, trajectoires, ...).
force move
force(f,v)move vol(id)vol(t)rand(r)
Si le vol id a une propriété mv=meta move construite par
interaction move vol, les volumes t+[0,np-1]
avec mv=f0,f1,... fi=flag du volume t+i (1: attaché au volume id, 0: libre) alors
if(mv[i])==1 (volume t+i devient libre avec la p^robabilité r, mass vol(t+i)=m
(1 par défaut)
else (volume t+i est libre) alors
force add vol(t+i)=force1=f*u,v avec u=unit(g1-g0), g0=CG matrix vol(id), g1=CG matrix vol(t+i).
Ramarque:
cette commande permet de traiter des volumes t+[0,np-1] initialement attaché au
volume id de devenir libres selon une force f,v
(utilisé par exemple dans l´installation breath 2018),
habituellement utilisé dans une fonction F2.
Options:
force(fx,fy,fz): ajoute la force (fx,fy,fz).
mass(m): mass du volume t+i (1 par défaut).
force field
force field(id)
Retourne la force du champ uniforme id.
force field(id)=x,y,z,v
Affecte cette force.
force rota vol
force rota vol(id)
Retourne le couple exercé sur le volume id.
force rota vol(id)=f,v
Affecte ce couple.
Remarque:
En animation dynamique le volume id subira le
couple d´amplitude f et de viscosité v (entre -1 et 0) autour de son
axis matrix vol(id).
f=1 et v=-.01 sont de bonnes valeurs.
force rota add vol(id)
Retourne le couple additionnel exercé sur le volume id.
force rota vol(id)=f,v
Ajoute f à ce couple.
Remarque:
En animation dynamique, le volume id subira le couple d´amplitude
f0+f autour de sa axis matrix vol(id)
(où f0 = force rota vol(id)): utilisé par la
détection de collision, peut être
aussi utilisé: dans une fonction F5.
force secy vol
force secy(v) CG vol(id)=k
Calcule:
force vertex(secy(v))vol(id)+=k*unit(p-g);
avec: p=poi(s)vol(id);g=CG secy(v)vol(id);
Toutes les sections par défaut..
Options:
alea(c1,c2): coefficient aléatoire reproductible dsns l´intervalle
[c1,c2].
random(c1,c2): coefficient aléatoire non reproductible dsns l´intervalle
[c1,c2].
force vertex
force vertex(s) vol(id)
Retourne la force appliquée au sommet numéro s du volume id.
force vertex(s) vol(id)=x,y,z
Fait force vertex(v)vol(id)+=x,y,z (tous les sommets par défaut).
force vertex(v) CG vol(id)=k
Calcule:
force vertex(v)vol(id)=k*unit(p-g);
avec: p=poi(s)vol(id);g=CG vol(id);
Tous les sommets par défaut.
Options:
alea(c1,c2): coefficient aléatoire reproductible dsns l´intervalle
[c1,c2].
randoim(c1,c2): coefficient aléatoire non reproductible dsns l´intervalle
[c1,c2].
force vertex(s)normal vol(id)=x,y,z
Fait force vertex(v)vol(id)+=produit scalaire(nor,x,y,z) où
nor=normale au sommet v du volume(id) (tous les sommets par défaut).
force vertex(s)normal speed vol(id)=c
Fait force vertex(v)vol(id)+=c*(produit scalaire(nor,vit))*nor où
nor=normal au sommet v du volume(id) et vit=vitesse (speed) du sommet v
(tous les sommets par défaut).
Remarques: Pour gérer automatiquement une animation dynamique, il faut:
1) Avoir affecté des masses aux sommets s.
2) Activer la commande yes dynamic
3) On peut aussi donner des vitesses initiales aux sommets.
force vol
force vol(id)
Retourne la force (fx,fy,fz,v) affectée au volume id.
force vol(id)=fx,fy,fz,v
Affecte la force (fx,fy,fz,v) au volume id.
Remarques:
1) (fx,fy,fz) est le vecteur force, v est la viscosité.
2) On peut limiter cette force par limit force vol(id).
Remarques
Une force n´est active sur un objet que tant qu´elle lui est appliquée soit
procéduralement dans des call back, soit par des
trajectoires, soit automatiquement par exemple avec des
ressorts,
des limites dynamiques, etc.
Sinon elle est nulle si yes force est actif.
Voir aussi