gpt4 book ai didi

c++ - 实现摇动事件?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:53:45 24 4
gpt4 key购买 nike

我正在为游戏制作一个图形用户界面 API,其中一个要求的功能是摇动事件。本质上是一个非常类似于 Windows 7 的 Aero Shake 的事件。当鼠标按下时,如果它单向快速来回移动,则会触发该事件。我只是不确定什么类型的伪代码会进入其中?

最佳答案

我可能会考虑这样的事情:

  1. 总是为鼠标最后一次移动的方向创建一个 vector
  2. 在收集下一个 vector 时,始终记录紧邻的先验 vector (这意味着您始终有两个 vector 需要评估)。
  3. 在每个鼠标输入到达时对两个 vector 进行点积。如果点积为正,则忽略它。如果它是负数,则用它设置一个时间值并存储在一个数组中,该数组最多可存储五个这样的时间戳。
  4. 重复上述顺序。如果时间戳数组有一组连续的时间戳,每个时间戳都相差一些 epsilon,那么你可以假设有人在摇晃什么东西。 :)

关于c++ - 实现摇动事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4150019/

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