Macro MatrixTransform/fr

Description
Applique une transformation linéaire définie par une matrice 3x3 à une forme. Il est possible de:
 * appliquer une mise à l'échelle non linéaire à une forme
 * cisailler une forme
 * faire pivoter une forme

Installation
Téléchargez ces deux fichiers et enregistrez-les dans votre répertoire de macros:

MatrixTransform.FCMacro

MatrixTransform.py

Utilisation

 * 1) Sélectionnez la forme à transformer
 * 2) Dans le menu FreeCAD: Macro → Macros ... → ouble-cliquez sur MatrixTransform.FCMacro. Un nouvel objet sera créé.
 * 3) Sélectionnez le nouvel objet et modifiez les propriétés v1, v2, v3 de l'onglet Données pour définir la matrice de transformation.

La Matrix est définies par trois vecteurs:

v1x  v2x   v3x M = ( v1y   v2y   v3y ) v1z  v2z   v3z Ici, v1,v2,v3 sont les secteurs définis dans les propriétés. Elles correspondent à la nouvelle direction par rapport aux axes originaux X,Y,Z.

Pas de transformation
1 0  0    0  1  0    0  0  1

Echelle non uniforme
scaleX   0      0 0  scaleY    0 0     0   scaleZ

Partage
(Opération qui rend le texte normal en italique; en supposant que le texte est dans le plan XY) 1 shear  0 0   1    0    0    0    1 'Shear' coefficient qui définit la quantité de cisaillement. 0 n'est pas un cisaillement. 1 crée le texte en italique avec une inclinaison de 45 degrés. -1 cisaille à la façon d'une barre oblique inverse.

Warning. All geometry is converted to B-splines, even if it doesn't have to. This can cause all sorts of trouble. Use only if absolutely necessary.

MatrixTransform.py:

MatrixTransform.FCMacro: