GraphicsPath::AddCurve(constPointF*,INT,INT,INT,REAL) (gdipluspath.h)

El método GraphicsPath::AddCurve agrega una spline cardinal a la figura actual de esta ruta de acceso.

Sintaxis

Status AddCurve(
  [in] const PointF *points,
  [in] INT          count,
  [in] INT          offset,
  [in] INT          numberOfSegments,
  [in] REAL         tension
);

Parámetros

[in] points

Tipo: const PointF*

Puntero a una matriz de puntos que definen la spline cardinal. La spline cardinal es una curva que pasa a través de un subconjunto (especificado por los parámetros offset y numberOfSegments ) de los puntos de la matriz.

[in] count

Tipo: INT

Entero que especifica el número de elementos de la matriz de puntos .

[in] offset

Tipo: INT

Entero que especifica el índice del elemento de matriz que se usa como primer punto de la spline cardinal.

[in] numberOfSegments

Tipo: INT

Entero que especifica el número de segmentos de la spline cardinal. Los segmentos son las curvas que conectan puntos consecutivos en la matriz.

[in] tension

Tipo: REAL

Número real no negativo que controla la longitud de la curva y cómo se dobla la curva. Un valor de 0 especifica que la spline es una secuencia de segmentos de línea recta. A medida que aumenta el valor, la curva se llena.

Valor devuelto

Tipo: Estado

Si el método se realiza correctamente, devuelve Ok, que es un elemento de la enumeración Status .

Si se produce un error en el método, devuelve uno de los otros elementos de la enumeración Status .

Comentarios

Debe conservar una copia de la matriz de puntos si esos puntos se necesitarán más adelante. El objeto GraphicsPath no almacena los puntos pasados al método AddClosedCurve ; en su lugar, convierte la spline cardinal en una secuencia de splines bézier y almacena los puntos que definen esas splines bézier. No se puede recuperar la matriz original de puntos del objeto GraphicsPath .

Ejemplos

En el ejemplo siguiente se crea una ruta de acceso de objeto GraphicsPath, se agrega una spline cardinal a la ruta de acceso y, a continuación, se dibuja la ruta de acceso. La spline se crea a partir de los puntos indexados de 2 a 6 en una matriz de ocho puntos.

VOID AddCurveExample3(HDC hdc)
{
   Graphics graphics(hdc);
   GraphicsPath path;
   
   PointF pts[] = {PointF(50.0f, 50.0f),
                  PointF(70.0f, 80.0f),
                  PointF(100.0f, 100.0f),
                  PointF(130.0f, 40.0f),
                  PointF(150.0f, 90.0f),
                  PointF(180.0f, 30.0f),
                  PointF(210.0f, 120.0f),
                  PointF(240.0f, 80.0f)};
   path.AddCurve(
      pts, 
      8,     // There are eight points in the array. 
      2,     // Start at the point with index 2.
      4,     // Four segments. End at the point with index 6.
      1.0f);
   Pen pen(Color(255, 0, 0, 255));
   graphics.DrawPath(&pen, &path);
   // Draw all eight points in the array.
   SolidBrush brush(Color(255, 255, 0, 0));
   for(INT j = 0; j <= 7; ++j)
      graphics.FillEllipse(&brush, pts[j].X - 3.0f, pts[j].Y - 3.0f, 6.0f, 6.0f); 
}
Color(255, 255, 0,  0)

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP, Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado gdipluspath.h (incluya Gdiplus.h)
Library Gdiplus.lib
Archivo DLL Gdiplus.dll

Consulte también

Métodos AddBezier

Métodos AddBeziers

Métodos AddClosedCurve

Métodos AddCurve

Splines cardinales

Recorte con una región

Crear y dibujar trazados

Creación de un degradado de trazado

Dibujar splines cardinales

Graphicspath

Paths

PointF