gpt4 book ai didi

java - 设置处理 vector 的恒定速度

转载 作者:行者123 更新时间:2023-12-02 05:04:00 25 4
gpt4 key购买 nike

我在处理过程中有一个 vector 跟随鼠标点击:

friendlies.get(i).setXSpeed((friendlies.get(i).getmx()-friendlies.get(i).getX())/100);

friendlies.get(i).setYSpeed((friendlies.get(i).getmy()-friendlies.get(i).getY())/100);

friendlies.get(i) 是 vector ,getmx() 返回鼠标单击时的位置。唯一的问题是,随着 vector 接近目的地,速度会降低,我不知道如何使速度恒定。

最佳答案

尝试这样的事情:

  • 1)获取方向 vector (从元素到鼠标点击)
  • 2)将此方向 vector 归一化为单位 vector
  • 3)使用这个单位 vector 作为速度(您可以将其乘以某个常数因子)

    PVector pos = friendlies.get(i);

    // direction vector
    PVector dir = new PVector(mouseX - pos.x, mouseY - pos.y);

    // now it becomes unit-vector (with length 1)
    dir.normalize();

    pos.x = pos.x + dir.x * factor;
    pos.y = pos.y + dir.y * factor;

关于java - 设置处理 vector 的恒定速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27965142/

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