(p5vector).setMag

(別名: (p5vector).set_mag)

def draw 
  background(240)
  v0 = createVector(0, 0)
  v1 = createVector(50, 50)
  drawArrow(v0, v1, 'red')
  length = map(mouseX, 0, width, 0, 141, true)
  v1.setMag(length)
  drawArrow(v0, v1, 'blue')
  noStroke
  text(format("magnitude set to: %.2f", length), 10, 70, 90, 30)
end

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] (p5.Vector.obj).setMag

概要

ベクトルの大きさを設定します。

書式

obj.setMag(len)

引数

引数名内容備考オプションデフォルト値
len長さ

戻値

obj (メソッドを呼び出した p5vectorオブジェクト自身)

備考

・ベクトルの角度(向き)は変わりません。

関連