小编Con*_*ent的帖子

如何在关节周围旋转精灵

我需要让手臂和手围绕钩子的中心旋转,如下图所示,没有它们分开或改变它们的形状(手臂和手之间的角度没有变化,只是在A处旋转),如下图所示:

在此输入图像描述

我尝试旋转手臂,但这使它们分开并改变形状.您可以在下面查看我的代码:

let hookCategoryName = "hook"
let leftArmCategoryName = "leftArm"
let rightArmCategoryName = "rightArm"
let leftHandCategoryName = "leftHand"
let rightHandCategoryName = "rightHand"

let hookCategory             : UInt32 = 0x1 << 0
let leftArmCategory            : UInt32 = 0x1 << 1
let rightArmCategory           : UInt32 = 0x1 << 2
let leftHandCategory           : UInt32 = 0x1 << 3
let rightHandCategory          : UInt32 = 0x1 << 4

extension Int {
  var degreesToRadians: Double { return Double(self) * .pi / 180 }
}
extension FloatingPoint { …
Run Code Online (Sandbox Code Playgroud)

rotation sprite-kit skphysicsjoint swift

7
推荐指数
1
解决办法
213
查看次数

如何从数组中找到最远的3个连续元素

我有一系列可能的位置和另一个填充位置数组,这是一个子阵列possiblePositionsArray.possiblePositionsArray是固定的,已经确定.我想在所选数组元素的x位置的右侧和左侧找到最远的3个连续点filledPositions.让我用这个例子进一步解释.说

possiblePositionsArray = [p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15]
filledPositions = [p1, p2, p4, p7, p8, p9, p10, p12, p13, p14, p15]
Run Code Online (Sandbox Code Playgroud)

两者都是CGPoints的数组,并且都具有相同的y位置并且按升序排列.如果我选择p11.x以下将是右侧和左侧的3个连续点.

[p7, p8, p9] and [p8, p9, p10] To the Left of p11
[p12, p13, p14] and [p13, p14, p15] to the right of p11
Run Code Online (Sandbox Code Playgroud)

但是左边和右边最远的是:

farthest to left of p11 is [p7, p8, p9]
farthest to right of …
Run Code Online (Sandbox Code Playgroud)

arrays swift swift3

5
推荐指数
1
解决办法
211
查看次数

标签 统计

swift ×2

arrays ×1

rotation ×1

skphysicsjoint ×1

sprite-kit ×1

swift3 ×1