我有一些CGPoint數組,如下面的方法所示。我試圖爲我的精靈過濾一個位置,該位置按照所述順序向下,向左,向上和向右循環移動。如何從數組中隨機選擇一個數組(向下,向左等),然後從所選數組中隨機選擇一個點,並記錄數組,以便當再次調用該方法時,將使用以下組進行生成(遵循循環順序)。例如,因爲down是循環中的第一個,所以隨機選擇一個「向下數組」,如果說,選擇down2,那麼應該從down2隨機選擇一個點,比如p5。下一次調用此方法時,應遵循「左數組」等相同的過程。這似乎相當複雜。如何從數組中隨機篩選和選擇CGPoint
func nextPosition()->CGPoint {
let down1 = [p1, p2]
let down2 = [p3, p4, p5]
let left1 = [p6, p7]
let left2 = [p8, p9, p10]
let left3 = [p11, p12, p13]
let up1 = [p14, p15]
let up2 = [p16, p17]
let up3 = [p18, p19]
let right1 = [p20, p21]
let right2 = [p22, p23]
let right3 = [p24, p25]
let right4 = [p26, p27, p28, p29, p30]
//return point
}
追加第一個數組應該是'up1'而不是'up11'。會建議編輯,但它只有一個字符。 –
對不起,錯字,我修好了。 –
此功能也適用於從每個單點中選擇一個隨機變量,但不會按順序返回4個不同點(從下向上,向左,向上和向右)。 –