GraphicsPath.AddCurve Метод

Определение

Добавляет в текущую фигуру кривую сплайна. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

Перегрузки

AddCurve(ReadOnlySpan<Point>, Single)
AddCurve(PointF[], Int32, Int32, Single)

Добавляет в текущую фигуру кривую сплайна.

AddCurve(Point[], Int32, Int32, Single)

Добавляет в текущую фигуру кривую сплайна.

AddCurve(ReadOnlySpan<PointF>, Single)
AddCurve(PointF[], Single)

Добавляет в текущую фигуру кривую сплайна.

AddCurve(Point[])

Добавляет в текущую фигуру кривую сплайна. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

AddCurve(ReadOnlySpan<PointF>)
AddCurve(ReadOnlySpan<Point>)
AddCurve(PointF[])

Добавляет в текущую фигуру кривую сплайна. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

AddCurve(Point[], Single)

Добавляет в текущую фигуру кривую сплайна.

AddCurve(ReadOnlySpan<Point>, Single)

Исходный код:
GraphicsPath.cs
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)

Параметры

tension
Single

Применяется к

AddCurve(PointF[], Int32, Int32, Single)

Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs

Добавляет в текущую фигуру кривую сплайна.

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)

Параметры

points
PointF[]

Массив структур PointF, представляющий точки, которые определяют кривую.

offset
Int32

Индекс элемента в массиве points, который используется в качестве первой точки кривой.

numberOfSegments
Int32

Количество сегментов, используемых для отображения кривой. Сегмент может быть определен как линия, соединяющая две точки.

tension
Single

Значение, определяющее степень изгиба кривой между контрольными точками. Значения, превышающие 1, приводят к непредсказуемым результатам.

Примеры

Пример см. в разделе AddCurve(Point[], Int32, Int32, Single).

Комментарии

При необходимости пользователь должен сохранить исходные точки. Исходные точки преобразуются в кубические контрольные точки Безье внутренне, поэтому механизм возврата исходных точек отсутствует.

Кривая начинается с точки в массиве, заданном параметром offset, и включает количество точек (сегментов), заданное параметром numberOfSegments.

Применяется к

AddCurve(Point[], Int32, Int32, Single)

Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs

Добавляет в текущую фигуру кривую сплайна.

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)

Параметры

points
Point[]

Массив структур Point, представляющий точки, которые определяют кривую.

offset
Int32

Индекс элемента в массиве points, который используется в качестве первой точки кривой.

numberOfSegments
Int32

Значение, определяющее степень изгиба кривой между контрольными точками. Значения, превышающие 1, приводят к непредсказуемым результатам.

tension
Single

Значение, определяющее степень изгиба кривой между контрольными точками. Значения, превышающие 1, приводят к непредсказуемым результатам.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgseобъекта OnPaint события . Код выполняет следующие действия.

  • Создает массив из четырех точек (представляющий собой кардинальный сплайн).

  • Создает путь и, используя массив точек, добавляет кривую в путь.

  • Рисует путь к экрану.

Обратите внимание, что, хотя массив содержит четыре точки, существует только три сегмента, которые являются числом, указанным в третьем аргументе вызова 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

Комментарии

При необходимости пользователь должен сохранить исходные точки. Исходные точки преобразуются в кубические контрольные точки Безье внутренне, поэтому механизм возврата исходных точек отсутствует.

Кривая начинается с точки в массиве, заданном offset параметром , и включает количество точек (сегментов), заданное параметром numberOfSegments.

Применяется к

AddCurve(ReadOnlySpan<PointF>, Single)

Исходный код:
GraphicsPath.cs
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)

Параметры

tension
Single

Применяется к

AddCurve(PointF[], Single)

Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs

Добавляет в текущую фигуру кривую сплайна.

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)

Параметры

points
PointF[]

Массив структур PointF, представляющий точки, которые определяют кривую.

tension
Single

Значение, определяющее степень изгиба кривой между контрольными точками. Значения, превышающие 1, приводят к непредсказуемым результатам.

Примеры

Пример см. в разделе AddCurve(Point[], Int32, Int32, Single).

Комментарии

При необходимости пользователь должен сохранить исходные точки. Исходные точки преобразуются в кубические контрольные точки Безье внутренне, поэтому механизм возврата исходных точек отсутствует.

Применяется к

AddCurve(Point[])

Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs

Добавляет в текущую фигуру кривую сплайна. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

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())

Параметры

points
Point[]

Массив структур Point, представляющий точки, которые определяют кривую.

Примеры

Пример см. в разделе AddClosedCurve(Point[], Single).

Комментарии

При необходимости пользователь должен сохранить исходные точки. Исходные точки преобразуются в кубические контрольные точки Безье внутренне, поэтому механизм возврата исходных точек отсутствует.

Применяется к

AddCurve(ReadOnlySpan<PointF>)

Исходный код:
GraphicsPath.cs
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))

Параметры

Применяется к

AddCurve(ReadOnlySpan<Point>)

Исходный код:
GraphicsPath.cs
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))

Параметры

Применяется к

AddCurve(PointF[])

Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs

Добавляет в текущую фигуру кривую сплайна. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

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())

Параметры

points
PointF[]

Массив структур PointF, представляющий точки, которые определяют кривую.

Примеры

Пример см. в разделе AddCurve(Point[], Int32, Int32, Single).

Комментарии

При необходимости пользователь должен сохранить исходные точки. Исходные точки преобразуются в кубические контрольные точки Безье внутренне, поэтому механизм возврата исходных точек отсутствует.

Применяется к

AddCurve(Point[], Single)

Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs

Добавляет в текущую фигуру кривую сплайна.

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)

Параметры

points
Point[]

Массив структур Point, представляющий точки, которые определяют кривую.

tension
Single

Значение, определяющее степень изгиба кривой между контрольными точками. Значения, превышающие 1, приводят к непредсказуемым результатам.

Примеры

Пример см. в разделе AddClosedCurve(Point[], Single).

Комментарии

При необходимости пользователь должен сохранить исходные точки. Исходные точки преобразуются в кубические контрольные точки Безье внутренне, поэтому механизм возврата исходных точек отсутствует.

Применяется к