0
我正在尝试创建一个EaselJS应用程序,它可以让我拖动画布周围的未填充圆圈 - 因此,在设置Shape
时,我不打电话beginFill
,我会打电话给beginStroke
。我遇到了如果我不填充形状的问题,我只能在选择形状的左上角时拖动它。当形状被填充时,我可以通过选择形状内的任何位置来拖动它。有没有办法让未填充的形状像填充的形状一样拖动?拖动没有填充的形状
我正在尝试创建一个EaselJS应用程序,它可以让我拖动画布周围的未填充圆圈 - 因此,在设置Shape
时,我不打电话beginFill
,我会打电话给beginStroke
。我遇到了如果我不填充形状的问题,我只能在选择形状的左上角时拖动它。当形状被填充时,我可以通过选择形状内的任何位置来拖动它。有没有办法让未填充的形状像填充的形状一样拖动?拖动没有填充的形状
EaselJS中的面具需要冲程和填充。然而,你可以指定一个其他Shape
为hitArea
:
var shape = new createjs.Shape();
shape.graphics.beginFill("#000000").drawCircle(0, 0, 40);
draggableCircle.hitArea = shape;
请记住,hitArea- Shape
没有被添加到舞台上,因此将不可见。
你试过用透明色填充它吗?我从来没有专门使用过EasyJS,但是过去曾为我工作的其他库。 – 2015-04-06 00:08:29
不幸的是,拖动EaselJS使用鼠标不透明度来确定命中测试(就像所有的鼠标交互一样)。尽管可以使用1%或2%的不透明度,但填充完全透明不起作用。 @derz提出的hitArea解决方案是最好的选择。 – Lanny 2015-04-06 17:17:44