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

GraphicsPath::AddCurve 方法将基数样条添加到此路径的当前图形中。

语法

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

参数

[in] points

类型: const PointF*

指向定义基数样条的点数组的指针。 基数样条是一条曲线,它通过数组中点) 偏移量numberOfSegments 参数指定的子集 (。

[in] count

类型: INT

指定 数组中的元素数的整数。

[in] offset

类型: INT

整数,指定用作基数样条第一点的数组元素的索引。

[in] numberOfSegments

类型: INT

指定基数样条中的段数的整数。 段是连接数组中连续点的曲线。

[in] tension

类型: REAL

控制曲线长度和曲线弯曲方式的非否定实数。 值为 0 指定样条是直线段的序列。 随着值的增加,曲线变得更加完整。

返回值

类型: 状态

如果该方法成功,则返回 Ok,这是 Status 枚举的元素。

如果方法失败,它将返回 Status 枚举的其他元素之一。

注解

如果以后需要 这些点 ,则应保留点数组的副本。 GraphicsPath 对象不存储传递给 AddClosedCurve 方法的点;相反,它将基数样条转换为贝塞尔样条序列,并存储定义这些贝塞尔样条的点。 无法从 GraphicsPath 对象中检索原始的点数组。

示例

以下示例创建 GraphicsPath 对象 路径,将基数样条添加到 path,然后绘制 路径。 样条是从索引为 2 到 6 的 8 磅数组中的点构建的。

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)

要求

要求
最低受支持的客户端 Windows XP、Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 gdipluspath.h (包括 Gdiplus.h)
Library Gdiplus.lib
DLL Gdiplus.dll

另请参阅

AddBezier 方法

AddBeziers 方法

AddClosedCurve 方法

AddCurve 方法

基数样条

使用区域进行剪裁

构造并绘制轨迹

创建路径渐变

绘制基数样条

GraphicsPath

路径

PointF