我有一个 SKSpriteNode,它是一个等边三角形的图像,我想将它的锚点设置在三角形的质心,这样我就可以让它平滑旋转并保持在中心。我已经用下面的代码计算了质心,但这些位置是相对于场景的,所以我不确定如何将它转换为锚点的准确小数(0 到 1 之间)。
let XA = triangle.position.x - (triangle.size.width / 2) // left point
let XB = triangle.position.x // top point
let XC = triangle.position.x + (triangle.size.width / 2) // right point
let YA = triangle.position.y - (triangle.size.height / 2) // left point
let YB = triangle.position.y + (triangle.size.height / 2) // top point
let YC = triangle.position.y - (triangle.size.height / 2) // right point
let triCenterX = (XA + XB + XC) / 3.0
let triCenterY = (YA + YB + YC) / 3.0
let centroid = CGPointMake(triCenterX, triCenterY) // 207.0, 412.65
// triangle.anchorPoint = CGPoint(x: , y: )
我不确定我是否在正确的轨道上或从这里去哪里,也许我需要以不同的方式做到这一点?任何帮助将不胜感激,谢谢。