changePos(changeNode, endNode) {
let a = changeNode.parent.convertToWorldSpaceAR(changeNode.position)
return endNode.parent.convertToNodeSpaceAR(a);
}
这是比较直接的A节点转移到与B节点同个坐标系的相对坐标
例如 A--B--C--puke
A的有子节点B,B有子节点C,C有子节点puke
当我们需要获取 D节点在相对A节点下的坐标时,
一般是 子节点的 y轴坐标 乘以 子节点相对父节点的y轴缩放倍数 + 父节点的y轴坐标 = 子节点相对父节点相对父节点的坐标
var x = puke.x * puke.parent.scaleX + puke.parent.x ;
var y = puke.y * puke.parent.scaleY + puke.parent.y ;
此时的 x,y轴坐标就是 A--B--puke puke 的坐标了
缩放倍数同理
var scale_y =puke.scaleY *puke.parent.scaleY ;
var scale_x =puke.scaleX *puke.parent.scaleX ;
一般子节点坐标都是相对父节点坐标,即以父节点为0 ;
此法可用于 预制体 加载时的节点位置的获取,以及动作的位置获取
如果对你有帮助记得点赞啊