Graphics.DrawCurve Graphics.DrawCurve Graphics.DrawCurve Method

Definizione

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture Point specificata.Draws a cardinal spline through a specified array of Point structures.

Overload

DrawCurve(Pen, Point[]) DrawCurve(Pen, Point[]) DrawCurve(Pen, Point[])

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture Point specificata.Draws a cardinal spline through a specified array of Point structures.

DrawCurve(Pen, PointF[]) DrawCurve(Pen, PointF[]) DrawCurve(Pen, PointF[])

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture PointF specificata.Draws a cardinal spline through a specified array of PointF structures.

DrawCurve(Pen, Point[], Single) DrawCurve(Pen, Point[], Single) DrawCurve(Pen, Point[], Single)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture Point specificata, utilizzando una tensione indicata.Draws a cardinal spline through a specified array of Point structures using a specified tension.

DrawCurve(Pen, PointF[], Single) DrawCurve(Pen, PointF[], Single) DrawCurve(Pen, PointF[], Single)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture PointF specificata, utilizzando una tensione indicata.Draws a cardinal spline through a specified array of PointF structures using a specified tension.

DrawCurve(Pen, PointF[], Int32, Int32) DrawCurve(Pen, PointF[], Int32, Int32) DrawCurve(Pen, PointF[], Int32, Int32)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture PointF specificata.Draws a cardinal spline through a specified array of PointF structures. Nel disegno l'offset viene avviato dall'inizio della matrice.The drawing begins offset from the beginning of the array.

DrawCurve(Pen, Point[], Int32, Int32, Single) DrawCurve(Pen, Point[], Int32, Int32, Single) DrawCurve(Pen, Point[], Int32, Int32, Single)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture Point specificata, utilizzando una tensione indicata.Draws a cardinal spline through a specified array of Point structures using a specified tension.

DrawCurve(Pen, PointF[], Int32, Int32, Single) DrawCurve(Pen, PointF[], Int32, Int32, Single) DrawCurve(Pen, PointF[], Int32, Int32, Single)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture PointF specificata, utilizzando una tensione indicata.Draws a cardinal spline through a specified array of PointF structures using a specified tension. Nel disegno l'offset viene avviato dall'inizio della matrice.The drawing begins offset from the beginning of the array.

DrawCurve(Pen, Point[]) DrawCurve(Pen, Point[]) DrawCurve(Pen, Point[])

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture Point specificata.Draws a cardinal spline through a specified array of Point structures.

public:
 void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::Point> ^ points);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.Point[] points);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.Point[] -> unit

Parametri

pen
Pen Pen Pen

Oggetto Pen che determina il colore, la larghezza e l'altezza della curva.Pen that determines the color, width, and height of the curve.

points
Point[]

Matrice di strutture Point che definiscono la curva spline.Array of Point structures that define the spline.

Eccezioni

pen è null.pen is null.

In alternativa-or- points è null.points is null.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Crea penne rosse e verdi.Creates red and green pens.

  • Crea sette punti per definire una curva.Creates seven points to define a curve.

  • Disegna sei linee rette rosse tra i sette punti per formare un poligono incompleto.Draws six red straight lines between the seven points to form an incomplete polygon.

  • Disegna una curva verde aperta nei sette punti.Draws an open green curve through the seven points.

Il metodo usa una tensione predefinita di 0,5.The method uses a default tension of 0.5.

private:
   void DrawCurvePoint( PaintEventArgs^ e )
   {
      // Create pens.
      Pen^ redPen = gcnew Pen( Color::Red,3.0f );
      Pen^ greenPen = gcnew Pen( Color::Green,3.0f );

      // Create points that define curve.
      Point point1 = Point(50,50);
      Point point2 = Point(100,25);
      Point point3 = Point(200,5);
      Point point4 = Point(250,50);
      Point point5 = Point(300,100);
      Point point6 = Point(350,200);
      Point point7 = Point(250,250);
      array<Point>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Draw lines between original points to screen.
      e->Graphics->DrawLines( redPen, curvePoints );

      // Draw curve to screen.
      e->Graphics->DrawCurve( greenPen, curvePoints );
   }
