GDI+ 中的贝塞尔样条
贝塞尔样条是由四个点指定的曲线:两个端点(p1 和 p2)和两个控制点(c1 和 c2)。 曲线开始于 p1,结束于 p2。 该曲线不经过控制点,但是控制点的作用像磁铁一样,在某些方向上拉拽曲线并影响曲线弯曲的方式。 下面的插图显示一个贝塞尔曲线及其端点和控制点。
该曲线始于 p1 并向控制点 c1 移动。 该曲线 p1 处的切线是从 p1 到 c1 绘制的线。 端点 p2 处的切线为从 c2 到 p2 绘制的线。
绘制贝塞尔样条
若要绘制贝塞尔样条,需要 Graphics 类的实例和 Pen。 Graphics 类的实例提供 DrawBezier 方法,而 Pen 存储用于呈现曲线的线的特性,如宽度和颜色。 将 Pen 作为参数之一传递给 DrawBezier 方法。 传递给 DrawBezier 方法的其他参数是端点和控制点。 下面的示例绘制了一个贝塞尔样条:起点为 (0, 0),控制点为 (40, 20) 和 (80, 150),终点为 (100, 10):
myGraphics.DrawBezier(myPen, 0, 0, 40, 20, 80, 150, 100, 10)
myGraphics.DrawBezier(myPen, 0, 0, 40, 20, 80, 150, 100, 10);
下面的插图显示了曲线、控制点和两条切线。
贝塞尔样条最初是由 Pierre Bézier 为汽车行业设计而提出的。 许多类型的计算机辅助设计都证明了它们十分有用,它们也用于定义字体的轮廓。 贝塞尔样条可生成各种各样的形状,下面的插图显示了其中的一部分。