GdipShearMatrix()



Syntaxe
Resultat.i = GdipShearMatrix(*matrix, shearX.f, shearY.f, order.i)
Paramètres
*matrix

[in] Pointeur sur un objet Matrix.

shearX.f

[in] Facteur d'inclinaison horizontale.

shearY.f

[in] Facteur d'inclinaison verticale.

order.i

[in] Élément de l'énumération MatrixOrder qui indique l'ordre de la multiplication des matrices. MatrixOrderPrepend indique que la multiplication se fait de gauche à droite et MatrixOrderAppend indique que la multiplication se fait de droite à gauche. La valeur par défaut est MatrixOrderPrepend. Ces valeurs déterminent l'ordre d'application des transformations tel que défini par l'énumération MatrixOrder.

Description

Cette fonction met à jour la matrice passée en paramètre en faisant le produit de cette matrice par la matrice d'inclinaison (appelée aussi cisaillement) dont les valeurs sont passées par les paramètres shearX.f et shearY.f.
Cette fonction effectue une inclinaison de la matrice suivant les 2 axes X et Y.

Le paramètre order.l intervient lorsqu'il y a plusieurs transformations appliquées à la matrice, et l'ordre d'application est défini en fonction de la valeur de l'énumération MatrixOrder.

Cette matrice peut ensuite être appliquée à des objets GDI+ (graphiques etc.).

La transformation appliquée est une inclinaison pure si un des paramètres est égal à 0.
Si on applique cette transformation à un rectangle (à l'origine) :

 

Si shearY vaut 0, la transformation déplace le bord inférieur horizontalement d'une valeur égale à shearX fois la hauteur du rectangle.

Si shearX vaut 0, elle déplace le bord droit verticalement de shearY fois la largeur du rectangle.

Microsoft met en garde lorsqu'aucun des deux paramètres n'est égal à zéro, car cela peut produire des résultats inattendus. Par exemple, si la valeur des deux facteurs vaut 1, il s'agit d'une transformation singulière (autrement dit, qui ne peut pas être inversée), ce qui force l'ensemble du plan sur une seule ligne.

Résultat de la fonction
Si la fonction réussit, elle retourne #Ok qui est une constante de l'énumération status.
Si la fonction échoue, elle retourne une des autres valeurs de l'énumération status.
PB - OS
PureBasic v4.30 bêta 4 (Windows - x86)
Testé avec Windows Vista édition familiale Premium