GraphicsPath.Flatten Yöntem

Tanım

Bu yoldaki her eğriyi bağlı çizgi kesimleri dizisine dönüştürür.

Aşırı Yüklemeler

Flatten()

Bu yoldaki her eğriyi bağlı çizgi kesimleri dizisine dönüştürür.

Flatten(Matrix)

Belirtilen dönüşümü uygular ve ardından bu GraphicsPath içindeki her eğriyi bağlı çizgi kesimleri dizisine dönüştürür.

Flatten(Matrix, Single)

Bunun GraphicsPath içindeki her eğriyi bağlı çizgi kesimleri dizisine dönüştürür.

Flatten()

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

Bu yoldaki her eğriyi bağlı çizgi kesimleri dizisine dönüştürür.

public:
 void Flatten();
public void Flatten ();
member this.Flatten : unit -> unit
Public Sub Flatten ()

Örnekler

Örnek için bkz. Flatten(Matrix, Single)

Şunlara uygulanır

Flatten(Matrix)

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

Belirtilen dönüşümü uygular ve ardından bu GraphicsPath içindeki her eğriyi bağlı çizgi kesimleri dizisine dönüştürür.

public:
 void Flatten(System::Drawing::Drawing2D::Matrix ^ matrix);
public void Flatten (System.Drawing.Drawing2D.Matrix matrix);
public void Flatten (System.Drawing.Drawing2D.Matrix? matrix);
member this.Flatten : System.Drawing.Drawing2D.Matrix -> unit
Public Sub Flatten (matrix As Matrix)

Parametreler

matrix
Matrix

Düzleştirmeden Matrix önce bunun GraphicsPath dönüştürülmesi için bir.

Örnekler

Örnek için bkz. Flatten(Matrix, Single)

Şunlara uygulanır

Flatten(Matrix, Single)

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

Bunun GraphicsPath içindeki her eğriyi bağlı çizgi kesimleri dizisine dönüştürür.

public:
 void Flatten(System::Drawing::Drawing2D::Matrix ^ matrix, float flatness);
public void Flatten (System.Drawing.Drawing2D.Matrix matrix, float flatness);
public void Flatten (System.Drawing.Drawing2D.Matrix? matrix, float flatness);
member this.Flatten : System.Drawing.Drawing2D.Matrix * single -> unit
Public Sub Flatten (matrix As Matrix, flatness As Single)

Parametreler

matrix
Matrix

Düzleştirmeden Matrix önce bunun GraphicsPath dönüştürülmesi için bir.

flatness
Single

Eğri ile düzleştirilmiş yaklaşık değeri arasındaki izin verilen en yüksek hatayı belirtir. Varsayılan değer 0,25'tir. Düzlük değerinin azaltılması, yaklaşık değerdeki çizgi segmentlerinin sayısını artırır.

Örnekler

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

  • Grafik yolu ve çeviri matrisi oluşturur.

  • Dört nokta kullanarak yola bir eğri ekler.

  • Siyah kalem kullanarak yolu (eğri) ekrana çizer.

  • Eğriyi 10 piksel aşağı kaydırır ve düzleştirir.

  • Kırmızı kalem kullanarak eğriyi ekrana çizer.

Kırmızı eğrinin noktaları birbirine bağlayan düzleştirilmiş çizgilere sahip olduğuna dikkat edin.

private:
   void FlattenExample( PaintEventArgs^ e )
   {
      GraphicsPath^ myPath = gcnew GraphicsPath;
      Matrix^ translateMatrix = gcnew Matrix;
      translateMatrix->Translate( 0, 10 );
      Point point1 = Point(20,100);
      Point point2 = Point(70,10);
      Point point3 = Point(130,200);
      Point point4 = Point(180,100);
      array<Point>^ points = {point1,point2,point3,point4};
      myPath->AddCurve( points );
      e->Graphics->DrawPath( gcnew Pen( Color::Black,2.0f ), myPath );
      myPath->Flatten( translateMatrix, 10.0f );
      e->Graphics->DrawPath( gcnew Pen( Color::Red,1.0f ), myPath );
   }
private void FlattenExample(PaintEventArgs e)
{
    GraphicsPath myPath = new GraphicsPath();
    Matrix translateMatrix = new Matrix();
    translateMatrix.Translate(0, 10);
    Point point1 = new Point(20, 100);
    Point point2 = new Point(70, 10);
    Point point3 = new Point(130, 200);
    Point point4 = new Point(180, 100);
    Point[] points = {point1, point2, point3, point4};
    myPath.AddCurve(points);
    e.Graphics.DrawPath(new Pen(Color.Black, 2), myPath);
    myPath.Flatten(translateMatrix, 10f);
    e.Graphics.DrawPath(new Pen(Color.Red, 1), myPath);
}
Public Sub FlattenExample(ByVal e As PaintEventArgs)
    Dim myPath As New GraphicsPath
    Dim translateMatrix As New Matrix
    translateMatrix.Translate(0, 10)
    Dim point1 As New Point(20, 100)
    Dim point2 As New Point(70, 10)
    Dim point3 As New Point(130, 200)
    Dim point4 As New Point(180, 100)
    Dim points As Point() = {point1, point2, point3, point4}
    myPath.AddCurve(points)
    e.Graphics.DrawPath(New Pen(Color.Black, 2), myPath)
    myPath.Flatten(translateMatrix, 10.0F)
    e.Graphics.DrawPath(New Pen(Color.Red, 1), myPath)
End Sub
'FlattenExample

Şunlara uygulanır