2
长故事简介我想在CALayerShape上绘制对角网格。我的代码而不是直线产生某种弯曲的疯狂。它看起来非常有趣,我希望它会是想要的效果,但不,它不是。使用CAShapeLayer绘图网格
我的问题: 1.如何使用CAShapeLayer绘制直线? 2.我在模拟器中发现了一些影响像素重心的黑洞吗?
func drawPath(_view:UIView, phase:CGFloat, segment:CGFloat){
// we need two runs
var height = CGRectGetHeight(view.frame)
let width = CGRectGetWidth(view.frame)
let segment:CGFloat = 40
var currentX:CGFloat = segment
var cgpath = CGPathCreateMutable()
for var y = height; y > 0 ; y = y - segment {
CGPathMoveToPoint(cgpath, nil, 0, y)
CGPathAddLineToPoint(cgpath, nil, currentX, 0)
CGPathCloseSubpath(cgpath)
currentX += segment
}
var layer = CAShapeLayer()
layer.path = cgpath
layer.strokeColor = UIColor.redColor().CGColor
layer.lineWidth = 1
layer.fillColor = UIColor.blackColor().CGColor
view.layer.addSublayer(layer)
}
谢谢。我意识到我的代码并没有渲染完美的网格,并且修复了它,但却不知道这是光学错觉! –