在Gridster.js中更新tile位置的算法是什么

时间:2015-10-28 08:01:11

标签: javascript algorithm gridview drag-and-drop gridster

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

有谁知道重新排列瓷砖的算法?

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

1 个答案:

答案 0 :(得分:0)

我累了多一点,按照我的要求制作了网格布局。

这是一个demo link

我将尝试编写一个抽象算法来更新这种类型的平铺布局,

当Drag开始时:

  1. 计算拖动项目的新放置位置,并将拖动项目移动到新位置。
  2. 移动后检查它们是否有任何碰撞。
  3. 如果发生碰撞,则修复碰撞(即将碰撞瓦片向下移动)转到步骤2.
  4. 更新其他瓷砖位置。(例如,如果有空位,可检查是否有任何瓷砖向上移动)