将对象移动到另一个对象所在的不同显示组中的位置

我有两个显示组。每个组中都有几个显示对象。每个显示对象都具有唯一的 (x,y) 位置。每个组本身都有唯一的 (x,y) 位置。两个组都有 anchoreChildren = true

我想要做的是,当我点击第一个组中的一个对象时,移动到第二个组中对应对象的位置(同时仍然是其原始组的子元素)。我使用"transition"和 object:localToContent 方法获取目标对象的 (x,y)。

发生的情况是对象移动到"接近"目标位置,而不是准确的位置,总是有一个偏移。

这是我如何移动它的:

local x,y = target:localToContent( 0, 0 )
transition.to( object, {x=x, y=y, time=200} )

基本上我需要做的是: 我需要获取组 2 内对象 2 相对于组 1 内的对象 1 的位置,并将对象 1 移动到那里。 简单的 object2:localToContent 方法不能正常工作,如我所提到的。

点赞
用户6634160
用户6634160

我明白你想做什么。你应该计算物体之间的距离。

看这段代码:

local x1, y1 = object1:localToContent(0, 0)
local x2, y2 = object2:localToContent(0, 0)
transition.to(object2, {x = x1 - x2, y = y1 - y2, time = 200})

这段代码对我有效。

2018-06-05 22:52:50