尝试使用 p5.js 库移植我在 javascript 中制作的东西,该库具有用于 2D 向量的 setMag 函数
如何在 ROBLOX/lua 中设置二维向量的大小?
function particle:update(mouseX,mouseY)
local t=(Vector2.new(mouseX,mouseY)-(self.pos)).unit.setMag(self.acc)
self.thrust=t
self.vel = self.vel + self.thrust
if self.vel.magnitude>self.maxspeed then
self.vel.unit.setMag(self.maxspeed)
end
self.pos=self.pos+(self.vel)
self.frame.Position=UDim2.new(0,self.pos.x,0,self.pos.y)
end
最佳答案
让我们的向量分量是vx, vy
。它的电流大小是
Mag = Math.Sqrt(vx * vx + vy * vy)
//as Piglet noticed in comment, you can use magnitude property
要使向量具有相同的方向但改变大小,只需将分量乘以大小的比率:
new_vx = vx * New_Mag / Mag
new_vy = vy * New_Mag / Mag
关于math - 设置二维向量的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41317291/