Placement/fr

=Positionnement=

Description
Le Positionnement (placement en anglais) est la fonction qu'utilise FreeCAD pour spécifier l'emplacement et la position (orientation) d'un objet dans l'espace.

La fonction Positionnement peut être accessible de plusieurs manières :
 * via un script Python à partir de la console, et de son API.




 * ou dans la fenêtre Vue combinée → Propriétés → Données → Placement → ,
 * ou par le menu  Édition → Positionnement....

Puis la boîte à outils de Tâches Placement s'affiche.



Angle, Axes et Position
Placement = [Angle, Axis, Position]

Placement : fixe la Position de l'objet dans l'espace et décrit son orientation comme une seule rotation autour d'un axe. Angle = r : est un scalaire qui indique la quantité de rotation de l'objet sur l'axe. La saisie se fait en degrés, mais en interne la valeur est stockée en radians.

Axis = (ax,ay,az) : est un vecteur décrivant un axe de rotation (voir la note sur l'axe de rotation).

Exemples : (1,0,0)      ==> sur l'axe X (0,1,0)      ==> sur l'axe Y (0,0,1)      ==> sur l'axe Z (0.71,0.71,0) ==> sur l'axe la ligne y=x Position = (x,y,z) est un vecteur décrivant les coordonnées du point de référence de l'objet.

Notez que dans le script, Placement.Base est utilisé pour désigner la composante de la Position d'un placement.

L'éditeur de propriétés appelle cette valeur Position.

Placement.Base vers Shape Definition
Placement n'est pas la seule façon de positionner une forme dans l'espace.

Testez l'exemple à partir de la console Python, reproduite dans cette image :



Les deux cubes ont la même valeur de Placement, mais sont dans des endroits différents ! c'est parce que les 2 formes sont définies avec des sommets différents. Pour les 2 formes précédentes.

illustration :

>>> ev = App.ActiveDocument.Extrude.Shape.Vertexes >>> for v in ev: print v.X,",",v.Y,",",v.Z ...   30.0,30.0,0.0 30.0,30.0,10.0 40.0,30.0,0.0  40.0,30.0,10.0  40.0,40.0,0.0  40.0,40.0,10.0  30.0,40.0,0.0  30.0,40.0,10.0  >>> e1v = App.ActiveDocument.Extrude001.Shape.Vertexes >>> for v in e1v: print v.X,",",v.Y,",",v.Z ...   0.0,10.0,0.0 0.0,10.0,10.0 10.0,10.0,0.0  10.0,10.0,10.0  10.0,0.0,0.0  10.0,0.0,10.0  0.0,0.0,0.0  0.0,0.0,10.0  >>> Les sommets (ou vecteurs) qui définissent le shape utilisent le Placement.Base pour attribuer leur origine.

Donc, si vous souhaitez déplacer un shape de 10 unités le long de l'axe X , vous pouvez ajouter 10 à la coordonnée X  de tous les sommets que vous voulez déplacer au Placement.Position (10,0,0).

Position, et, Lacet, tangage, Rouli
Placement = [Position, Lacet-tangage-Rouli]

La seconde forme de Placement résout l'emplacement de l'objet dans l'espace avec une Position (comme dans la première forme), mais décrit son orientation à l'aide des angles (de lacet, de tangage et de roulis). Ces angles sont parfois appelés angles Tait-Bryan ou angles d'Euler.

Lacet, tangage et roulis, sont des termes courants dans l'aviation, pour désigner l'orientation de l'appareil (ou son attitude).

Position = (x,y,z) est un vecteur décrivant les coordonnées dans l'espace du point de référence de l'objet.

Yaw-Pitch-Roll = (y,p,r) est un tuple qui spécifie l'attitude de l'objet. Les valeurs de y, p, r spécifient les degrés de rotation autour des axe z, y, x (voir note).

Matrix
Placement = Matrix

La troisième forme de Placement, décrit la position de l'objet et l'orientation avec une matrice de transformation affine de 4 x 4 (Transformation Affine).

Matrice =

((r11,r12,r13,t1),   (r21,r22,r23,t2),    (r31,r32,r33,t3),    (0,0,0,1)), avec rij spécifiant la rotation et ti spécifiant la translation.

Exemples
Rotation sur un axe simple :

Utilisation de "Placement → Centre" pour contrôler les Axes de rotation
Par défaut, l'axe de rotation n'est pas vraiment l'axe x/y/z. C'est une ligne parallèle à l'axe sélectionné, mais passe par le point de référence (Placement.Base) de l'objet à pivoter. Les modifications peuvent s'effectuer en modifiant les champs X,Y,Z de la zone "Centre :" dans la boîte de dialogue Placement ou, dans des scripts, en utilisant le paramètre Center parameter ou FreeCAD.Placement constructor.

Par exemple, supposons que nous ayons un cube (ci-dessous) positionné aux coordonnées (20,20,10).



Nous voulons faire tourner le cubee autour de son propre axe vertical (c'est à dire local Z), tout en gardant la même position. Nous pouvons facilement y parvenir en spécifiant une valeur de centre égale aux coordonnées du point central du cube (25,25,15).

Dans un script ,nous aurons :

Limitations
Depuis la version 0.13, la mise à jour des propriétés de positionnement dans l'onglet Données a été désactivée pour les objets créés dans l'atelier PartDesign, à l'exception de l'esquisse initiale du solide créé.

C'est pourquoi la mise en place d'un solide créé dans PartDesign à partir d'une esquisse ne peut être modifiée qu'en ajustant les paramètres de la construction initiale de l'esquisse (la première esquisse) du solide créé.

La fonctionnalité de placement sera éventuellement traitée dans l'atelier d'assemblage, à venir dans une version ultérieure.

En savoir plus

 * Le tutoriel: Aéroplane traite largement des mécanismes de modifications d'un objet.
 * Une explication détaillée sur la fonction Placement peut être trouvée ici Tasks_Placement.