private void DrawCurvePoint(PaintEventArgs e)
{

    // Create pens.
    Pen redPen = new Pen(Color.Red, 3);
    Pen greenPen = new Pen(Color.Green, 3);

    // Create points that define curve.
    Point point1 = new Point(50, 50);
    Point point2 = new Point(100, 25);
    Point point3 = new Point(200, 5);
    Point point4 = new Point(250, 50);
    Point point5 = new Point(300, 100);
    Point point6 = new Point(350, 200);
    Point point7 = new Point(250, 250);
    Point[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints);

    // Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints);
}
Private Sub DrawCurvePoint(ByVal e As PaintEventArgs)

    ' Create pens.
    Dim redPen As New Pen(Color.Red, 3)
    Dim greenPen As New Pen(Color.Green, 3)

    ' Create points that define curve.
    Dim point1 As New Point(50, 50)
    Dim point2 As New Point(100, 25)
    Dim point3 As New Point(200, 5)
    Dim point4 As New Point(250, 50)
    Dim point5 As New Point(300, 100)
    Dim point6 As New Point(350, 200)
    Dim point7 As New Point(250, 250)
    Dim curvePoints As Point() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints)

    ' Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints)
End Sub

Commenti

Questo metodo disegna una spline di Cardinal che passa attraverso ogni punto della matrice.This method draws a cardinal spline that passes through each point in the array.

La matrice di punti deve contenere almeno tre Point strutture per poter disegnare una curva.The array of points must contain at least three Point structures for a curve to be drawn.

Questo metodo usa una tensione predefinita di 0,5.This method uses a default tension of 0.5.

DrawCurve(Pen, PointF[]) DrawCurve(Pen, PointF[]) DrawCurve(Pen, PointF[])

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture PointF specificata.Draws a cardinal spline through a specified array of PointF structures.

public:
 void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.PointF[] -> unit

Parametri

pen
Pen Pen Pen

Oggetto Pen che determina il colore, la larghezza e lo stile della curva.Pen that determines the color, width, and style of the curve.

points
PointF[]

Matrice di strutture PointF che definiscono la curva spline.Array of PointF structures that define the spline.

Eccezioni

pen è null.pen is null.

In alternativa-or- points è null.points is null.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Crea penne rosse e verdi.Creates red and green pens.

  • Crea sette punti per definire una curva.Creates seven points to define a curve.

  • Disegna sei linee rette rosse tra i sette punti per formare un poligono incompleto.Draws six red straight lines between the seven points to form an incomplete polygon.

  • Disegna una curva verde aperta nei sette punti.Draws an open green curve through the seven points.

Il metodo usa una tensione predefinita di 0,5.The method uses a default tension of 0.5.

private:
   void DrawCurvePointF( PaintEventArgs^ e )
   {
      // Create pens.
      Pen^ redPen = gcnew Pen( Color::Red,3.0f );
      Pen^ greenPen = gcnew Pen( Color::Green,3.0f );

      // Create points that define curve.
      PointF point1 = PointF(50.0F,50.0F);
      PointF point2 = PointF(100.0F,25.0F);
      PointF point3 = PointF(200.0F,5.0F);
      PointF point4 = PointF(250.0F,50.0F);
      PointF point5 = PointF(300.0F,100.0F);
      PointF point6 = PointF(350.0F,200.0F);
      PointF point7 = PointF(250.0F,250.0F);
      array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Draw lines between original points to screen.
      e->Graphics->DrawLines( redPen, curvePoints );

      // Draw curve to screen.
      e->Graphics->DrawCurve( greenPen, curvePoints );
   }
private void DrawCurvePointF(PaintEventArgs e)
{

    // Create pens.
    Pen redPen = new Pen(Color.Red, 3);
    Pen greenPen = new Pen(Color.Green, 3);

    // Create points that define curve.
    PointF point1 = new PointF(50.0F, 50.0F);
    PointF point2 = new PointF(100.0F, 25.0F);
    PointF point3 = new PointF(200.0F, 5.0F);
    PointF point4 = new PointF(250.0F, 50.0F);
    PointF point5 = new PointF(300.0F, 100.0F);
    PointF point6 = new PointF(350.0F, 200.0F);
    PointF point7 = new PointF(250.0F, 250.0F);
    PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints);

    // Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints);
}
Private Sub DrawCurvePointF(ByVal e As PaintEventArgs)

    ' Create pens.
    Dim redPen As New Pen(Color.Red, 3)
    Dim greenPen As New Pen(Color.Green, 3)

    ' Create points that define curve.
    Dim point1 As New PointF(50.0F, 50.0F)
    Dim point2 As New PointF(100.0F, 25.0F)
    Dim point3 As New PointF(200.0F, 5.0F)
    Dim point4 As New PointF(250.0F, 50.0F)
    Dim point5 As New PointF(300.0F, 100.0F)
    Dim point6 As New PointF(350.0F, 200.0F)
    Dim point7 As New PointF(250.0F, 250.0F)
    Dim curvePoints As PointF() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints)

    ' Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints)
End Sub

Commenti

Questo metodo disegna una spline di Cardinal che passa attraverso ogni punto della matrice.This method draws a cardinal spline that passes through each point in the array.

