GraphicsPath.Warp Méthode

Définition

Applique une distorsion, définie par un rectangle et un parallélogramme, à ce GraphicsPath.Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.

Surcharges

Warp(PointF[], RectangleF)

Applique une distorsion, définie par un rectangle et un parallélogramme, à ce GraphicsPath.Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.

Warp(PointF[], RectangleF, Matrix)

Applique une distorsion, définie par un rectangle et un parallélogramme, à ce GraphicsPath.Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.

Warp(PointF[], RectangleF, Matrix, WarpMode)

Applique une distorsion, définie par un rectangle et un parallélogramme, à ce GraphicsPath.Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.

Warp(PointF[], RectangleF, Matrix, WarpMode, Single)

Applique une distorsion, définie par un rectangle et un parallélogramme, à ce GraphicsPath.Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.

Warp(PointF[], RectangleF)

Applique une distorsion, définie par un rectangle et un parallélogramme, à ce GraphicsPath.Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.

public:
 void Warp(cli::array <System::Drawing::PointF> ^ destPoints, System::Drawing::RectangleF srcRect);
public void Warp (System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect);
member this.Warp : System.Drawing.PointF[] * System.Drawing.RectangleF -> unit
Public Sub Warp (destPoints As PointF(), srcRect As RectangleF)

Paramètres

destPoints
PointF[]

Tableau de structures PointF qui définit un parallélogramme dans lequel se transforme le rectangle défini par srcRect.An array of PointF structures that define a parallelogram to which the rectangle defined by srcRect is transformed. Le tableau peut contenir trois ou quatre éléments.The array can contain either three or four elements. Lorsqu'il contient trois éléments, l'angle inférieur droit du parallélogramme est défini par les trois premiers points.If the array contains three elements, the lower-right corner of the parallelogram is implied by the first three points.

srcRect
RectangleF

RectangleF qui représente le rectangle transformé en parallélogramme défini par destPoints.A RectangleF that represents the rectangle that is transformed to the parallelogram defined by destPoints.

Exemples

Pour obtenir un exemple, consultez Warp(PointF[], RectangleF, Matrix, WarpMode, Single).For an example, see Warp(PointF[], RectangleF, Matrix, WarpMode, Single).

Warp(PointF[], RectangleF, Matrix)

Applique une distorsion, définie par un rectangle et un parallélogramme, à ce GraphicsPath.Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.

public:
 void Warp(cli::array <System::Drawing::PointF> ^ destPoints, System::Drawing::RectangleF srcRect, System::Drawing::Drawing2D::Matrix ^ matrix);
public void Warp (System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.Drawing2D.Matrix matrix);
member this.Warp : System.Drawing.PointF[] * System.Drawing.RectangleF * System.Drawing.Drawing2D.Matrix -> unit
Public Sub Warp (destPoints As PointF(), srcRect As RectangleF, matrix As Matrix)

Paramètres

destPoints
PointF[]

Tableau de structures PointF qui définit un parallélogramme dans lequel se transforme le rectangle défini par srcRect.An array of PointF structures that define a parallelogram to which the rectangle defined by srcRect is transformed. Le tableau peut contenir trois ou quatre éléments.The array can contain either three or four elements. Lorsqu'il contient trois éléments, l'angle inférieur droit du parallélogramme est défini par les trois premiers points.If the array contains three elements, the lower-right corner of the parallelogram is implied by the first three points.

srcRect
RectangleF

RectangleF qui représente le rectangle transformé en parallélogramme défini par destPoints.A RectangleF that represents the rectangle that is transformed to the parallelogram defined by destPoints.

matrix
Matrix

Matrix spécifiant la transformation géométrique à appliquer au tracé.A Matrix that specifies a geometric transform to apply to the path.

Exemples

Pour obtenir un exemple, consultez Warp(PointF[], RectangleF, Matrix, WarpMode, Single).For an example, see Warp(PointF[], RectangleF, Matrix, WarpMode, Single).

Warp(PointF[], RectangleF, Matrix, WarpMode)

Applique une distorsion, définie par un rectangle et un parallélogramme, à ce GraphicsPath.Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.

