Contrainte Transformation

Cette contrainte est plus complexe et versatile que les autres contraintes « transform ». Elle vous permet de faire correspondre un type de propriétés de transformation (càd emplacement, rotation ou redimensionnement) de la cible, au même type ou à un autre type de propriétés de transformation du propriétaire, dans un intervalle donné de valeurs (qui pourrait être différent pour chaque propriété de la cible et du propriétaire). Vous pouvez aussi intervertir les axes, et utiliser les valeurs d’intervalle non comme limites, mais plutôt comme « marqueurs » pour définir une correspondance entre valeurs d’entrée (cible) et celles de sortie (propriétaire).

Ainsi, par exemple, vous pouvez utiliser la position de la cible sur l’axe X pour contrôler la rotation du propriétaire autour de l’axe Z, en précisant qu” 1 unité sur l’axe X de la cible correspond à 10 unités autour de l’axe Z du propriétaire. Les utilisations typiques de cette contrainte comprennent les engrenages (voir note ci-dessous), et la rotation basée sur les paramétrages de position.

Options

../../../_images/animation_constraints_transform_transformation_panel.png

Transformation panel.

Target

L” Identifiant de données (Data ID) utilisé pour sélectionner la cible des contraintes, et n’est pas fonctionnel (état rouge) quand il n’en a pas. Voir propriétés de contrainte communes pour plus d’informations.

Extrapolate

By default, the Min and Max values bound the input and output values; all values outside these ranges are clipped to them. When you enable this button, the Min and Max values are no longer strict limits, but rather « markers » defining a proportional (linear) mapping between input and corresponding output values. Let us illustrate that with two graphs Fig. Les principes d’extrapolation.. In these pictures, the input range (in abscissa) is set to (1.0 to 4.0), and its corresponding output range (in ordinate), to (1.0 to 2.0). The yellow curve represents the mapping between input and output.

Les principes d’extrapolation.
../../../_images/animation_constraints_transform_transformation_extrapolate-1.png

Extrapolate désactivé : les valeurs de sortie sont comprises dans l’intervalle (1.0 à 2.0).

../../../_images/animation_constraints_transform_transformation_extrapolate-2.png

Extrapolate activé : les valeurs de sortie sont « libres » pour suivre proportionnellement celles d’entrée.

Target/Owner

Conversion standard entre les espaces. Voir propriétés de contrainte communes pour plus d’informations.

Influence

Contrôle le pourcentage d’effet de la contrainte sur l’objet. Voir propriétés de contrainte communes pour plus d’informations.

Map From

Il contient les réglages d’entrée (depuis la cible).

Location, Rotation, Scale

Les boutons radio vous permettent de sélectionner le type de propriété à utiliser.

Mode (Rotation)

Permet de spécifier le type d’entrée de rotation à utiliser, y compris les différents ordres Euler, Quaternion, et autres Modes de canaux de rotation. Par défaut, on utilise l’ordre Euler du propriétaire de la contrainte.

Dans le mode Quaternion, les canaux sont convertis en angles pondérés de la même manière que les angles swing des modes Swing et X/Y/Z Twist.

X/Y/Z Min, Max

Indépendamment pour chaque axe (X, Y et Z), les champs numériques min et max contrôlent les limites inférieure et supérieure de la plage de valeurs d’entrée. Notez que si une valeur min est supérieure à sa valeur max correspondante, la contrainte se comporte comme si elle avait la même valeur que la valeur max.

Map To

Il contient les réglages de sortie (vers le propriétaire).

Location, Rotation, Scale

Les trois boutons radio vous permettent de sélectionner le type de propriété à contrôler.

Order (Rotation)

Pour la rotation, permet de spécifier quel ordre Euler utiliser lors de l’évaluation de la contrainte. Par défaut, on utilise l’ordre du propriétaire de la contrainte.

X/Y/Z Source Axis

The three axis selectors allow you to select which input axis to map to, respectively (from top to bottom), the X, Y and Z output (owner) axes.

Min, Max

The Min and Max number fields control the lower and upper bounds of the output value range, independently for each mapped axis. Note that if a min value is higher than its corresponding max value, the constraint behaves as if it had the same value as the max one.

Mix

Spécifie comment le résultat de la contrainte est combiné à la transformation existante. L’ensemble des choix disponibles varie en fonction du type de transformation.

Replace

Le résultat de la contrainte remplace la transformation existante.

Multiply (Scale)

Les nouvelles valeurs sont multipliées par les valeurs d’axe existantes.

Add (Location, Rotation)

Les nouvelles valeurs sont ajoutées aux valeurs d’axe existantes.

Before Original (Rotation)

La nouvelle rotation est ajoutée avant la rotation existante, comme si elle était appliquée à un parent du propriétaire de la contrainte.

After Original (Rotation)

La nouvelle rotation est ajoutée après la rotation existante. comme si elle était appliquée à un enfant du propriétaire de la contrainte.

Note

  • Pour des raisons historiques, le mode Mix a pour valeurs par défaut Add pour la position et la rotation, et Replace pour la mise à l’échelle.

  • Dans l’utilisation des propriétés de transformation de rotation de la cible comme entrée, quelles que soient les valeurs réelles, la contrainte va toujours « les reprendre » dans l’intervalle (-180 à 180). Par ex. si la cible a une rotation de 420 degrés autour de son axe X, les valeurs utilisées comme entrée X par la contrainte seront :

    \(((420 + 180) modulo 360) - 180 = 60 - ...\)

    C’est la raison pour laquelle cette contrainte n’est pas réellement adaptée pour les engrenages !

  • De même, dans l’utilisation des propriétés de transformation d’échelle de la cible comme entrée, quelles que soient les valeurs réelles, la contrainte va toujours prendre leurs valeurs absolues (càd. qu’elle va inverser les valeurs négatives).

  • Quand une valeur min est supérieure à sa valeur correspondante max, les deux sont considérées égales à max. Ceci implique que vous ne pouvez pas créer des correspondances « inversées »…

Exemple