La matrice di punti deve contenere almeno tre PointF strutture per poter disegnare una curva.The array of points must contain at least three PointF structures for a curve to be drawn.

Questo metodo usa una tensione predefinita di 0,5.This method uses a default tension of 0.5.

DrawCurve(Pen, Point[], Single) DrawCurve(Pen, Point[], Single) DrawCurve(Pen, Point[], Single)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture Point specificata, utilizzando una tensione indicata.Draws a cardinal spline through a specified array of Point structures using a specified tension.

public:
 void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::Point> ^ points, float tension);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.Point[] points, float tension);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.Point[] * single -> unit

Parametri

pen
Pen Pen Pen

Oggetto Pen che determina il colore, la larghezza e lo stile della curva.Pen that determines the color, width, and style of the curve.

points
Point[]

Matrice di strutture Point che definiscono la curva spline.Array of Point structures that define the spline.

tension
Single Single Single

Valore superiore o uguale a 0,0 F che specifica la tensione della curva.Value greater than or equal to 0.0F that specifies the tension of the curve.

Eccezioni

pen è null.pen is null.

In alternativa-or- points è null.points is null.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Crea penne rosse e verdi.Creates red and green pens.

  • Crea sette punti per definire la curva.Creates seven points to define the curve.

  • Disegna sei linee rette rosse tra i sette punti per formare un poligono incompleto.Draws six red straight lines between the seven points to form an incomplete polygon.

  • Crea un'impostazione di tensione.Creates a tension setting.

  • Disegna una curva chiusa verde aperta nei sette punti.Draws an open green closed curve through the seven points.

Il metodo usa una tensione di 1,0.The method uses a tension of 1.0.

private:
   void DrawCurvePointTension( PaintEventArgs^ e )
   {

      // Create pens.
      Pen^ redPen = gcnew Pen( Color::Red,3.0f );
      Pen^ greenPen = gcnew Pen( Color::Green,3.0f );

      // Create points that define curve.
      Point point1 = Point(50,50);
      Point point2 = Point(100,25);
      Point point3 = Point(200,5);
      Point point4 = Point(250,50);
      Point point5 = Point(300,100);
      Point point6 = Point(350,200);
      Point point7 = Point(250,250);
      array<Point>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Draw lines between original points to screen.
      e->Graphics->DrawLines( redPen, curvePoints );

      // Create tension.
      float tension = 1.0F;

      // Draw curve to screen.
      e->Graphics->DrawCurve( greenPen, curvePoints, tension );
   }
private void DrawCurvePointTension(PaintEventArgs e)
{

    // Create pens.
    Pen redPen = new Pen(Color.Red, 3);
    Pen greenPen = new Pen(Color.Green, 3);

    // Create points that define curve.
    Point point1 = new Point(50, 50);
    Point point2 = new Point(100, 25);
    Point point3 = new Point(200, 5);
    Point point4 = new Point(250, 50);
    Point point5 = new Point(300, 100);
    Point point6 = new Point(350, 200);
    Point point7 = new Point(250, 250);
    Point[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints);

    // Create tension.
    float tension = 1.0F;

    // Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, tension);
}
Private Sub DrawCurvePointTension(ByVal e As PaintEventArgs)

    ' Create pens.
    Dim redPen As New Pen(Color.Red, 3)
    Dim greenPen As New Pen(Color.Green, 3)

    ' Create points that define curve.
    Dim point1 As New Point(50, 50)
    Dim point2 As New Point(100, 25)
    Dim point3 As New Point(200, 5)
    Dim point4 As New Point(250, 50)
    Dim point5 As New Point(300, 100)
    Dim point6 As New Point(350, 200)
    Dim point7 As New Point(250, 250)
    Dim curvePoints As Point() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints)

    ' Create tension.
    Dim tension As Single = 1.0F

    ' Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, tension)
End Sub

Commenti

Questo metodo disegna una spline di Cardinal che passa attraverso ogni punto della matrice.This method draws a cardinal spline that passes through each point in the array.

La matrice di punti deve contenere almeno tre Point strutture per poter disegnare una curva.The array of points must contain at least three Point structures for a curve to be drawn.

Il tension parametro determina la forma della spline.The tension parameter determines the shape of the spline. Se il valore del tension parametro è 0,0 f, questo metodo disegna segmenti di linea retta per la connessione dei punti.If the value of the tension parameter is 0.0F, this method draws straight line segments to connect the points. In genere, tension il parametro è minore o uguale a 1,0 f.Usually, the tension parameter is less than or equal to 1.0F. I valori superiori a 1,0 F producono risultati insoliti.Values over 1.0F produce unusual results.

