Java “基本”弹丸轨迹

Java “基本”弹丸轨迹,java,math,projectile,Java,Math,Projectile,我试图在Java中重建投射物的轨迹,但是,我在某些方面遇到了困难。我看过很多解释公式和其他东西的视频,但他们的等式中有一个目标,而我没有。我的意思是,他们有一个范围来计算他们的子弹落下,但我试图计算出子弹最终会落下多少 我目前的工作是: dropDistance = (9,807 / 2) * t² 我不是数学家,我真的被困在这个问题上,我不知道如何在目标范围未知的情况下实现它。它应该在三维空间x,y,z中工作,但我认为公式中只需要y?这是一个简单的物理问题 你需要从牛顿第二运动定律开始。你听

我试图在Java中重建投射物的轨迹,但是,我在某些方面遇到了困难。我看过很多解释公式和其他东西的视频,但他们的等式中有一个目标,而我没有。我的意思是,他们有一个范围来计算他们的子弹落下,但我试图计算出子弹最终会落下多少

我目前的工作是:

dropDistance = (9,807 / 2) * t²

我不是数学家,我真的被困在这个问题上,我不知道如何在目标范围未知的情况下实现它。它应该在三维空间x,y,z中工作,但我认为公式中只需要y?

这是一个简单的物理问题

你需要从牛顿第二运动定律开始。你听说过,但重要的是,这有三个方程,因为力和加速度是向量:

force = mass*acceleration
从两个维度开始简化您的问题。在这种情况下,这是两个等式:

Fx = m*ax = 0 (no force in x-direction; ignore drag)
Fy = m*ay = -m*g
解决ay问题:

ay = -g = constant (9.8 m/sec^2)
你从微积分中知道,ay=dvy/dt,vy=duy/dt。积分两次以获得位置uy作为时间的函数:

uy = -(g*t^2)/2 + c0*t + c1
您还需要用户体验:

两次集成:

ux = c2*t + c3
替换初始条件以计算常数


停止观看视频并阅读物理简介文本。

不适合这样做,请使用数学堆栈交换!你不能简单地用子弹的重量来计算给定的子弹离地面的距离吗?我们可以用公式s=u*t-0.5*a*t*t来计算从原点的垂直位移,给定u-初始垂直速度,t,经过的时间,和a,在这种情况下-9.8米/秒/秒-假设你试图在地球上重建轨道。你可以在2维或3维空间中重复这一点,在2维或3维空间中得到一个点。我投票结束这个问题,因为应该在Math上。我用a写了一个答案,在这里可能会有所帮助:还有一个稍微高级一点的答案,请注意,你有一个不同寻常的习惯,y轴朝下。你说得很对。我应该把加速标志改成负值。我会修好的。
ux = c2*t + c3