-
Mouvement rotatif à linéaire
Bonjour!
J'espère que votre vie est belle où que vous soyez sur notre bonne vieille Terre.
Aujourd'hui au programme, j'explique comment le mouvement rotatif d'un objet peut-être transposé
sur un autre objet en mouvement linéaire. Prenons comme exemple une perceuse à colonne.
En faisant pivoter un petit bras, on fait monter ou descendre la perceuse montée sur la colonne.
Dans Blender, on peut créer une animation d'un tel mouvement en utilisant une roue dentée et une crémaillère.
La transmission d'un tel mouvement peut aussi se faire par simple friction comme le montre la planche et le cylindre
dans l'image ci-dessus. Noter que pour faire une crémaillère comme dans l'image ci-dessus, il faut aplatir et étirer un cube
puis le subdiviser avec la commande Ctrl + R en Edit Mode. Le script qui permet d'ajouter des roues dentées (Add extra object)
permet aussi de créer des vis sans fin mais il ne fait pas de crémaillère. Peut-être un jour si nous allumons tous un lampion, qui sait?
Donc, pour faire les dents de la crémaillère,
- subdiviser le cube avec Ctrl + R
- sélectionner une face sur deux sur un côté du cube aplati
- appuyer sur la touche E pour extruder la sélection.
- Finalement appuyer sur Alt + S, puis sur (X, Y ou Z (dépend de la vue où vous êtes)) et bouger la souris.
Noter que tenir la touche Shift enfoncer pendant l'opération permet d'avoir un meilleur contrôle sur le résultat.
On peut aussi presser Alt + S, puis tenir la touche Shift enfoncer et utiliser les flèches haut ou bas
pour modifier la forme des dents avec précision.
La longueur de la crémaillère est liée au diamètre de la roue dentée par un facteur de 3 environ.
(Circonférence d'un cercle = 3.1416 X Diamètre)
Ainsi si le diamètre de la roue dentée est 3 carreaux de la grille de blender,
la crémaillère doit être d'au moins 9 carreaux de long de la grille de Blender.
Voilà pour la crémaillère maintenant abordons le coeur du sujet : comment transposer un mouvement rotatif en mouvement linéaire.
Encore une fois, une contrainte sera placée sur l'objet qui doit se déplacer linéairement quand l'autre objet tourne.
Sélectionner l'objet qui doit se déplacer linéairement (crémaillère ou planche).
Cliquer sur le bouton Object Constraints, puis sur le bouton Add Constraint puis sur le choix Transformation.
Dans mon exemple ci-dessous, la mouvement est transmis par friction.
Il y a donc un cube étiré et un cylindre en vue de côté. Il y a aussi un empty.
Le cylindre est parenté à l'empty (Ctrl + P). Animer l'empty fera tourner le cylindre.
Le cube étiré est le dernier objet qui a été sélectionné. Il est donc en orange plus pâle.
Dans le panneau de la contrainte Transformation il y a de nombreux paramètres de contrôle.
À droite de Target, on sélectionne le nom de l'objet source, ici c'est le cylindre donc nous avons Cylinder.
L'objet source est l'objet dont le mouvement doit être transposé sur un autre objet mais d'une autre façon.
Ici nous voulons partir d'un mouvement rotatif et aller vers un mouvement linéaire.
Source permet de choisir justement le mouvement de l'objet source. C'est donc Rot pour rotation.
X, Y, Z permettre de définir les valeurs maximum de mouvement de l'objet source.
Dans mon exemple le point de rotation de l'objet source est autour de l'axe X, c'est pourquoi pour X
j'ai mis que l'angle de rotation maximal de l'objet source est de -180 degrés à 180 degrés.
Puisque le cylindre est au centre de la longueur du cube étiré, tourner le cylindre d'un demi tour (180 degrés)
dans un sens ou l'autre l'amène à une des extrémités du cube étiré.
Source to Destination Mapping permet de choisir la sorte de transfert de mouvement qu'on veut obtenir.
Dans notre exemple, nous voulons tourner le cylindre autour de l'axe X
pour obtenir un déplacement linéaire le long de l'axe Z pour le cube.
C'est pourquoi dans le panneau, on voit X >> Z.
Un pivotement autour de l'axe X créera un déplacement le long de l'axe Z.
Tout le monde est toujours avec moi. Je continue.
Destination est le type de mouvement qu'on désire obtenir de l'objet qui reçoit la contrainte de transformation.
Dans notre exemple, le cube doit bouger linéairement, donc il doit changer de position (en anglais : Location)
c'est pourquoi le paramètre Destination est sur Loc.
Finalement X, Y et Z, dans le bas du panneau, contrôle les limites de mouvement de l'objet qui reçoit la contrainte.
Quand on tourne le cylindre de 180 degrés, le cube doit se déplacer sur quelle distance le long de l'axe Z.
Mon cylindre a un diamètre de 2 carreaux de la grille de Blender,
sa circonférence est donc au moins 3 fois cette longueur soit 6 carreaux.
La circonférence d'un cercle est égale à 3.1416 fois le diamètre. On apprend cela en 3e ou 4e année à l'école.
La moitié de 6 est 3 donc pour une rotation de 180 degrés du cylindre.
Le cube doit donc se déplacer de 3 carreaux maximum sur la grille de Blender le long de l'axe Z
lorsque le cylindre tourne de 180 degrés dans un sens ou l'autre.
Aussi Mi (minimum) a une valeur positive de 3.000 et Ma (maximum) a une valeur négative de -3.000.
Ceci place le centre du cube en ligne avec le point de contact du cube au cylindre.
Pour faire simple avec tous ces paramètres, c'est que les paramètres dans la moitié du haut du tableau concernent l'objet source
tandis que les paramètres dans la moitié du bas concernent l'objet qui reçoit la contrainte.
Le dernier paramètre, Influence, tout en bas du tableau est sur sa valeur par défaut, soit 1.000.
Si on diminue ce paramètre, la distance de déplacement le long de l'axe Z de l'objet qui reçoit la contrainte,
le cube dans notre exemple, sera diminuée dans les mêmes proportions.
Ainsi si nous mettons Influence sur 0.5, tourner le cylindre de 180 degrés fera bouger le cube
sur une distance de seulement 1.5 carreaux de la grille de Blender au lieu de 3.
Pour faire l'animation, il suffit d'animer l'empty avec quatre clés de rotation.
Je vous donne ici un fichier blend contenant cette animation du cube et du cylindre.
Pour voir la position des clés dans l'écran TimeLine il faut sélectionner l'empty car c'est lui qui est le coeur de l'animation.
Le cylindre est parenté à l'empty et le cube a une contrainte qui dépend du cylindre.
Mais pour voir les paramètres de la contrainte Transformation, il faut sélectionner le cube.
Il suffit de presser Alt + A pour partir l'animation.
Finalement un objet 3D de la créature du film Alien qui pourrait vous inspirer.
Sur la page web du site, c'est le 2e à partir du haut. Il est en format OBJ.
Mes amis!
Que la force soit avec vous.
À la prochaine!
-
Commentaires