DrawCurve(Pen, PointF[], Single) DrawCurve(Pen, PointF[], Single) DrawCurve(Pen, PointF[], Single)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture PointF specificata, utilizzando una tensione indicata.Draws a cardinal spline through a specified array of PointF structures using a specified tension.

public:
 void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points, float tension);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points, float tension);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.PointF[] * single -> unit

Parametri

pen
Pen Pen Pen

Oggetto Pen che determina il colore, la larghezza e lo stile della curva.Pen that determines the color, width, and style of the curve.

points
PointF[]

Matrice di strutture PointF che rappresentano i punti che definiscono la curva.Array of PointF structures that represent the points that define the curve.

tension
Single Single Single

Valore superiore o uguale a 0,0 F che specifica la tensione della curva.Value greater than or equal to 0.0F that specifies the tension of the curve.

Eccezioni

pen è null.pen is null.

-oppure--or- points è null.points is null.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Crea penne rosse e verdi.Creates red and green pens.

  • Crea sette punti per definire la curva.Creates seven points to define the curve.

  • Disegna sei linee rette rosse tra i sette punti per formare un poligono incompleto.Draws six red straight lines between the seven points to form an incomplete polygon.

  • Crea un'impostazione di tensione.Creates a tension setting.

  • Disegna una curva chiusa verde aperta nei sette punti.Draws an open green closed curve through the seven points.

Il metodo usa una tensione di 1,0.The method uses a tension of 1.0.

private:
   void DrawCurvePointFTension( PaintEventArgs^ e )
   {
      // Create pens.
      Pen^ redPen = gcnew Pen( Color::Red,3.0f );
      Pen^ greenPen = gcnew Pen( Color::Green,3.0f );

      // Create points that define curve.
      PointF point1 = PointF(50.0F,50.0F);
      PointF point2 = PointF(100.0F,25.0F);
      PointF point3 = PointF(200.0F,5.0F);
      PointF point4 = PointF(250.0F,50.0F);
      PointF point5 = PointF(300.0F,100.0F);
      PointF point6 = PointF(350.0F,200.0F);
      PointF point7 = PointF(250.0F,250.0F);
      array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Draw lines between original points to screen.
      e->Graphics->DrawLines( redPen, curvePoints );

      // Create tension.
      float tension = 1.0F;

      // Draw curve to screen.
      e->Graphics->DrawCurve( greenPen, curvePoints, tension );
   }
private void DrawCurvePointFTension(PaintEventArgs e)
{

    // Create pens.
    Pen redPen = new Pen(Color.Red, 3);
    Pen greenPen = new Pen(Color.Green, 3);

    // Create points that define curve.
    PointF point1 = new PointF(50.0F, 50.0F);
    PointF point2 = new PointF(100.0F, 25.0F);
    PointF point3 = new PointF(200.0F, 5.0F);
    PointF point4 = new PointF(250.0F, 50.0F);
    PointF point5 = new PointF(300.0F, 100.0F);
    PointF point6 = new PointF(350.0F, 200.0F);
    PointF point7 = new PointF(250.0F, 250.0F);
    PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints);

    // Create tension.
    float tension = 1.0F;

    // Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, tension);
}
Private Sub DrawCurvePointFTension(ByVal e As PaintEventArgs)

    ' Create pens.
    Dim redPen As New Pen(Color.Red, 3)
    Dim greenPen As New Pen(Color.Green, 3)

    ' Create points that define curve.
    Dim point1 As New PointF(50.0F, 50.0F)
    Dim point2 As New PointF(100.0F, 25.0F)
    Dim point3 As New PointF(200.0F, 5.0F)
    Dim point4 As New PointF(250.0F, 50.0F)
    Dim point5 As New PointF(300.0F, 100.0F)
    Dim point6 As New PointF(350.0F, 200.0F)
    Dim point7 As New PointF(250.0F, 250.0F)
    Dim curvePoints As PointF() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints)

    ' Create tension.
    Dim tension As Single = 1.0F

    ' Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, tension)
End Sub

Commenti

Questo metodo disegna una spline di Cardinal che passa attraverso ogni punto della matrice.This method draws a cardinal spline that passes through each point in the array.

La matrice di punti deve contenere almeno tre PointF strutture per poter disegnare una curva.The array of points must contain at least three PointF structures for a curve to be drawn.

Il tension parametro determina la forma della spline.The tension parameter determines the shape of the spline. Se il valore del tension parametro è 0,0 f, questo metodo disegna segmenti di linea retta per la connessione dei punti.If the value of the tension parameter is 0.0F, this method draws straight line segments to connect the points. In genere, tension il parametro è minore o uguale a 1,0 f.Usually, the tension parameter is less than or equal to 1.0F. I valori superiori a 1,0 F producono risultati insoliti.Values over 1.0F produce unusual results.

