Swift 中 SKShapeNode 的浮点问题
Floating point issue with SKShapeNode in Swift
我目前遇到了一个奇怪的浮点问题。谁能解释一下?
import SpriteKit
let height: CGFloat = 20.0
let width: CGFloat = 150.0
let shapeNode: SKShapeNode = SKShapeNode(rectOf: CGSize(width: width, height: height))
print(shapeNode.frame.size.width, shapeNode.frame.size.height) //152.6999969482422 22.700000762939453
这就是你想要的:
import SpriteKit
let height: CGFloat = 20.0
let width: CGFloat = 150.0
let shapeNode: SKShapeNode = SKShapeNode(rectOf: CGSize(width: width, height: height))
shapeNode.isAntialiased = false
shapeNode.lineWidth = 0
print(shapeNode.frame.size.width, shapeNode.frame.size.height) // 150.0 20.0\n
记住:https://developer.apple.com/documentation/spritekit/skshapenode
... is that shapes are rasterized dynamically at runtime to produce crisp detail and smoother edges.
我目前遇到了一个奇怪的浮点问题。谁能解释一下?
import SpriteKit
let height: CGFloat = 20.0
let width: CGFloat = 150.0
let shapeNode: SKShapeNode = SKShapeNode(rectOf: CGSize(width: width, height: height))
print(shapeNode.frame.size.width, shapeNode.frame.size.height) //152.6999969482422 22.700000762939453
这就是你想要的:
import SpriteKit
let height: CGFloat = 20.0
let width: CGFloat = 150.0
let shapeNode: SKShapeNode = SKShapeNode(rectOf: CGSize(width: width, height: height))
shapeNode.isAntialiased = false
shapeNode.lineWidth = 0
print(shapeNode.frame.size.width, shapeNode.frame.size.height) // 150.0 20.0\n
记住:https://developer.apple.com/documentation/spritekit/skshapenode
... is that shapes are rasterized dynamically at runtime to produce crisp detail and smoother edges.