GDI+'da Grafik Yolları
Yollar çizgiler, dikdörtgenler ve basit eğriler birleştirerek oluşturulur. Vektör Grafiğine Genel Bakış'tan hatırlayalım: Aşağıdaki temel yapı taşları, resim çizmek için en yararlı olduğunu kanıtlamıştır:
Satırlar
Dikdörtgen
Elips
Yay
Çokgen
Kardinal splines
Bézier eğrileri
Bu GDI+ GraphicsPath nesne, bu yapı taşlarının bir dizisini tek bir ünitede toplamaya olanak sağlar. Ardından çizgi, dikdörtgen, çokgen ve eğri dizisinin tamamı sınıfın yöntemine yapılan tek bir DrawPath çağrıyla Graphics çizilir. Aşağıdaki çizimde çizgi, yay, Bézier eğrisi ve kardinal eğrisi birleştirerek oluşturulan bir yol gösterilmiştir.

Yol Kullanma
sınıfı, çizilecek öğe dizisi oluşturmak için aşağıdaki yöntemleri GraphicsPath sağlar: AddLine , , , , , , AddRectangleAddEllipseAddArcAddPolygonAddCurve (kardinale eğrileri için) ve AddBezier . Bu yöntemlerin her biri aşırı yüklenmiştir; diğer bir ifadeyle, her yöntem birkaç farklı parametre listelerini destekler. Örneğin, yöntemin bir AddLine varyasyonu dört tamsayı alır ve yöntemin başka bir AddLine varyasyonu iki nesne Point alır.
Bir yola çizgi, dikdörtgen ve Bézier eğrisi ekleme yöntemleri, tek bir çağrıda yola birkaç öğe ekli çoğul yardımcı yöntemlere sahip olur: AddLines , AddRectangles ve AddBeziers . Ayrıca ve yöntemleri, yola kapalı eğri veya pasta ekli yardımcı yöntemlerine ve AddCurveAddArcAddClosedCurveAddPie 'ye de sahip olur.
Bir yol çizmek için bir Graphics nesnesi, bir Pen nesnesi ve bir nesnesi GraphicsPath gerekir. nesnesi yöntemini sağlar ve nesne, yolu işlemek için kullanılan çizginin genişlik ve renk GraphicsDrawPath gibi Pen özniteliklerini depolar. nesnesi, GraphicsPath yolu oluşturur çizgilerin ve eğrilerin dizisini depolar. Pennesnesi ve nesnesi GraphicsPath yöntemine bağımsız değişken olarak DrawPath geçirildi. Aşağıdaki örnekte çizgi, üç nokta ve Bézier eğrisi bulunan bir yol çizildi:
myGraphicsPath.AddLine(0, 0, 30, 20);
myGraphicsPath.AddEllipse(20, 20, 20, 40);
myGraphicsPath.AddBezier(30, 60, 70, 60, 50, 30, 100, 10);
myGraphics.DrawPath(myPen, myGraphicsPath);
myGraphicsPath.AddLine(0, 0, 30, 20)
myGraphicsPath.AddEllipse(20, 20, 20, 40)
myGraphicsPath.AddBezier(30, 60, 70, 60, 50, 30, 100, 10)
myGraphics.DrawPath(myPen, myGraphicsPath)
Aşağıdaki çizimde yol gösterilmiştir.

Bir yola çizgiler, dikdörtgenler ve eğriler eklemenin yanı sıra, bir yola yol da ebilirsiniz. Bu sayede mevcut yolları birleştirarak büyük ve karmaşık yollar oluşturabilirsiniz.
myGraphicsPath.AddPath(graphicsPath1, false);
myGraphicsPath.AddPath(graphicsPath2, false);
myGraphicsPath.AddPath(graphicsPath1, False)
myGraphicsPath.AddPath(graphicsPath2, False)
Bir yola ek olarak dizeler ve pastalar gibi iki öğe daha ekleyebilirsiniz. Pasta, üç noktanın iç kısmının bir kısmıdır. Aşağıdaki örnek bir yaydan, kardinal eğriden, dizeden ve pastadan bir yol oluşturur:
GraphicsPath myGraphicsPath = new GraphicsPath();
Point[] myPointArray =
{
new Point(5, 30),
new Point(20, 40),
new Point(50, 30)
};
FontFamily myFontFamily = new FontFamily("Times New Roman");
PointF myPointF = new PointF(50, 20);
StringFormat myStringFormat = new StringFormat();
myGraphicsPath.AddArc(0, 0, 30, 20, -90, 180);
myGraphicsPath.StartFigure();
myGraphicsPath.AddCurve(myPointArray);
myGraphicsPath.AddString("a string in a path", myFontFamily,
0, 24, myPointF, myStringFormat);
myGraphicsPath.AddPie(230, 10, 40, 40, 40, 110);
myGraphics.DrawPath(myPen, myGraphicsPath);
Dim myGraphicsPath As New GraphicsPath()
Dim myPointArray As Point() = { _
New Point(5, 30), _
New Point(20, 40), _
New Point(50, 30)}
Dim myFontFamily As New FontFamily("Times New Roman")
Dim myPointF As New PointF(50, 20)
Dim myStringFormat As New StringFormat()
myGraphicsPath.AddArc(0, 0, 30, 20, -90, 180)
myGraphicsPath.StartFigure()
myGraphicsPath.AddCurve(myPointArray)
myGraphicsPath.AddString("a string in a path", myFontFamily, _
0, 24, myPointF, myStringFormat)
myGraphicsPath.AddPie(230, 10, 40, 40, 40, 110)
myGraphics.DrawPath(myPen, myGraphicsPath)
Aşağıdaki çizimde yol gösterilmiştir. Bir yolun bağlı olması gerek olmadığını unutmayın; arc, cardinal spline, string ve pie birbirinden ayrılır.