DrawCurve(Pen, PointF[], Int32, Int32) DrawCurve(Pen, PointF[], Int32, Int32) DrawCurve(Pen, PointF[], Int32, Int32)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture PointF specificata.Draws a cardinal spline through a specified array of PointF structures. Nel disegno l'offset viene avviato dall'inizio della matrice.The drawing begins offset from the beginning of the array.

public:
 void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points, int offset, int numberOfSegments);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points, int offset, int numberOfSegments);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.PointF[] * int * int -> unit

Parametri

pen
Pen Pen Pen

Oggetto Pen che determina il colore, la larghezza e lo stile della curva.Pen that determines the color, width, and style of the curve.

points
PointF[]

Matrice di strutture PointF che definiscono la curva spline.Array of PointF structures that define the spline.

offset
Int32 Int32 Int32

Offset dal primo elemento della matrice del parametro points al punto iniziale della curva.Offset from the first element in the array of the points parameter to the starting point in the curve.

numberOfSegments
Int32 Int32 Int32

Numero di segmenti successivi al punto iniziale da includere nella curva.Number of segments after the starting point to include in the curve.

Eccezioni

pen è null.pen is null.

In alternativa-or- points è null.points is null.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Crea penne rosse e verdi.Creates red and green pens.

  • Crea sette punti per definire una curva.Creates seven points to define a curve.

  • Disegna sei linee rette rosse tra i sette punti per formare un poligono incompleto.Draws six red straight lines between the seven points to form an incomplete polygon.

  • Definisce l'offset del punto iniziale e il numero di segmenti.Defines the starting point offset and number of segments.

  • Disegna una curva verde aperta (a partire dal terzo punto) negli ultimi cinque punti.Draws an open green curve (starting at the third point) through the last five points.

Il metodo usa una tensione predefinita di 0,5.The method uses a default tension of 0.5.

private:
   void DrawCurvePointFSegments( PaintEventArgs^ e )
   {
      // Create pens.
      Pen^ redPen = gcnew Pen( Color::Red,3.0f );
      Pen^ greenPen = gcnew Pen( Color::Green,3.0f );

      // Create points that define curve.
      PointF point1 = PointF(50.0F,50.0F);
      PointF point2 = PointF(100.0F,25.0F);
      PointF point3 = PointF(200.0F,5.0F);
      PointF point4 = PointF(250.0F,50.0F);
      PointF point5 = PointF(300.0F,100.0F);
      PointF point6 = PointF(350.0F,200.0F);
      PointF point7 = PointF(250.0F,250.0F);
      array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Draw lines between original points to screen.
      e->Graphics->DrawLines( redPen, curvePoints );

      // Create offset and number of segments.
      int offset = 2;
      int numSegments = 4;

      // Draw curve to screen.
      e->Graphics->DrawCurve( greenPen, curvePoints, offset, numSegments );
   }
private void DrawCurvePointFSegments(PaintEventArgs e)
{

    // Create pens.
    Pen redPen = new Pen(Color.Red, 3);
    Pen greenPen = new Pen(Color.Green, 3);

    // Create points that define curve.
    PointF point1 = new PointF(50.0F, 50.0F);
    PointF point2 = new PointF(100.0F, 25.0F);
    PointF point3 = new PointF(200.0F, 5.0F);
    PointF point4 = new PointF(250.0F, 50.0F);
    PointF point5 = new PointF(300.0F, 100.0F);
    PointF point6 = new PointF(350.0F, 200.0F);
    PointF point7 = new PointF(250.0F, 250.0F);
    PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints);

    // Create offset and number of segments.
    int offset = 2;
    int numSegments = 4;

    // Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments);
}
Private Sub DrawCurvePointFSegments(ByVal e As PaintEventArgs)

    ' Create pens.
    Dim redPen As New Pen(Color.Red, 3)
    Dim greenPen As New Pen(Color.Green, 3)

    ' Create points that define curve.
    Dim point1 As New PointF(50.0F, 50.0F)
    Dim point2 As New PointF(100.0F, 25.0F)
    Dim point3 As New PointF(200.0F, 5.0F)
    Dim point4 As New PointF(250.0F, 50.0F)
    Dim point5 As New PointF(300.0F, 100.0F)
    Dim point6 As New PointF(350.0F, 200.0F)
    Dim point7 As New PointF(250.0F, 250.0F)
    Dim curvePoints As PointF() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints)

    ' Create offset and number of segments.
    Dim offset As Integer = 2
    Dim numSegments As Integer = 4

    ' Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments)
End Sub

Commenti

Questo metodo disegna una spline di Cardinal che passa attraverso ogni punto della matrice.This method draws a cardinal spline that passes through each point in the array.

