fabric.js:object:在PathGroup中选择

时间:2011-12-05 09:03:17

标签: javascript html5-canvas fabricjs

不好意思, 我在fabric.js中使用PathGroup时遇到问题。我将三个对象添加到PathGroup并将此PathGroup添加到画布。然后我观察对象:选择的事件。当用户选择三个对象中的一个时,我无法分辨e.memo.target选择了哪一个(它引用了这个PathGroup对象)。我使用PathGroup,因为它更方便移动对象。我的示例代码如下:

canvas.observe('object:selected', function(e) {

              var objs = e.memo.target.getObjects();

              for(var i=0; i<objs.length; i++){
                  ...                    
                }
              }
            });  

感谢您的帮助! html5starter

1 个答案:

答案 0 :(得分:0)

我认为这样的事情可能有用(如果你使用&gt; = 0.7.1),但它没有:/

如果您使用常规对象操作,而不是PathGroup中的那些(因为它们遵循略微不同的规则 - 相对于组本身进行渲染,并且它们的坐标也相对于组),这将起作用。

canvas.observe('object:selected', function(e) {
  for (var objects = e.memo.target.getObjects(), i = objects.length; i--; ) {
    objects[i].setCoords();
    if (canvas.containsPoint(e.memo.e, objects[i])) {
      console.log(objects[i])  
    }
  }
});