【问题标题】:KineticJS: make multiple clones be draggable as a Kinetic.GroupKineticJS:使多个克隆可作为 Kinetic.Group 拖动
【发布时间】:2014-04-07 19:29:39
【问题描述】:

如何使克隆作为一个整体可以拖动?

我有两层:第一层包含一些项目(动态图像和矩形),第二层是放置区。我想做的是:

  • 将图像放到矩形边框内,
  • 然后在第一次放下项目后,当我单击一个矩形时,所有项目都被拖动到Kinetic.Group 中的那个矩形,所以显然我必须进行命中测试

有点像http://jsfiddle.net/7BkR7/1/,但是克隆了大矩形。我受到这个示例的启发,但未能将其适应我的解决方案。我真的不清楚,我需要建议和帮助。

【问题讨论】:

    标签: draggable kineticjs


    【解决方案1】:

    以下是克隆组及其包含的所有节点的方法:

    layer.add( anyContainerGroup.clone({draggable:true} );
    

    要制作可拖动的容器组,请执行与小矩形相同的操作

    • 使您的蓝色、绿色和金色描边的容器不可拖动(它们是“原件”)

    • 为每个直接放置在原始容器之上的容器创建一个克隆(克隆是可拖动的)

    • 当一个小矩形被拖放到克隆容器中时,将该小矩形添加到该克隆容器中

    • 可以将克隆容器(包括任何包含的小矩形)拖到您的放置区。

    【讨论】:

    • 嗨@mar​​kE,这就是我迄今为止所做的jsfiddle.net/v778S/3。添加检测图层上的矩形并添加到组的代码行会产生一些错误,例如更改放置目标,此外,它不会检测交叉点。 (见控制台)
    • 我做到了 :) 我只是忘记设置我正在操作的 Kinetic.Group 的宽度和高度!干杯!
    猜你喜欢
    • 2013-04-09
    • 1970-01-01
    • 1970-01-01
    • 2018-07-25
    • 1970-01-01
    • 2015-03-25
    • 1970-01-01
    • 1970-01-01
    • 2011-08-28
    相关资源
    最近更新 更多