Remplace les coefficients d'une matrice par les coefficients du produit d'elle-m�me par une matrice d'inclinaison, dans l'ordre sp�cifi�
#include <GDIPlus.au3>
_GDIPlus_MatrixShear ( $hMatrix, $fShearX, $fShearY [, $iOrder = 0] )
$hMatrix | Handle de l'objet Matrix |
$fShearX | Nombre qui sp�cifie le facteur d'inclinaison horizontale |
$fShearY | Nombre qui sp�cifie le facteur d'inclinaison verticale |
$iOrder | [optionnel] Ordre de multiplication des matrices: 0 - La matrice pass�e est � gauche 1 - La matrice pass�e est � droite |
Succ�s: | Retourne True. |
�chec: | Retourne False. |
Si un des param�tres est �gal � 0, la transformation appliqu�e est une inclinaison pure. Lorsqu'elle est appliqu�e � un rectangle � l'origine, alors que le facteur shearY est 0, la transformation d�place le bord inf�rieur horizontalement d'une valeur �gale � shearX fois la hauteur du rectangle. Lorsque le facteur shearX est �gal � 0, elle d�place le bord droit verticalement de shearY fois la largeur du rectangle. Faites attention lorsque aucun des deux param�tres n'est �gal � z�ro, car cela peut produire des r�sultats inattendus.
Consultez GdipShearMatrix dans la Librairie MSDN.
#include <GDIPlus.au3> #include <GUIConstantsEx.au3> Example() Func Example() Local $hGUI, $hGraphic, $hBrush, $hPen, $hPath, $hFamily, $tLayout, $hMatrix ; Cr�e une GUI $hGUI = GUICreate("GDI+", 520, 160) GUISetState(@SW_SHOW) ; Dessine une cha�ne en utilisant un Path _GDIPlus_Startup() $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI) ; Cr�e un objet graphique � partir du handle de la fen�tre $hBrush = _GDIPlus_BrushCreateSolid(0xFFDD2200) $hPen = _GDIPlus_PenCreate(0xFFFFBB00, 2) $hPath = _GDIPlus_PathCreate() ; Cr�e un objet path $hFamily = _GDIPlus_FontFamilyCreate("Arial") ; Cr�e un objet FontFamily $tLayout = _GDIPlus_RectFCreate() ; Cr�e une cha�ne dans un rectangle X=0, Y=0 _GDIPlus_PathAddString($hPath, "AutoIt rulez!", $tLayout, $hFamily, 0, 72, 0) ; Ajoute le contour de la cha�ne au Path $hMatrix = _GDIPlus_MatrixCreate() _GDIPlus_MatrixShear($hMatrix, 0.8, 0.1) _GDIPlus_PathTransform($hPath, $hMatrix) _GDIPlus_GraphicsSetSmoothingMode($hGraphic, 2) ; D�finit pour l'objet graphique la qualit� de rendu antialiasing _GDIPlus_GraphicsClear($hGraphic, 0xFF000000) _GDIPlus_GraphicsFillPath($hGraphic, $hPath, $hBrush) ; Dessine le Path avec le handle Graphic (GUI) _GDIPlus_GraphicsDrawPath($hGraphic, $hPath, $hPen) ; Dessine le Path avec le handle Graphic (GUI) ; Boucle jusqu'� ce que l'utilisateur quitte. Do Until GUIGetMsg() = $GUI_EVENT_CLOSE ; Nettoie les ressources _GDIPlus_MatrixDispose($hMatrix) _GDIPlus_FontFamilyDispose($hFamily) _GDIPlus_PathDispose($hPath) _GDIPlus_PenDispose($hPen) _GDIPlus_BrushDispose($hBrush) _GDIPlus_GraphicsDispose($hGraphic) _GDIPlus_Shutdown() EndFunc ;==>Example