public:
 void Warp(cli::array <System::Drawing::PointF> ^ destPoints, System::Drawing::RectangleF srcRect, System::Drawing::Drawing2D::Matrix ^ matrix, System::Drawing::Drawing2D::WarpMode warpMode);
public void Warp (System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.Drawing2D.Matrix matrix, System.Drawing.Drawing2D.WarpMode warpMode);
member this.Warp : System.Drawing.PointF[] * System.Drawing.RectangleF * System.Drawing.Drawing2D.Matrix * System.Drawing.Drawing2D.WarpMode -> unit
Public Sub Warp (destPoints As PointF(), srcRect As RectangleF, matrix As Matrix, warpMode As WarpMode)

Paramètres

destPoints
PointF[]

Tableau de structures PointF qui définit un parallélogramme dans lequel se transforme le rectangle défini par srcRect.An array of PointF structures that defines a parallelogram to which the rectangle defined by srcRect is transformed. Le tableau peut contenir trois ou quatre éléments.The array can contain either three or four elements. Lorsqu'il contient trois éléments, l'angle inférieur droit du parallélogramme est défini par les trois premiers points.If the array contains three elements, the lower-right corner of the parallelogram is implied by the first three points.

srcRect
RectangleF

RectangleF qui représente le rectangle transformé en parallélogramme défini par destPoints.A RectangleF that represents the rectangle that is transformed to the parallelogram defined by destPoints.

matrix
Matrix

Matrix spécifiant la transformation géométrique à appliquer au tracé.A Matrix that specifies a geometric transform to apply to the path.

warpMode
WarpMode

Énumération WarpMode qui spécifie si la distorsion utilise un mode bilinéaire ou de perspective.A WarpMode enumeration that specifies whether this warp operation uses perspective or bilinear mode.

Exemples

Pour obtenir un exemple, consultez Warp(PointF[], RectangleF, Matrix, WarpMode, Single).For an example, see Warp(PointF[], RectangleF, Matrix, WarpMode, Single).

Warp(PointF[], RectangleF, Matrix, WarpMode, Single)

Applique une distorsion, définie par un rectangle et un parallélogramme, à ce GraphicsPath.Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.

public:
 void Warp(cli::array <System::Drawing::PointF> ^ destPoints, System::Drawing::RectangleF srcRect, System::Drawing::Drawing2D::Matrix ^ matrix, System::Drawing::Drawing2D::WarpMode warpMode, float flatness);
public void Warp (System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.Drawing2D.Matrix matrix, System.Drawing.Drawing2D.WarpMode warpMode, float flatness);
member this.Warp : System.Drawing.PointF[] * System.Drawing.RectangleF * System.Drawing.Drawing2D.Matrix * System.Drawing.Drawing2D.WarpMode * single -> unit
Public Sub Warp (destPoints As PointF(), srcRect As RectangleF, matrix As Matrix, warpMode As WarpMode, flatness As Single)

Paramètres

destPoints
PointF[]

Tableau de structures PointF qui définit un parallélogramme dans lequel se transforme le rectangle défini par srcRect.An array of PointF structures that define a parallelogram to which the rectangle defined by srcRect is transformed. Le tableau peut contenir trois ou quatre éléments.The array can contain either three or four elements. Lorsqu'il contient trois éléments, l'angle inférieur droit du parallélogramme est défini par les trois premiers points.If the array contains three elements, the lower-right corner of the parallelogram is implied by the first three points.

srcRect
RectangleF

RectangleF qui représente le rectangle transformé en parallélogramme défini par destPoints.A RectangleF that represents the rectangle that is transformed to the parallelogram defined by destPoints.

matrix
Matrix

Matrix spécifiant la transformation géométrique à appliquer au tracé.A Matrix that specifies a geometric transform to apply to the path.

warpMode
WarpMode

Énumération WarpMode qui spécifie si la distorsion utilise un mode bilinéaire ou de perspective.A WarpMode enumeration that specifies whether this warp operation uses perspective or bilinear mode.

flatness
Single

Valeur comprise entre 0 et 1 qui spécifie l'apparence à deux dimensions du tracé résultant.A value from 0 through 1 that specifies how flat the resulting path is. Pour plus d'informations, consultez les méthodes Flatten().For more information, see the Flatten() methods.

Exemples

L’exemple de code suivant est conçu pour être utilisé avec Windows Forms, et il requiert PaintEventArgse, un objet d’événement OnPaint.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, an OnPaint event object. Le code effectue les actions suivantes :The code performs the following actions:

  • Crée un chemin d’accès et ajoute un rectangle au tracé.Creates a path and adds a rectangle to the path.

  • Dessine ce rectangle à l’écran en noir.Draws that rectangle to the screen in black.

  • Déforme le tracé avec une distorsion de perspective.Warps the path with a perspective warp.

  • Dessine le rectangle déformé (tracé) à l’écran en rouge.Draws the warped rectangle (path) to the screen in red.

private:
   void WarpExample( PaintEventArgs^ e )
   {
      // Create a path and add a rectangle.
      GraphicsPath^ myPath = gcnew GraphicsPath;
      RectangleF srcRect = RectangleF(0,0,100,200);
      myPath->AddRectangle( srcRect );

      // Draw the source path (rectangle)to the screen.
      e->Graphics->DrawPath( Pens::Black, myPath );

      // Create a destination for the warped rectangle.
      PointF point1 = PointF(200,200);
      PointF point2 = PointF(400,250);
      PointF point3 = PointF(220,400);
      array<PointF>^ destPoints = {point1,point2,point3};

      // Create a translation matrix.
      Matrix^ translateMatrix = gcnew Matrix;
      translateMatrix->Translate( 100, 0 );

      // Warp the source path (rectangle).
      myPath->Warp( destPoints, srcRect, translateMatrix, WarpMode::Perspective, 0.5f );

      // Draw the warped path (rectangle) to the screen.
      e->Graphics->DrawPath( gcnew Pen( Color::Red ), myPath );
   }
private void WarpExample(PaintEventArgs e)
{
             
    // Create a path and add a rectangle.
    GraphicsPath myPath = new GraphicsPath();
    RectangleF srcRect = new RectangleF(0, 0, 100, 200);
    myPath.AddRectangle(srcRect);
             
    // Draw the source path (rectangle)to the screen.
    e.Graphics.DrawPath(Pens.Black, myPath);
             
    // Create a destination for the warped rectangle.
    PointF point1 = new PointF(200, 200);
    PointF point2 = new PointF(400, 250);
    PointF point3 = new PointF(220, 400);
    PointF[] destPoints = {point1, point2, point3};
             
    // Create a translation matrix.
    Matrix translateMatrix = new Matrix();
    translateMatrix.Translate(100, 0);
             
    // Warp the source path (rectangle).
    myPath.Warp(destPoints, srcRect, translateMatrix,
        WarpMode.Perspective, 0.5f);
             
    // Draw the warped path (rectangle) to the screen.
    e.Graphics.DrawPath(new Pen(Color.Red), myPath);
}
Public Sub WarpExample(ByVal e As PaintEventArgs)

    ' Create a path and add a rectangle.
    Dim myPath As New GraphicsPath
    Dim srcRect As New RectangleF(0, 0, 100, 200)
    myPath.AddRectangle(srcRect)

    ' Draw the source path (rectangle)to the screen.
    e.Graphics.DrawPath(Pens.Black, myPath)

    ' Create a destination for the warped rectangle.
    Dim point1 As New PointF(200, 200)
    Dim point2 As New PointF(400, 250)
    Dim point3 As New PointF(220, 400)
    Dim destPoints As PointF() = {point1, point2, point3}

    ' Create a translation matrix.
    Dim translateMatrix As New Matrix
    translateMatrix.Translate(100, 0)

    ' Warp the source path (rectangle).
    myPath.Warp(destPoints, srcRect, translateMatrix, _
    WarpMode.Perspective, 0.5F)

    ' Draw the warped path (rectangle) to the screen.
    e.Graphics.DrawPath(New Pen(Color.Red), myPath)
End Sub

S’applique à