Aracılığıyla paylaş


GraphicsPath.Warp Yöntem

Tanım

Bu GraphicsPathdikdörtgen ve paralelkenar tarafından tanımlanan bir çarpıtma dönüştürmesi uygular.

Aşırı Yüklemeler

Warp(PointF[], RectangleF)

Bu GraphicsPathdikdörtgen ve paralelkenar tarafından tanımlanan bir çarpıtma dönüştürmesi uygular.

Warp(PointF[], RectangleF, Matrix)

Bu GraphicsPathdikdörtgen ve paralelkenar tarafından tanımlanan bir çarpıtma dönüştürmesi uygular.

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

Bu GraphicsPathdikdörtgen ve paralelkenar tarafından tanımlanan bir çarpıtma dönüştürmesi uygular.

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

Bu GraphicsPathdikdörtgen ve paralelkenar tarafından tanımlanan bir çarpıtma dönüştürmesi uygular.

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

Warp(PointF[], RectangleF)

Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs

Bu GraphicsPathdikdörtgen ve paralelkenar tarafından tanımlanan bir çarpıtma dönüştürmesi uygular.

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)

Parametreler

destPoints
PointF[]

srcRect tarafından tanımlanan dikdörtgenin dönüştürüldüğü bir paralelkenar tanımlayan PointF yapıları dizisi. Dizi üç veya dört öğe içerebilir. Dizi üç öğe içeriyorsa, paralelkenarın sağ alt köşesinde ilk üç nokta gösterilir.

srcRect
RectangleF

destPointstarafından tanımlanan paralelograma dönüştürülen dikdörtgeni temsil eden RectangleF.

Örnekler

Bir örnek için bkz. Warp(PointF[], RectangleF, Matrix, WarpMode, Single).

Şunlara uygulanır

Warp(PointF[], RectangleF, Matrix)

Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs

Bu GraphicsPathdikdörtgen ve paralelkenar tarafından tanımlanan bir çarpıtma dönüştürmesi uygular.

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)

Parametreler

destPoints
PointF[]

srcRect tarafından tanımlanan dikdörtgenin dönüştürüldüğü bir paralelkenar tanımlayan PointF yapıları dizisi. Dizi üç veya dört öğe içerebilir. Dizi üç öğe içeriyorsa, paralelkenarın sağ alt köşesinde ilk üç nokta gösterilir.

srcRect
RectangleF

destPointstarafından tanımlanan paralelograma dönüştürülen dikdörtgeni temsil eden RectangleF.

matrix
Matrix

Yola uygulanacak geometrik dönüşümü belirten bir Matrix.

Örnekler

Bir örnek için bkz. Warp(PointF[], RectangleF, Matrix, WarpMode, Single).

Şunlara uygulanır

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

Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs

Bu GraphicsPathdikdörtgen ve paralelkenar tarafından tanımlanan bir çarpıtma dönüştürmesi uygular.

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)

Parametreler

destPoints
PointF[]

srcRect tarafından tanımlanan dikdörtgenin dönüştürüldüğü bir paralelkenar tanımlayan PointF yapıları dizisi. Dizi üç veya dört öğe içerebilir. Dizi üç öğe içeriyorsa, paralelkenarın sağ alt köşesinde ilk üç nokta gösterilir.

srcRect
RectangleF

destPointstarafından tanımlanan paralelograma dönüştürülen dikdörtgeni temsil eden RectangleF.

matrix
Matrix

Yola uygulanacak geometrik dönüşümü belirten bir Matrix.

warpMode
WarpMode

Bu warp işleminin perspektif mi yoksa bilinear modu mu kullandığını belirten bir WarpMode numaralandırması.

Örnekler

Bir örnek için bkz. Warp(PointF[], RectangleF, Matrix, WarpMode, Single).

Şunlara uygulanır

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

Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs
Kaynak:
GraphicsPath.cs

Bu GraphicsPathdikdörtgen ve paralelkenar tarafından tanımlanan bir çarpıtma dönüştürmesi uygular.

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)

Parametreler

destPoints
PointF[]

srcRect tarafından tanımlanan dikdörtgenin dönüştürüldüğü bir paralelkenar tanımlayan PointF yapıları dizisi. Dizi üç veya dört öğe içerebilir. Dizi üç öğe içeriyorsa, paralelkenarın sağ alt köşesinde ilk üç nokta gösterilir.

srcRect
RectangleF

destPointstarafından tanımlanan paralelograma dönüştürülen dikdörtgeni temsil eden RectangleF.

matrix
Matrix

Yola uygulanacak geometrik dönüşümü belirten bir Matrix.

warpMode
WarpMode

Bu warp işleminin perspektif mi yoksa bilinear modu mu kullandığını belirten bir WarpMode numaralandırması.

flatness
Single

0 ile 1 arasında, sonuçta elde edilen yolun ne kadar düz olduğunu belirten bir değer. Daha fazla bilgi için Flatten() yöntemlerine bakın.

Örnekler

Aşağıdaki kod örneği, Windows Forms ile kullanılmak üzere tasarlanmıştır ve OnPaint bir olay nesnesi PaintEventArgsegerektirir. Kod aşağıdaki eylemleri gerçekleştirir:

  • Bir yol oluşturur ve yola bir dikdörtgen ekler.

  • Bu dikdörtgeni siyah olarak ekrana çizer.

  • Perspektif çarpıtma ile yolu çarpıtır.

  • Çarpık dikdörtgeni (yol) kırmızıyla ekrana çizer.

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

Şunlara uygulanır

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

Kaynak:
GraphicsPath.cs
Kaynak:
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)

Parametreler

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

Şunlara uygulanır