Graphics.DrawClosedCurve Método

Definición

Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras Point.

Sobrecargas

DrawClosedCurve(Pen, ReadOnlySpan<Point>, Single, FillMode)
DrawClosedCurve(Pen, PointF[], Single, FillMode)

Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras PointF, usando la tensión especificada.

DrawClosedCurve(Pen, Point[], Single, FillMode)

Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras Point, usando la tensión especificada.

DrawClosedCurve(Pen, ReadOnlySpan<PointF>, Single, FillMode)
DrawClosedCurve(Pen, ReadOnlySpan<Point>)
DrawClosedCurve(Pen, Point[])

Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras Point.

DrawClosedCurve(Pen, ReadOnlySpan<PointF>)
DrawClosedCurve(Pen, PointF[])

Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras PointF.

DrawClosedCurve(Pen, ReadOnlySpan<Point>, Single, FillMode)

Source:
Graphics.cs
public:
 void DrawClosedCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::Point> points, float tension, System::Drawing::Drawing2D::FillMode fillmode);
public void DrawClosedCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.Point> points, float tension, System.Drawing.Drawing2D.FillMode fillmode);
member this.DrawClosedCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.Point> * single * System.Drawing.Drawing2D.FillMode -> unit
Public Sub DrawClosedCurve (pen As Pen, points As ReadOnlySpan(Of Point), tension As Single, fillmode As FillMode)

Parámetros

pen
Pen
tension
Single
fillmode
FillMode

Se aplica a

DrawClosedCurve(Pen, PointF[], Single, FillMode)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras PointF, usando la tensión especificada.

public:
 void DrawClosedCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points, float tension, System::Drawing::Drawing2D::FillMode fillmode);
public void DrawClosedCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points, float tension, System.Drawing.Drawing2D.FillMode fillmode);
member this.DrawClosedCurve : System.Drawing.Pen * System.Drawing.PointF[] * single * System.Drawing.Drawing2D.FillMode -> unit
Public Sub DrawClosedCurve (pen As Pen, points As PointF(), tension As Single, fillmode As FillMode)

Parámetros

pen
Pen

Pen que determina el color, ancho y alto de la curva.

points
PointF[]

Matriz de estructuras PointF que definen la curva spline.

tension
Single

Valor mayor o igual que 0,0 F que especifica la tensión de la curva.

fillmode
FillMode

Miembro de la enumeración FillMode que determina cómo se rellena la curva. Este parámetro es obligatorio, si bien se pasa por alto.

Excepciones

pen es null.

o bien

points es null.

Ejemplos

El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse, que es un parámetro del Paint controlador de eventos. El código realiza las siguientes acciones:

  • Crea lápices rojos y verdes.

  • Crea siete puntos para definir la curva.

  • Dibuja siete líneas rectas rojas entre los siete puntos para formar un polígono.

  • Crea la configuración del modo de tensión y relleno.

  • Dibuja una curva cerrada verde a través de los siete puntos.

El método usa una tensión de 1,0 y establece el modo de relleno en FillMode.Alternate.

private:
   void DrawClosedCurvePointFTension( 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 and fill mode.
      float tension = 1.0F;
      FillMode aFillMode = FillMode::Alternate;

      // Draw closed curve to screen.
      e->Graphics->DrawClosedCurve( greenPen, curvePoints, tension, aFillMode );
   }
private void DrawClosedCurvePointFTension(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 and fill mode.
    float tension = 1.0F;
    FillMode aFillMode = FillMode.Alternate;

    // Draw closed curve to screen.
    e.Graphics.DrawClosedCurve(greenPen, curvePoints, tension, aFillMode);
}
Private Sub DrawClosedCurvePointFTension(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 and fill mode.
    Dim tension As Single = 1.0F
    Dim aFillMode As FillMode = FillMode.Alternate

    ' Draw closed curve to screen.
    e.Graphics.DrawClosedCurve(greenPen, curvePoints, tension, _
    aFillMode)
End Sub

Comentarios

Este método dibuja una spline cardinal cerrada que pasa por cada punto de la matriz. Si el último punto no coincide con el primer punto, se agrega un segmento de curva adicional desde el último punto al primer punto para cerrarlo.

La matriz de puntos debe contener al menos cuatro PointF estructuras.

El tension parámetro determina la forma de la spline. Si el valor del tension parámetro es 0,0F, este método dibuja segmentos de línea recta para conectar los puntos. Normalmente, el tension parámetro es menor o igual que 1.0F. Los valores de más de 1.0F generan resultados inusuales.

Se aplica a

DrawClosedCurve(Pen, Point[], Single, FillMode)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras Point, usando la tensión especificada.

public:
 void DrawClosedCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::Point> ^ points, float tension, System::Drawing::Drawing2D::FillMode fillmode);
public void DrawClosedCurve (System.Drawing.Pen pen, System.Drawing.Point[] points, float tension, System.Drawing.Drawing2D.FillMode fillmode);
member this.DrawClosedCurve : System.Drawing.Pen * System.Drawing.Point[] * single * System.Drawing.Drawing2D.FillMode -> unit
Public Sub DrawClosedCurve (pen As Pen, points As Point(), tension As Single, fillmode As FillMode)

Parámetros

pen
Pen

Pen que determina el color, ancho y alto de la curva.

points
Point[]

Matriz de estructuras Point que definen la curva spline.

tension
Single

Valor mayor o igual que 0,0 F que especifica la tensión de la curva.

fillmode
FillMode

Miembro de la enumeración FillMode que determina cómo se rellena la curva. Este parámetro es obligatorio, si bien se pasa por alto.

Excepciones

pen es null.

o bien

points es null.

Ejemplos

El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse, que es un parámetro del Paint controlador de eventos. El código realiza las siguientes acciones:

  • Crea lápices rojos y verdes.

  • Crea siete puntos para definir la curva.

  • Dibuja siete líneas rectas rojas entre los siete puntos para formar un polígono.

  • Crea la configuración del modo de tensión y relleno.

  • Dibuja una curva cerrada verde a través de los siete puntos.

El método usa una tensión de 1,0 y establece el modo de relleno en FillMode.Alternate.

private:
   void DrawClosedCurvePointTension( 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 and fill mode.
      float tension = 1.0F;
      FillMode aFillMode = FillMode::Alternate;

      // Draw closed curve to screen.
      e->Graphics->DrawClosedCurve( greenPen, curvePoints, tension, aFillMode );
   }
private void DrawClosedCurvePointTension(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 and fill mode.
    float tension = 1.0F;
    FillMode aFillMode = FillMode.Alternate;

    // Draw closed curve to screen.
    e.Graphics.DrawClosedCurve(greenPen, curvePoints, tension, aFillMode);
}
Private Sub DrawClosedCurvePointTension(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 and fill mode.
    Dim tension As Single = 1.0F
    Dim aFillMode As FillMode = FillMode.Alternate

    ' Draw closed curve to screen.
    e.Graphics.DrawClosedCurve(greenPen, curvePoints, tension, _
    aFillMode)
End Sub

Comentarios

Este método dibuja una spline cardinal cerrada que pasa por cada punto de la matriz. Si el último punto no coincide con el primer punto, se agrega un segmento de curva adicional desde el último punto al primer punto para cerrarlo.

La matriz de puntos debe contener al menos cuatro Point estructuras.

El tension parámetro determina la forma de la spline. Si el valor del tension parámetro es 0,0F, este método dibuja segmentos de línea recta para conectar los puntos. Normalmente, el tension parámetro es menor o igual que 1.0F. Los valores de más de 1.0F generan resultados inusuales.

Se aplica a

DrawClosedCurve(Pen, ReadOnlySpan<PointF>, Single, FillMode)

Source:
Graphics.cs
public:
 void DrawClosedCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::PointF> points, float tension, System::Drawing::Drawing2D::FillMode fillmode);
public void DrawClosedCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.PointF> points, float tension, System.Drawing.Drawing2D.FillMode fillmode);
member this.DrawClosedCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.PointF> * single * System.Drawing.Drawing2D.FillMode -> unit
Public Sub DrawClosedCurve (pen As Pen, points As ReadOnlySpan(Of PointF), tension As Single, fillmode As FillMode)

Parámetros

pen
Pen
tension
Single
fillmode
FillMode

Se aplica a

DrawClosedCurve(Pen, ReadOnlySpan<Point>)

Source:
Graphics.cs
public:
 void DrawClosedCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::Point> points);
public void DrawClosedCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.Point> points);
member this.DrawClosedCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.Point> -> unit
Public Sub DrawClosedCurve (pen As Pen, points As ReadOnlySpan(Of Point))

Parámetros

pen
Pen

Se aplica a

DrawClosedCurve(Pen, Point[])

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras Point.

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

Parámetros

pen
Pen

Pen que determina el color, ancho y alto de la curva.

points
Point[]

Matriz de estructuras Point que definen la curva spline.

Excepciones

pen es null.

o bien

points es null.

Ejemplos

El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse, que es un parámetro del Paint controlador de eventos. El código realiza las siguientes acciones:

  • Crea lápices rojos y verdes.

  • Crea siete puntos para definir una curva.

  • Dibuja siete líneas rectas rojas entre los siete puntos para formar un polígono cerrado.

  • Dibuja una curva cerrada verde a través de los siete puntos.

El método usa una tensión predeterminada de 0,5.

private:
   void DrawClosedCurvePoint( 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 closed curve to screen.
      e->Graphics->DrawClosedCurve( greenPen, curvePoints );
   }
private void DrawClosedCurvePoint(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 closed curve to screen.
    e.Graphics.DrawClosedCurve(greenPen, curvePoints);
}
Private Sub DrawClosedCurvePoint(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 closed curve to screen.
    e.Graphics.DrawClosedCurve(greenPen, curvePoints)
End Sub

Comentarios

Este método dibuja una spline cardinal cerrada que pasa por cada punto de la matriz. Si el último punto no coincide con el primer punto, se agrega un segmento de curva adicional desde el último punto al primer punto para cerrar la figura.

La matriz de puntos debe contener al menos cuatro Point estructuras.

Este método usa una tensión predeterminada de 0,5.

Se aplica a

DrawClosedCurve(Pen, ReadOnlySpan<PointF>)

Source:
Graphics.cs
public:
 void DrawClosedCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::PointF> points);
public void DrawClosedCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.PointF> points);
member this.DrawClosedCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.PointF> -> unit
Public Sub DrawClosedCurve (pen As Pen, points As ReadOnlySpan(Of PointF))

Parámetros

pen
Pen

Se aplica a

DrawClosedCurve(Pen, PointF[])

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras PointF.

public:
 void DrawClosedCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points);
public:
 void DrawClosedCurve(System::Drawing::Pen ^ pen, ... cli::array <System::Drawing::PointF> ^ points);
public void DrawClosedCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points);
public void DrawClosedCurve (System.Drawing.Pen pen, params System.Drawing.PointF[] points);
member this.DrawClosedCurve : System.Drawing.Pen * System.Drawing.PointF[] -> unit
Public Sub DrawClosedCurve (pen As Pen, points As PointF())
Public Sub DrawClosedCurve (pen As Pen, ParamArray points As PointF())

Parámetros

pen
Pen

Pen que determina el color, ancho y alto de la curva.

points
PointF[]

Matriz de estructuras PointF que definen la curva spline.

Excepciones

pen es null.

o bien

points es null.

Ejemplos

El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse, que es un parámetro del Paint controlador de eventos. El código realiza las siguientes acciones:

  • Crea lápices rojos y verdes.

  • Crea siete puntos para definir una curva.

  • Dibuja siete líneas rectas rojas entre los siete puntos para formar un polígono cerrado.

  • Dibuja una curva cerrada verde a través de los siete puntos.

El método usa una tensión predeterminada de 0,5.

private:
   void DrawClosedCurvePointF( 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 closed curve to screen.
      e->Graphics->DrawClosedCurve( greenPen, curvePoints );
   }
private void DrawClosedCurvePointF(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 closed curve to screen.
    e.Graphics.DrawClosedCurve(greenPen, curvePoints);
}
Private Sub DrawClosedCurvePointF(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 closed curve to screen.
    e.Graphics.DrawClosedCurve(greenPen, curvePoints)
End Sub

Comentarios

Este método dibuja una spline cardinal cerrada que pasa por cada punto de la matriz. Si el último punto no coincide con el primer punto, se agrega un segmento de curva adicional desde el último punto al primer punto para cerrarlo.

La matriz de puntos debe contener al menos cuatro PointF estructuras.

Este método usa una tensión predeterminada de 0,5.

Se aplica a