Processing

PythonでProcessing curvePoint() 曲線上の点/制御点を取得する

点 a, b, c, d について、点 t における曲線を評価する。

パラメータ t は、0(曲線の始点)から 1(曲線の終点)までの範囲で指定できる。

a および d は曲線上の点、b および c は制御点。これは、tにおける曲線の位置を得るために、x座標で1回、y座標で2回目に使用することができる。

# 構文
# curvePoint(a, b, c, d, t)
#
# パラメータ
# a float: 曲線上の1番目の点の座標
# b float: 曲線上の2番目の点の座標
# c float: 曲線上の3番目の点の座標
# d float: 曲線上の4番目の点の座標
# t float: 0と1の間の値
noFill()
curve(5, 26, 5, 26, 73, 24, 73, 61)
curve(5, 26, 73, 24, 73, 61, 15, 65)
fill(255)
ellipseMode(CENTER)
steps = 6
for i in range(steps):
    t = i / float(steps)
    x = curvePoint(5, 5, 73, 73, t)
    y = curvePoint(26, 26, 24, 61, t)
    ellipse(x, y, 5, 5)
    x = curvePoint(5, 73, 73, 15, t)
    y = curvePoint(26, 24, 61, 65, t)
    ellipse(x, y, 5, 5)