gpt4 book ai didi

javascript - Matter.js 计算所需的力

转载 作者:数据小太阳 更新时间:2023-10-29 04:18:02 26 4
gpt4 key购买 nike

我正在尝试对物体施加力。让它以我的鼠标位置相对于对象生成的 Angular 移动。

我有 Angular

 targetAngle = Matter.Vector.angle(myBody.pos, mouse.position);

现在我需要施加一个力,让 body 沿着那个 Angular 移动。我应该为 applyForce 方法在下面的值中输入什么?

  // applyForce(body, position, force)

Body.applyForce(myBody, {
x : ??, y : ??
},{
x:??, y: ?? // how do I derive this force??
});

我要在此处输入什么 x 和 y 值才能让 body 沿着鼠标和 body 之间的 Angular 移动。

最佳答案

要施加力使物体沿该方向移动,您需要以弧度为单位计算 Angular 正弦和余弦值。您只需将对象的位置作为第一个向量传递,而不应用扭矩(旋转)。

var targetAngle = Matter.Vector.angle(myBody.pos, mouse.position);
var force = 10;

Body.applyForce(myBody, myBody.position, {
x: cos(targetAngle) * force,
y: sin(targetAngle) * force
});

此外,如果您需要,applyForce() 上的文档是 here .

(我知道这个问题很老,我或多或少是为偶然发现它的人做的)

关于javascript - Matter.js 计算所需的力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35827012/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com