La matrice di punti deve contenere almeno tre PointF strutture per poter disegnare una curva.The array of points must contain at least three PointF structures for a curve to be drawn.

Il valore del offset parametro specifica il numero di elementi da ignorare nella matrice.The value of the offset parameter specifies the number of elements to skip in the array. Il primo elemento dopo gli elementi ignorati rappresenta il punto iniziale della curva.The first element after the skipped elements represents the starting point of the curve.

Il valore del numberOfSegments parametro specifica il numero di segmenti, dopo il punto iniziale, da creare nella curva.The value of the numberOfSegments parameter specifies the number of segments, after the starting point, to draw in the curve. Il valore del numberOfSegments parametro deve essere almeno 1.The value of the numberOfSegments parameter must be at least 1. Il valore del offset parametro più il valore numberOfSegments del parametro deve essere minore del numero di elementi points nella matrice del parametro.The value of the offset parameter plus the value of the numberOfSegments parameter must be less than the number of elements in the array of the points parameter.

Questo metodo usa una tensione predefinita di 0,5.This method uses a default tension of 0.5.

DrawCurve(Pen, Point[], Int32, Int32, Single) DrawCurve(Pen, Point[], Int32, Int32, Single) DrawCurve(Pen, Point[], Int32, Int32, Single)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture Point specificata, utilizzando una tensione indicata.Draws a cardinal spline through a specified array of Point structures using a specified tension.

public:
 void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::Point> ^ points, int offset, int numberOfSegments, float tension);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.Point[] points, int offset, int numberOfSegments, float tension);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.Point[] * int * int * single -> unit

Parametri

pen
Pen Pen Pen

Oggetto Pen che determina il colore, la larghezza e lo stile della curva.Pen that determines the color, width, and style of the curve.

points
Point[]

Matrice di strutture Point che definiscono la curva spline.Array of Point structures that define the spline.

offset
Int32 Int32 Int32

Offset dal primo elemento della matrice del parametro points al punto iniziale della curva.Offset from the first element in the array of the points parameter to the starting point in the curve.

numberOfSegments
Int32 Int32 Int32

Numero di segmenti successivi al punto iniziale da includere nella curva.Number of segments after the starting point to include in the curve.

tension
Single Single Single

Valore superiore o uguale a 0,0 F che specifica la tensione della curva.Value greater than or equal to 0.0F that specifies the tension of the curve.

Eccezioni

pen è null.pen is null.

-oppure--or- points è null.points is null.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Crea penne rosse e verdi.Creates red and green pens.

  • Crea sette punti per definire una curva.Creates seven points to define a curve.

  • Disegna sei linee rette rosse tra i sette punti per formare un poligono incompleto.Draws six red straight lines between the seven points to form an incomplete polygon.

  • Definisce l'offset del punto iniziale e il numero di segmenti.Defines the starting point offset and number of segments.

  • Definisce la tensione.Defines the tension.

  • Disegna una curva verde aperta (a partire dal terzo punto) negli ultimi cinque punti.Draws an open green curve (starting at the third point) through the last five points.

Il metodo imposta la tensione su 1,0.The method sets the tension to 1.0.

private:
   void DrawCurvePointSegmentTension( PaintEventArgs^ e )
   {
      // Create pens.
      Pen^ redPen = gcnew Pen( Color::Red,3.0f );
      Pen^ greenPen = gcnew Pen( Color::Green,3.0f );

      // Create points that define curve.
      Point point1 = Point(50,50);
      Point point2 = Point(100,25);
      Point point3 = Point(200,5);
      Point point4 = Point(250,50);
      Point point5 = Point(300,100);
      Point point6 = Point(350,200);
      Point point7 = Point(250,250);
      array<Point>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Draw lines between original points to screen.
      e->Graphics->DrawLines( redPen, curvePoints );

      // Create offset, number of segments, and tension.
      int offset = 2;
      int numSegments = 4;
      float tension = 1.0F;

      // Draw curve to screen.
      e->Graphics->DrawCurve( greenPen, curvePoints, offset, numSegments, tension );
   }
