我正在做Swift中的iOS應用程序。我想顯示蘋果音樂泡泡的佈局。下面的代碼工作正常,以顯示佈局,但是,我想顯示六角形佈局,而不是圓形氣泡。如何從SpriteKit框架中從SKPhysicsBody獲取六角形形狀
任何人都可以建議/指導我,如何顯示六邊形佈局而不是圓形佈局。
在磁性類:
func configure() {
physicsWorld.gravity = CGVector(dx: 0, dy: 0)
physicsBody = SKPhysicsBody(edgeLoopFrom: {() -> CGRect in
var frame = self.frame
frame.size.width = CGFloat(magneticField.minimumRadius)
frame.origin.x -= frame.size.width/2
return frame
}())
let strength = Float(max(size.width, size.height))
let radius = strength.squareRoot() * 100
magneticField.region = SKRegion(radius: radius)
magneticField.minimumRadius = radius
magneticField.strength = strength
magneticField.position = CGPoint(x: size.width/2, y: size.height/2)
}
在節點類:
public init(text: String?, image: UIImage?, color: UIColor, radius: CGFloat) {
super.init(circleOfRadius: radius)
self.physicsBody = {
let body = SKPhysicsBody(circleOfRadius: radius + 2)
body.allowsRotation = false
body.friction = 0
body.linearDamping = 3
return body
}()
self.fillColor = .white
self.strokeColor = .white
_ = self.sprite
_ = self.text
configure(text: text, image: image, color: color)
}
你的代碼對我們沒有任何幫助,你只顯示一個物理體和一個磁場 – Knight0fDragon
@ Knight0fDragon我也加了Node類的代碼,你能檢查一下,並且提供任何建議來獲得六角形嗎?謝謝 –