UDF > GDIPlus > Matrix >


_GDIPlus_MatrixShear

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] )

Param�tres

$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

Valeur de retour

Succ�s: Retourne True.
�chec: Retourne False.

Remarque

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.

Voir aussi

Consultez GdipShearMatrix dans la Librairie MSDN.

Exemple

#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