gpt4 book ai didi

java - 每秒寻找位置

转载 作者:行者123 更新时间:2023-12-02 06:01:24 26 4
gpt4 key购买 nike

我正在尝试实现随机航路点模型。我对此有一个小小的疑问。随机路点模型统计数据:

随机航路点模型为

使用最广泛的移动模型之一。在标准随机路点模型,每个节点选择一个随机位置作为目的地并以随机选择的速度向目的地移动;到达目的地后,节点会随机暂停一段时间时间量并选择新的目的地并重复流程。

所以我有一个问题。假设随机速度在 0.3-2.5 m/sec 之间。我首先保留一个随机位置为 1,0,下一个目的地为 2,2。

所以,我知道以 1 m/sec 的速度从 1,0 到 2,2 需要 2.4 秒。

但是,我每一秒都需要找到位置。我知道在 2.4 秒时它位于 2,2,但是我怎么知道在 1 秒结束时,位置是什么。

更新:找到了一个解决方案并尝试过,但没有得到答案

I multiplied it with that vector only, but i am not getting any near answer. 


Suppose, I have co-ordinates as: 1,0 and 2,2.



The distance between them is 2.8 m.


It takes 2.8 sec for velocity 1 m/sec. Thus, If I want to find location at 1 sec, then I applied the formula as :



LookLen = sqrt(2^2+1^2)

Distance travelled from 1,0 to 2,2 is 2.4. Thus with velocity =1 m/sec, the time is 2.4 sec. Thus, for t= 1 sec, the distance travelled with same velocity would be 1 m/sec.

Now, calculating the normalized vector. (2,2)-(1,0) = (1,2).

Thus, multiplying with the distance to be travelled :

(1,2) * 1= (1,2)

So, Is (1,2) the new location ??

最佳答案

如果我没记错并且理解正确的话,应该是这样的:

它以恒定速度从(x1,y1)(x2,y2)V,需要t_total code> 秒,并且您想知道 t_cur 秒后您的点的位置

一秒后,位置将是,

x_next = x1 + (x2-x1)/t_total*t_cur;
y_next = y1 + (y2-y1)/t_total*t_cur;

对于您的示例,它将是x_next = 1+1/2.4 = 1.41 & y_next = 0 + 2/2.4=0.81。 1秒后的位置是(1.41,0.81)。

但是,这是几何问题而不是编程等。

更正:点之间的距离可以这样计算:

dist = sqrt((x2-x1)^2 + (y2-y1)^2), 

因此,根据此函数,(1,0) 和 (2,2) 之间的距离为 sqrt(1^2+2^2) = 2.23 * 不是 2.4*。因此,相应地计算我的答案。 不是除以 2.4,而是除以 2.23

关于java - 每秒寻找位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22650404/

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