📜  节点 | GM drawBezier()函数(1)

📅  最后修改于: 2023-12-03 15:11:48.984000             🧑  作者: Mango

GM drawBezier()函数

简介

GM drawBezier()函数是一种绘制Bezier曲线的函数,Bezier曲线是一种平滑曲线,可以用来绘制自由曲线、曲面等等,GM drawBezier()函数是GM (GameMaker Studio 2)引擎自带的函数。

语法

draw_bezier(x1, y1, x2, y2, x3, y3, x4, y4, [num_points, closed])

参数说明:

  • x1:Bezier曲线起点 x 坐标
  • y1:Bezier曲线起点 y 坐标
  • x2:Bezier曲线第一个控制点 x 坐标
  • y2:Bezier曲线第一个控制点 y 坐标
  • x3:Bezier曲线第二个控制点 x 坐标
  • y3:Bezier曲线第二个控制点 y 坐标
  • x4:Bezier曲线终点 x 坐标
  • y4:Bezier曲线终点 y 坐标
  • num_points:Bezier曲线上的点数(可选,默认为 32
  • closed:是否封闭Bezier曲线(可选,默认为 false
代码示例
//绘制一条简单的二次Bezier曲线
draw_bezier(100, 50, 150, 100, 200, 50, 250, 100);

示例图片

//绘制一条复杂的三次Bezier曲线
draw_bezier(50, 200, 150, 100, 300, 300, 400, 200, 64, true);

示例图片

注意事项
  • Bezier曲线的平滑程度与控制点的位置有关,通常需要进行多次试验才可以得到令人满意的效果。
  • closed 参数为 true 时可以将Bezier曲线闭合成为一个封闭图形。
  • 不要在 draw 事件中使用该函数,应该在 draw_end 事件中使用,否则绘制可能会被其它对象覆盖。