GraphicsPath.AddCurve 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.
Dodaje krzywą krzywą spline do bieżącej ilustracji. Używana jest krzywa kardynaalna, ponieważ krzywa przechodzi przez każdy z punktów w tablicy.
Przeciążenia
AddCurve(ReadOnlySpan<Point>, Single) | |
AddCurve(PointF[], Int32, Int32, Single) |
Dodaje krzywą krzywą spline do bieżącej ilustracji. |
AddCurve(Point[], Int32, Int32, Single) |
Dodaje krzywą krzywą spline do bieżącej ilustracji. |
AddCurve(ReadOnlySpan<PointF>, Single) | |
AddCurve(PointF[], Single) |
Dodaje krzywą krzywą spline do bieżącej ilustracji. |
AddCurve(Point[]) |
Dodaje krzywą krzywą spline do bieżącej ilustracji. Używana jest krzywa kardynaalna, ponieważ krzywa przechodzi przez każdy z punktów w tablicy. |
AddCurve(ReadOnlySpan<PointF>) | |
AddCurve(ReadOnlySpan<Point>) | |
AddCurve(PointF[]) |
Dodaje krzywą krzywą spline do bieżącej ilustracji. Używana jest krzywa kardynaalna, ponieważ krzywa przechodzi przez każdy z punktów w tablicy. |
AddCurve(Point[], Single) |
Dodaje krzywą krzywą spline do bieżącej ilustracji. |
AddCurve(ReadOnlySpan<Point>, Single)
public:
void AddCurve(ReadOnlySpan<System::Drawing::Point> points, float tension);
public void AddCurve (ReadOnlySpan<System.Drawing.Point> points, float tension);
member this.AddCurve : ReadOnlySpan<System.Drawing.Point> * single -> unit
Public Sub AddCurve (points As ReadOnlySpan(Of Point), tension As Single)
Parametry
- points
- ReadOnlySpan<Point>
- tension
- Single
Dotyczy
AddCurve(PointF[], Int32, Int32, Single)
Dodaje krzywą krzywą spline do bieżącej ilustracji.
public:
void AddCurve(cli::array <System::Drawing::PointF> ^ points, int offset, int numberOfSegments, float tension);
public void AddCurve (System.Drawing.PointF[] points, int offset, int numberOfSegments, float tension);
member this.AddCurve : System.Drawing.PointF[] * int * int * single -> unit
Public Sub AddCurve (points As PointF(), offset As Integer, numberOfSegments As Integer, tension As Single)
Parametry
- offset
- Int32
Indeks elementu w tablicy points
, który jest używany jako pierwszy punkt w krzywej.
- numberOfSegments
- Int32
Liczba segmentów używanych do rysowania krzywej. Segment można traktować jako linię łączącą dwa punkty.
- tension
- Single
Wartość określająca ilość, którą krzywa zgina między punktami kontrolnymi. Wartości większe niż 1 generują nieprzewidywalne wyniki.
Przykłady
Aby zapoznać się z przykładem, zobacz AddCurve(Point[], Int32, Int32, Single).
Uwagi
Użytkownik musi zachować oryginalne punkty, jeśli są potrzebne. Oryginalne punkty są konwertowane do sześciennych punktów kontrolnych Bézier wewnętrznie, dlatego nie ma mechanizmu zwracania oryginalnych punktów.
Krzywa rozpoczyna się od punktu w tablicy określonej przez offset
, i zawiera liczbę punktów (segmentów) określonych przez numberOfSegments
.
Dotyczy
AddCurve(Point[], Int32, Int32, Single)
Dodaje krzywą krzywą spline do bieżącej ilustracji.
public:
void AddCurve(cli::array <System::Drawing::Point> ^ points, int offset, int numberOfSegments, float tension);
public void AddCurve (System.Drawing.Point[] points, int offset, int numberOfSegments, float tension);
member this.AddCurve : System.Drawing.Point[] * int * int * single -> unit
Public Sub AddCurve (points As Point(), offset As Integer, numberOfSegments As Integer, tension As Single)
Parametry
- offset
- Int32
Indeks elementu w tablicy points
, który jest używany jako pierwszy punkt w krzywej.
- numberOfSegments
- Int32
Wartość określająca ilość, którą krzywa zgina między punktami kontrolnymi. Wartości większe niż 1 generują nieprzewidywalne wyniki.
- tension
- Single
Wartość określająca ilość, którą krzywa zgina między punktami kontrolnymi. Wartości większe niż 1 generują nieprzewidywalne wyniki.
Przykłady
Poniższy przykład kodu jest przeznaczony do użytku z Windows Forms i wymaga PaintEventArgse
obiektu OnPaint zdarzenia . Kod wykonuje następujące akcje:
Tworzy tablicę czterech punktów (reprezentujących kardynaną krzywą).
Tworzy ścieżkę i przy użyciu tablicy punktów dodaje krzywą do ścieżki.
Rysuje ścieżkę do ekranu.
Zwróć uwagę, że chociaż tablica zawiera cztery punkty, istnieją tylko trzy segmenty, które są liczbą określoną w trzecim argumencie wywołania metody AddCurve.
private:
void AddCurveExample( PaintEventArgs^ e )
{
// Create some points.
Point point1 = Point(20,20);
Point point2 = Point(40,0);
Point point3 = Point(60,40);
Point point4 = Point(80,20);
// Create an array of the points.
array<Point>^ curvePoints = {point1,point2,point3,point4};
// Create a GraphicsPath object and add a curve.
GraphicsPath^ myPath = gcnew GraphicsPath;
myPath->AddCurve( curvePoints, 0, 3, 0.8f );
// Draw the path to the screen.
Pen^ myPen = gcnew Pen( Color::Black,2.0f );
e->Graphics->DrawPath( myPen, myPath );
}
private void AddCurveExample(PaintEventArgs e)
{
// Create some points.
Point point1 = new Point(20, 20);
Point point2 = new Point(40, 0);
Point point3 = new Point(60, 40);
Point point4 = new Point(80, 20);
// Create an array of the points.
Point[] curvePoints = {point1, point2, point3, point4};
// Create a GraphicsPath object and add a curve.
GraphicsPath myPath = new GraphicsPath();
myPath.AddCurve(curvePoints, 0, 3, 0.8f);
// Draw the path to the screen.
Pen myPen = new Pen(Color.Black, 2);
e.Graphics.DrawPath(myPen, myPath);
}
Public Sub AddCurveExample(ByVal e As PaintEventArgs)
' Create some points.
Dim point1 As New Point(20, 20)
Dim point2 As New Point(40, 0)
Dim point3 As New Point(60, 40)
Dim point4 As New Point(80, 20)
' Create an array of the points.
Dim curvePoints As Point() = {point1, point2, point3, point4}
' Create a GraphicsPath object and add a curve.
Dim myPath As New GraphicsPath
myPath.AddCurve(curvePoints, 0, 3, 0.8F)
' Draw the path to the screen.
Dim myPen As New Pen(Color.Black, 2)
e.Graphics.DrawPath(myPen, myPath)
End Sub
Uwagi
Użytkownik musi zachować oryginalne punkty, jeśli są potrzebne. Oryginalne punkty są konwertowane do sześciennych punktów kontrolnych Bézier wewnętrznie, dlatego nie ma mechanizmu zwracania oryginalnych punktów.
Krzywa rozpoczyna się w punkcie w tablicy określonej przez offset
parametr i zawiera liczbę punktów (segmentów) określonych przez numberOfSegments
.
Dotyczy
AddCurve(ReadOnlySpan<PointF>, Single)
public:
void AddCurve(ReadOnlySpan<System::Drawing::PointF> points, float tension);
public void AddCurve (ReadOnlySpan<System.Drawing.PointF> points, float tension);
member this.AddCurve : ReadOnlySpan<System.Drawing.PointF> * single -> unit
Public Sub AddCurve (points As ReadOnlySpan(Of PointF), tension As Single)
Parametry
- points
- ReadOnlySpan<PointF>
- tension
- Single
Dotyczy
AddCurve(PointF[], Single)
Dodaje krzywą krzywą spline do bieżącej ilustracji.
public:
void AddCurve(cli::array <System::Drawing::PointF> ^ points, float tension);
public void AddCurve (System.Drawing.PointF[] points, float tension);
member this.AddCurve : System.Drawing.PointF[] * single -> unit
Public Sub AddCurve (points As PointF(), tension As Single)
Parametry
- tension
- Single
Wartość określająca ilość, którą krzywa zgina między punktami kontrolnymi. Wartości większe niż 1 generują nieprzewidywalne wyniki.
Przykłady
Aby zapoznać się z przykładem, zobacz AddCurve(Point[], Int32, Int32, Single).
Uwagi
Użytkownik musi zachować oryginalne punkty, jeśli są potrzebne. Oryginalne punkty są konwertowane do sześciennych punktów kontrolnych Bézier wewnętrznie, dlatego nie ma mechanizmu zwracania oryginalnych punktów.
Dotyczy
AddCurve(Point[])
Dodaje krzywą krzywą spline do bieżącej ilustracji. Używana jest krzywa kardynaalna, ponieważ krzywa przechodzi przez każdy z punktów w tablicy.
public:
void AddCurve(cli::array <System::Drawing::Point> ^ points);
public:
void AddCurve(... cli::array <System::Drawing::Point> ^ points);
public void AddCurve (System.Drawing.Point[] points);
public void AddCurve (params System.Drawing.Point[] points);
member this.AddCurve : System.Drawing.Point[] -> unit
Public Sub AddCurve (points As Point())
Public Sub AddCurve (ParamArray points As Point())
Parametry
Przykłady
Aby zapoznać się z przykładem, zobacz AddClosedCurve(Point[], Single).
Uwagi
Użytkownik musi zachować oryginalne punkty, jeśli są potrzebne. Oryginalne punkty są konwertowane do sześciennych punktów kontrolnych Bézier wewnętrznie, dlatego nie ma mechanizmu zwracania oryginalnych punktów.
Dotyczy
AddCurve(ReadOnlySpan<PointF>)
public:
void AddCurve(ReadOnlySpan<System::Drawing::PointF> points);
public void AddCurve (ReadOnlySpan<System.Drawing.PointF> points);
member this.AddCurve : ReadOnlySpan<System.Drawing.PointF> -> unit
Public Sub AddCurve (points As ReadOnlySpan(Of PointF))
Parametry
- points
- ReadOnlySpan<PointF>
Dotyczy
AddCurve(ReadOnlySpan<Point>)
public:
void AddCurve(ReadOnlySpan<System::Drawing::Point> points);
public void AddCurve (ReadOnlySpan<System.Drawing.Point> points);
member this.AddCurve : ReadOnlySpan<System.Drawing.Point> -> unit
Public Sub AddCurve (points As ReadOnlySpan(Of Point))
Parametry
- points
- ReadOnlySpan<Point>
Dotyczy
AddCurve(PointF[])
Dodaje krzywą krzywą spline do bieżącej ilustracji. Używana jest krzywa kardynaalna, ponieważ krzywa przechodzi przez każdy z punktów w tablicy.
public:
void AddCurve(cli::array <System::Drawing::PointF> ^ points);
public:
void AddCurve(... cli::array <System::Drawing::PointF> ^ points);
public void AddCurve (System.Drawing.PointF[] points);
public void AddCurve (params System.Drawing.PointF[] points);
member this.AddCurve : System.Drawing.PointF[] -> unit
Public Sub AddCurve (points As PointF())
Public Sub AddCurve (ParamArray points As PointF())
Parametry
Przykłady
Aby zapoznać się z przykładem, zobacz AddCurve(Point[], Int32, Int32, Single).
Uwagi
Użytkownik musi zachować oryginalne punkty, jeśli są potrzebne. Oryginalne punkty są konwertowane do sześciennych punktów kontrolnych Bézier wewnętrznie, dlatego nie ma mechanizmu zwracania oryginalnych punktów.
Dotyczy
AddCurve(Point[], Single)
Dodaje krzywą krzywą spline do bieżącej ilustracji.
public:
void AddCurve(cli::array <System::Drawing::Point> ^ points, float tension);
public void AddCurve (System.Drawing.Point[] points, float tension);
member this.AddCurve : System.Drawing.Point[] * single -> unit
Public Sub AddCurve (points As Point(), tension As Single)
Parametry
- tension
- Single
Wartość określająca ilość, którą krzywa zgina między punktami kontrolnymi. Wartości większe niż 1 generują nieprzewidywalne wyniki.
Przykłady
Aby zapoznać się z przykładem, zobacz AddClosedCurve(Point[], Single).
Uwagi
Użytkownik musi zachować oryginalne punkty, jeśli są potrzebne. Oryginalne punkty są konwertowane do sześciennych punktów kontrolnych Bézier wewnętrznie, dlatego nie ma mechanizmu zwracania oryginalnych punktów.
Dotyczy
Opinia
https://aka.ms/ContentUserFeedback.
Już wkrótce: w ciągu 2024 r. będziemy stopniowo usuwać problemy z usługą GitHub jako mechanizm opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla