Método Graphics::D rawCurve(constPen*,constPoint*,INT,INT,INT,REAL) (gdiplusgraphics.h)

O método Graphics::D rawCurve desenha um spline cardinal.

Sintaxe

Status DrawCurve(
  [in] const Pen   *pen,
  [in] const Point *points,
  [in] INT         count,
  [in] INT         offset,
  [in] INT         numberOfSegments,
  [in] REAL        tension
);

Parâmetros

[in] pen

Tipo: caneta* const

Ponteiro para uma caneta usada para desenhar o spline cardinal.

[in] points

Tipo: const Point*

Ponteiro para uma matriz de objetos Point que especificam as coordenadas pelas quais o spline cardinal passa.

[in] count

Tipo: INT

Inteiro que especifica o número de elementos na matriz de pontos .

[in] offset

Tipo: INT

Inteiro que especifica o elemento na matriz de pontos que especifica o ponto no qual o spline cardinal começa.

[in] numberOfSegments

Tipo: INT

Inteiro que especifica o número de segmentos no spline cardinal.

[in] tension

Tipo: REAL

Número real que especifica o quão firmemente a curva se curva através das coordenadas do spline cardinal.

Retornar valor

Tipo: Status

Se o método for bem-sucedido, ele retornará Ok, que é um elemento da enumeração Status .

Se o método falhar, ele retornará um dos outros elementos da enumeração Status .

Comentários

Um segmento é definido como uma curva que conecta dois pontos consecutivos no spline cardinal. O ponto final de cada segmento é o ponto de partida para o próximo. O parâmetro numberOfSegments não deve ser maior que o parâmetro count menos o parâmetro offset mais um.

Exemplos

O exemplo a seguir desenha um spline cardinal.

VOID Example_DrawCurve2(HDC hdc)
{
   Graphics graphics(hdc);

   // Define a Pen object and an array of Point objects.
   Pen greenPen(Color::Green, 3);
   Point point1(100, 100);
   Point point2(200, 50);
   Point point3(400, 10);
   Point point4(500, 100);

   Point curvePoints[4] = {
   point1,
   point2,
   point3,
   point4};

   Point* pcurvePoints = curvePoints;

   // Specify offset, number of segments to draw, and tension.
   int offset = 1;
   int segments = 2;
   REAL tension = 1.0;

   // Draw the curve.
   graphics.DrawCurve(&greenPen, curvePoints, 4, offset, segments, tension);

   //Draw the points in the curve.
   SolidBrush redBrush(Color::Red);
   graphics.FillEllipse(&redBrush, Rect(95, 95, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(195, 45, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(395, 5, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(495, 95, 10, 10));
}

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho gdiplusgraphics.h (inclua Gdiplus.h)
Biblioteca Gdiplus.lib
DLL Gdiplus.dll

Confira também

Splines cardeais

Métodos DrawClosedCurve

Desenhando splines cardeais

Elementos gráficos

Caneta

Ponto