Gridster.js 中更新图块位置的算法是什么

what is the algorithm for updating tile position in Gridster.js

Gridster.js 允许拖放可变​​大小的图块并在拖动一个图块时重新排列图块。

有人知道重新排列图块的算法吗?

我想在动作脚本中制作这种类型的网格布局,我对 Javascript 不太熟悉,我已经尝试阅读代码但不理解大部分内容,所以如果有人可以给我算法我将尝试使用动作脚本实现逻辑。

累了点,按照我的要求做了个网格布局

这是一个demo link

我会尝试编写一个抽象算法来更新这种类型的图块布局,

随着拖动开始的时间:

  1. 计算拖动项的新放置位置并将拖动项移动到新位置。
  2. 检查移动后是否有碰撞
  3. 如果发生碰撞,修复碰撞(即向下移动碰撞块)转到步骤 2。
  4. 更新其他方块位置。(即检查是否有空方块可以向上移动space)