P5Vector.rotate

def setup
  background(220)
  v = createVector(10.0, 20.0)
  rotated_v = P5Vector.rotate(v, HALF_PI)
  text(rotated_v.toString, 10, 20, 70)
end
def setup
  @angle = 0
end

def draw
  background(240)
  v0 = createVector(50, 50)
  v1 = createVector(50, 0)
  drawArrow(v0, P5Vector.rotate(v1, @angle), 'black')
  @angle += 0.01
end

# draw an arrow for a vector at a given base position
def drawArrow(base, vec, myColor)
  push do
    stroke(myColor)
    strokeWeight(3)
    fill(myColor)
    translate(base.x, base.y)
    line(0, 0, vec.x, vec.y)
    rotate(vec.heading)
    arrowSize = 7
    translate(vec.mag - arrowSize, 0)
    triangle(0, arrowSize / 2, 0, -arrowSize / 2, arrowSize, 0)
  end
end

p5.jsリファレンス(参考情報)

[p5.js] rotate

概要

あるベクトルを指定した角度で回転させたベクトルを生成します。

書式

p5.Vector.rotate(v, angle [, target])

引数

引数名内容備考オプションデフォルト値
vベクトルp5.Vectorオブジェクト
angle回転角度angleModeの設定に依存
target回転結果収録用ベクトルp5.Vectorオブジェクト

戻値

回転後のベクトル
(p5.Vectorオブジェクト)

備考

関連

(p5.Vector.obj).rotate