Поделиться через


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

Комментарии

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

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

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

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

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

Комментарии

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

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

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

AddCurve(ReadOnlySpan<PointF>, Single)

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

Комментарии

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

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

AddCurve(Point[])

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

Комментарии

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

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

AddCurve(ReadOnlySpan<PointF>)

Исходный код:
GraphicsPath.cs
Исходный код:
GraphicsPath.cs
public:
 void AddCurve(ReadOnlySpan<System::Drawing::PointF> points);
public void AddCurve (scoped 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
Исходный код:
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
Исходный код:
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).

Комментарии

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

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

AddCurve(Point[], Single)

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

Комментарии

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

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