GraphicsPath.StartFigure Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Uruchamia nowy rysunek bez zamykania bieżącej ilustracji. Wszystkie kolejne punkty dodane do ścieżki zostaną dodane do tej nowej ilustracji.
public:
void StartFigure();
public void StartFigure ();
member this.StartFigure : unit -> unit
Public Sub StartFigure ()
Przykłady
Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse
, obiektu zdarzenia OnPaint. Kod wykonuje następujące akcje:
Tworzy ścieżkę.
Dodaje dwa zestawy liczb. Pierwszy zestaw liczb łączy cztery typy pierwotne w dwie liczby. Drugi zestaw liczb łączy te same cztery elementy pierwotne (z tą różnicą, że są one przesunięte na osi y) na trzy liczby.
Rysuje wszystkie liczby na ekranie.
Zwróć uwagę na różnicę w wyglądzie między dwoma zestawami liczb.
public:
void StartFigureExample( PaintEventArgs^ e )
{
// Create a GraphicsPath object.
GraphicsPath^ myPath = gcnew GraphicsPath;
// First set of figures.
myPath->StartFigure();
myPath->AddArc( 10, 10, 50, 50, 0, 270 );
myPath->AddLine( Point(50,0), Point(100,50) );
myPath->AddArc( 50, 100, 75, 75, 0, 270 );
myPath->CloseFigure();
myPath->StartFigure();
myPath->AddArc( 100, 10, 50, 50, 0, 270 );
// Second set of figures.
myPath->StartFigure();
myPath->AddArc( 10, 200, 50, 50, 0, 270 );
myPath->CloseFigure();
myPath->StartFigure();
myPath->AddLine( Point(60,200), Point(110,250) );
myPath->AddArc( 50, 300, 75, 75, 0, 270 );
myPath->CloseFigure();
myPath->StartFigure();
myPath->AddArc( 100, 200, 50, 50, 0, 270 );
// Draw the path to the screen.
e->Graphics->DrawPath( gcnew Pen( Color::Black ), myPath );
}
// End StartFigureExample
public void StartFigureExample(PaintEventArgs e)
{
// Create a GraphicsPath object.
GraphicsPath myPath = new GraphicsPath();
// First set of figures.
myPath.StartFigure();
myPath.AddArc(10, 10, 50, 50, 0, 270);
myPath.AddLine(new Point(50, 0), new Point(100, 50));
myPath.AddArc(50, 100, 75, 75, 0, 270);
myPath.CloseFigure();
myPath.StartFigure();
myPath.AddArc(100, 10, 50, 50, 0, 270);
// Second set of figures.
myPath.StartFigure();
myPath.AddArc(10, 200, 50, 50, 0, 270);
myPath.CloseFigure();
myPath.StartFigure();
myPath.AddLine(new Point(60, 200), new Point(110, 250));
myPath.AddArc(50, 300, 75, 75, 0, 270);
myPath.CloseFigure();
myPath.StartFigure();
myPath.AddArc(100, 200, 50, 50, 0, 270);
// Draw the path to the screen.
e.Graphics.DrawPath(new Pen(Color.Black), myPath);
}
// End StartFigureExample
Public Sub StartFigureExample(ByVal e As PaintEventArgs)
' Create a GraphicsPath object.
Dim myPath As New GraphicsPath
' First set of figures.
myPath.StartFigure()
myPath.AddArc(10, 10, 50, 50, 0, 270)
myPath.AddLine(New Point(50, 0), New Point(100, 50))
myPath.AddArc(50, 100, 75, 75, 0, 270)
myPath.CloseFigure()
myPath.StartFigure()
myPath.AddArc(100, 10, 50, 50, 0, 270)
' Second set of figures.
myPath.StartFigure()
myPath.AddArc(10, 200, 50, 50, 0, 270)
myPath.CloseFigure()
myPath.StartFigure()
myPath.AddLine(New Point(60, 200), New Point(110, 250))
myPath.AddArc(50, 300, 75, 75, 0, 270)
myPath.CloseFigure()
myPath.StartFigure()
myPath.AddArc(100, 200, 50, 50, 0, 270)
' Draw the path to the screen.
e.Graphics.DrawPath(New Pen(Color.Black), myPath)
End Sub
Uwagi
Użytkownik musi zachować oryginalne punkty, jeśli są potrzebne. Oryginalne punkty są konwertowane na punkty kontrolne Sześcienny Bézier wewnętrznie, dlatego nie ma mechanizmu zwracania oryginalnych punktów.
Ta metoda uruchamia nową ścieżkę podrzędną w ścieżce. Ścieżki podrzędne umożliwiają oddzielenie ścieżki do sekcji i użycie klasy GraphicsPathIterator do iterowania po ścieżkach podrzędnych.