我基本上有一个矩形,顶部有一个PointText项目。我目前有一个工作示例,我可以使用paperjs-v0.9.23 \ examples \ Paperjs.org \ HitTesting.html中的示例代码在画布上移动项目,这些代码非常有用。但是,我想将矩形和文本视为一个要移动的逻辑分组。
请参阅以下链接,了解我的意思:
http://jsfiddle.net/svt9wa9f/6/
在HitTesting.html示例中,它在onMouseDown事件中有这个:`
if (hitResult)
{
path = hitResult.item;
if (hitResult.type == 'segment')
{
segment = hitResult.segment;
} else if (hitResult.type == 'stroke')
{
var location = hitResult.location;
segment = path.insert(location.index + 1, event.point);
path.smooth();
}
}
`
我希望我可以修改它以使用这些组,但似乎这种类型的hitesting不起作用。每次我点击任何对象,我都会得到'填充'类型。所以我当时认为我必须通过执行hittest的组数组进行线性搜索才能看到哪个项目在组内。或者是项目的hashmap keyd,以及作为组的值。但必须有一个更简单的方法吗?
在小提琴示例中,组代码被注释掉,因为。当您第一次执行它时,您无法看到项目,您必须悬停画布的鼠标指针才能显示它们。任何有关这方面的帮助将不胜感激。
理想情况下,我只需要能够通过拖动事件移动这些组,并扩展代码以便能够在拖动时确定我是否在另一个分组上。但这更进一步。
感谢您的时间。