private void DrawCurvePointSegmentTension(PaintEventArgs e)
{

    // Create pens.
    Pen redPen = new Pen(Color.Red, 3);
    Pen greenPen = new Pen(Color.Green, 3);

    // Create points that define curve.
    Point point1 = new Point(50, 50);
    Point point2 = new Point(100, 25);
    Point point3 = new Point(200, 5);
    Point point4 = new Point(250, 50);
    Point point5 = new Point(300, 100);
    Point point6 = new Point(350, 200);
    Point point7 = new Point(250, 250);
    Point[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints);

    // Create offset, number of segments, and tension.
    int offset = 2;
    int numSegments = 4;
    float tension = 1.0F;

    // Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, tension);
}
Private Sub DrawCurvePointSegmentTension(ByVal e As PaintEventArgs)

    ' Create pens.
    Dim redPen As New Pen(Color.Red, 3)
    Dim greenPen As New Pen(Color.Green, 3)

    ' Create points that define curve.
    Dim point1 As New Point(50, 50)
    Dim point2 As New Point(100, 25)
    Dim point3 As New Point(200, 5)
    Dim point4 As New Point(250, 50)
    Dim point5 As New Point(300, 100)
    Dim point6 As New Point(350, 200)
    Dim point7 As New Point(250, 250)
    Dim curvePoints As Point() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints)

    ' Create offset, number of segments, and tension.
    Dim offset As Integer = 2
    Dim numSegments As Integer = 4
    Dim tension As Single = 1.0F

    ' Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, _
    tension)
End Sub

Commenti

Questo metodo disegna una spline di Cardinal che passa attraverso ogni punto della matrice.This method draws a cardinal spline that passes through each point in the array.

La matrice di punti deve contenere almeno tre Point strutture per poter disegnare una curva.The array of points must contain at least three Point structures for a curve to be drawn.

Il valore del offset parametro specifica il numero di elementi da ignorare nella matrice.The value of the offset parameter specifies the number of elements to skip in the array. Il primo elemento dopo gli elementi ignorati rappresenta il punto iniziale della curva.The first element after the skipped elements represents the starting point of the curve.

Il valore del numberOfSegments parametro specifica il numero di segmenti, dopo il punto iniziale, da creare nella curva.The value of the numberOfSegments parameter specifies the number of segments, after the starting point, to draw in the curve. Il valore del numberOfSegments parametro deve essere almeno 1.The value of the numberOfSegments parameter must be at least 1. Il valore del offset parametro più il valore numberOfSegments del parametro deve essere minore del numero di elementi points nella matrice del parametro.The value of the offset parameter plus the value of the numberOfSegments parameter must be less than the number of elements in the array of the points parameter.

Il tension parametro determina la forma della spline.The tension parameter determines the shape of the spline. Se il valore del tension parametro è 0,0 f, questo metodo disegna segmenti di linea retta per la connessione dei punti.If the value of the tension parameter is 0.0F, this method draws straight line segments to connect the points. In genere, tension il parametro è minore o uguale a 1,0 f.Usually, the tension parameter is less than or equal to 1.0F. I valori superiori a 1,0 F producono risultati insoliti.Values over 1.0F produce unusual results.

DrawCurve(Pen, PointF[], Int32, Int32, Single) DrawCurve(Pen, PointF[], Int32, Int32, Single) DrawCurve(Pen, PointF[], Int32, Int32, Single)

Disegna una curva spline di tipo Cardinal mediante una matrice di strutture PointF specificata, utilizzando una tensione indicata.Draws a cardinal spline through a specified array of PointF structures using a specified tension. Nel disegno l'offset viene avviato dall'inizio della matrice.The drawing begins offset from the beginning of the array.

public:
 void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points, int offset, int numberOfSegments, float tension);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points, int offset, int numberOfSegments, float tension);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.PointF[] * int * int * single -> unit

Parametri

pen
Pen Pen Pen

Oggetto Pen che determina il colore, la larghezza e lo stile della curva.Pen that determines the color, width, and style of the curve.

points
PointF[]

Matrice di strutture PointF che definiscono la curva spline.Array of PointF structures that define the spline.

offset
Int32 Int32 Int32

Offset dal primo elemento della matrice del parametro points al punto iniziale della curva.Offset from the first element in the array of the points parameter to the starting point in the curve.

numberOfSegments
Int32 Int32 Int32

Numero di segmenti successivi al punto iniziale da includere nella curva.Number of segments after the starting point to include in the curve.

tension
Single Single Single

Valore superiore o uguale a 0,0 F che specifica la tensione della curva.Value greater than or equal to 0.0F that specifies the tension of the curve.

Eccezioni

pen è null.pen is null.

In alternativa-or- points è null.points is null.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Crea penne rosse e verdi.Creates red and green pens.

  • Crea sette punti per definire una curva.Creates seven points to define a curve.

  • Disegna sei linee rette rosse tra i sette punti per formare un poligono incompleto.Draws six red straight lines between the seven points to form an incomplete polygon.

  • Definisce l'offset del punto iniziale e il numero di segmenti.Defines the starting point offset and number of segments.

  • Definisce la tensione.Defines the tension.

  • Disegna una curva verde aperta (a partire dal terzo punto) negli ultimi cinque punti.Draws an open green curve (starting at the third point) through the last five points.

Il metodo imposta la tensione su 1,0.The method sets the tension to 1.0.

