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

The transformation in the macro is linear. Lines remain straight, planes remain planar, parallel things remain parallel, only angles are distorted.

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.

Attention: Toute la géométrie est convertie en B-splines, même si ce n'est pas obligatoire. Cela peut causer toutes sortes de problèmes. A n'utilisez que si c'est absolument nécessaire.

Script
ToolBar Icon

MatrixTransform.py:

Macro MatrixTransform.FCMacro

Run the macro

MatrixTransform.FCMacro: