Sdílet prostřednictvím


GraphicsPath.Warp Metoda

Definice

Použije pro tento GraphicsPathtransformaci warp definovanou obdélníkem a paralelogramem .

Přetížení

Warp(PointF[], RectangleF)

Použije pro tento GraphicsPathtransformaci warp definovanou obdélníkem a paralelogramem .

Warp(PointF[], RectangleF, Matrix)

Použije pro tento GraphicsPathtransformaci warp definovanou obdélníkem a paralelogramem .

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

Použije pro tento GraphicsPathtransformaci warp definovanou obdélníkem a paralelogramem .

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

Použije pro tento GraphicsPathtransformaci warp definovanou obdélníkem a paralelogramem .

Warp(ReadOnlySpan<PointF>, RectangleF, Matrix, WarpMode, Single)

Warp(PointF[], RectangleF)

Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs

Použije pro tento GraphicsPathtransformaci warp definovanou obdélníkem a paralelogramem .

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)

Parametry

destPoints
PointF[]

Pole PointF struktur, které definují paralelogram, na který je obdélník definovaný srcRect transformován. Pole může obsahovat tři nebo čtyři prvky. Pokud pole obsahuje tři prvky, je pravý dolní roh paralelogramu odvozen prvními třemi body.

srcRect
RectangleF

RectangleF, který představuje obdélník, který je transformován na paralelogram definovaný destPoints.

Příklady

Příklad najdete v tématu Warp(PointF[], RectangleF, Matrix, WarpMode, Single).

Platí pro

Warp(PointF[], RectangleF, Matrix)

Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs

Použije pro tento GraphicsPathtransformaci warp definovanou obdélníkem a paralelogramem .

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

Parametry

destPoints
PointF[]

Pole PointF struktur, které definují paralelogram, na který je obdélník definovaný srcRect transformován. Pole může obsahovat tři nebo čtyři prvky. Pokud pole obsahuje tři prvky, je pravý dolní roh paralelogramu odvozen prvními třemi body.

srcRect
RectangleF

RectangleF, který představuje obdélník, který je transformován na paralelogram definovaný destPoints.

matrix
Matrix

Matrix, která určuje geometrické transformace, která se má použít na cestu.

Příklady

Příklad najdete v tématu Warp(PointF[], RectangleF, Matrix, WarpMode, Single).

Platí pro

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

Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs

Použije pro tento GraphicsPathtransformaci warp definovanou obdélníkem a paralelogramem .

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

Parametry

destPoints
PointF[]

Pole PointF struktur, které definují paralelogram, na který se obdélník definovaný srcRect transformuje. Pole může obsahovat tři nebo čtyři prvky. Pokud pole obsahuje tři prvky, je pravý dolní roh paralelogramu odvozen prvními třemi body.

srcRect
RectangleF

RectangleF, který představuje obdélník, který je transformován na paralelogram definovaný destPoints.

matrix
Matrix

Matrix, která určuje geometrické transformace, která se má použít na cestu.

warpMode
WarpMode

WarpMode výčet, který určuje, jestli tato operace warp používá perspektivu nebo bilineární režim.

Příklady

Příklad najdete v tématu Warp(PointF[], RectangleF, Matrix, WarpMode, Single).

Platí pro

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

Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs

Použije pro tento GraphicsPathtransformaci warp definovanou obdélníkem a paralelogramem .

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

Parametry

destPoints
PointF[]

Pole PointF struktur, které definují paralelogram, na který je obdélník definovaný srcRect transformován. Pole může obsahovat tři nebo čtyři prvky. Pokud pole obsahuje tři prvky, je pravý dolní roh paralelogramu odvozen prvními třemi body.

srcRect
RectangleF

RectangleF, který představuje obdélník, který je transformován na paralelogram definovaný destPoints.

matrix
Matrix

Matrix, která určuje geometrické transformace, která se má použít na cestu.

warpMode
WarpMode

WarpMode výčet, který určuje, jestli tato operace warp používá perspektivu nebo bilineární režim.

flatness
Single

Hodnota od 0 do 1 určující, jak plochá je výsledná cesta. Další informace najdete v Flatten() metodách.

Příklady

Následující příklad kódu je určen pro použití s Windows Forms a vyžaduje PaintEventArgse, OnPaint objekt události. Kód provede následující akce:

  • Vytvoří cestu a přidá do cesty obdélník.

  • Nakreslí tento obdélník na obrazovku černou.

  • Vytáhl cestu perspektivou warp.

  • Nakreslí závojený obdélník (cestu) na obrazovku červeně.

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

Platí pro

Warp(ReadOnlySpan<PointF>, RectangleF, Matrix, WarpMode, Single)

Zdroj:
GraphicsPath.cs
Zdroj:
GraphicsPath.cs
public void Warp (ReadOnlySpan<System.Drawing.PointF> destPoints, System.Drawing.RectangleF srcRect, System.Drawing.Drawing2D.Matrix? matrix = default, System.Drawing.Drawing2D.WarpMode warpMode = System.Drawing.Drawing2D.WarpMode.Perspective, float flatness = 0.25);
member this.Warp : ReadOnlySpan<System.Drawing.PointF> * System.Drawing.RectangleF * System.Drawing.Drawing2D.Matrix * System.Drawing.Drawing2D.WarpMode * single -> unit
Public Sub Warp (destPoints As ReadOnlySpan(Of PointF), srcRect As RectangleF, Optional matrix As Matrix = Nothing, Optional warpMode As WarpMode = System.Drawing.Drawing2D.WarpMode.Perspective, Optional flatness As Single = 0.25)

Parametry

destPoints
ReadOnlySpan<PointF>
srcRect
RectangleF
matrix
Matrix
warpMode
WarpMode
flatness
Single

Platí pro