private:
   void DrawCurvePointFSegmentTension( PaintEventArgs^ e )
   {
      // Create pens.
      Pen^ redPen = gcnew Pen( Color::Red,3.0f );
      Pen^ greenPen = gcnew Pen( Color::Green,3.0f );

      // Create points that define curve.
      PointF point1 = PointF(50.0F,50.0F);
      PointF point2 = PointF(100.0F,25.0F);
      PointF point3 = PointF(200.0F,5.0F);
      PointF point4 = PointF(250.0F,50.0F);
      PointF point5 = PointF(300.0F,100.0F);
      PointF point6 = PointF(350.0F,200.0F);
      PointF point7 = PointF(250.0F,250.0F);
      array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};

      // Draw lines between original points to screen.
      e->Graphics->DrawLines( redPen, curvePoints );

      // Create offset, number of segments, and tension.
      int offset = 2;
      int numSegments = 4;
      float tension = 1.0F;

      // Draw curve to screen.
      e->Graphics->DrawCurve( greenPen, curvePoints, offset, numSegments, tension );
   }
private void DrawCurvePointFSegmentTension(PaintEventArgs e)
{

    // Create pens.
    Pen redPen = new Pen(Color.Red, 3);
    Pen greenPen = new Pen(Color.Green, 3);

    // Create points that define curve.
    PointF point1 = new PointF(50.0F, 50.0F);
    PointF point2 = new PointF(100.0F, 25.0F);
    PointF point3 = new PointF(200.0F, 5.0F);
    PointF point4 = new PointF(250.0F, 50.0F);
    PointF point5 = new PointF(300.0F, 100.0F);
    PointF point6 = new PointF(350.0F, 200.0F);
    PointF point7 = new PointF(250.0F, 250.0F);
    PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};

    // Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints);

    // Create offset, number of segments, and tension.
    int offset = 2;
    int numSegments = 4;
    float tension = 1.0F;

    // Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, tension);
}
Private Sub DrawCurvePointFSegmentTension(ByVal e As PaintEventArgs)

    ' Create pens.
    Dim redPen As New Pen(Color.Red, 3)
    Dim greenPen As New Pen(Color.Green, 3)

    ' Create points that define curve.
    Dim point1 As New PointF(50.0F, 50.0F)
    Dim point2 As New PointF(100.0F, 25.0F)
    Dim point3 As New PointF(200.0F, 5.0F)
    Dim point4 As New PointF(250.0F, 50.0F)
    Dim point5 As New PointF(300.0F, 100.0F)
    Dim point6 As New PointF(350.0F, 200.0F)
    Dim point7 As New PointF(250.0F, 250.0F)
    Dim curvePoints As PointF() = {point1, point2, point3, point4, _
    point5, point6, point7}

    ' Draw lines between original points to screen.
    e.Graphics.DrawLines(redPen, curvePoints)

    ' Create offset, number of segments, and tension.
    Dim offset As Integer = 2
    Dim numSegments As Integer = 4
    Dim tension As Single = 1.0F

    ' Draw curve to screen.
    e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, _
    tension)
End Sub

Commenti

Questo metodo disegna una spline di Cardinal che passa attraverso ogni punto della matrice.This method draws a cardinal spline that passes through each point in the array.

La matrice di punti deve contenere almeno tre PointF strutture per la curva da disegnare.The array of points must contain at least three PointF structures for curve to be drawn.

Il valore del offset parametro specifica il numero di elementi da ignorare nella matrice.The value of the offset parameter specifies the number of elements to skip in the array. Il primo elemento dopo gli elementi ignorati rappresenta il punto iniziale della curva.The first element after the skipped elements represents the starting point of the curve.

Il valore del numberOfSegments parametro specifica il numero di segmenti, dopo il punto iniziale, da creare nella curva.The value of the numberOfSegments parameter specifies the number of segments, after the starting point, to draw in the curve. Il valore del numberOfSegments parametro deve essere almeno 1.The value of the numberOfSegments parameter must be at least 1. Il valore del offset parametro più il valore numberOfSegments del parametro deve essere minore del numero di elementi points nella matrice del parametro.The value of the offset parameter plus the value of the numberOfSegments parameter must be less than the number of elements in the array of the points parameter.

Il tension parametro determina la forma della spline.The tension parameter determines the shape of the spline. Se il valore del tension parametro è 0,0 f, questo metodo disegna segmenti di linea retta per la connessione dei punti.If the value of the tension parameter is 0.0F, this method draws straight line segments to connect the points. In genere, tension il parametro è minore o uguale a 1,0 f.Usually, the tension parameter is less than or equal to 1.0F. I valori superiori a 1,0 F producono risultati insoliti.Values over 1.0F produce unusual results.

Si applica a