繁体   English   中英

为什么CGAffineTransformMakeRotation在Swift中不起作用?

[英]Why does CGAffineTransformMakeRotation not work in Swift?

我发现当我使用CGAffineTransformMakeRotation旋转线时,线没有改变。

这是我的代码:

func drawLine(drawObj:DrawObj) {
        var context = UIGraphicsGetCurrentContext();
        CGContextSaveGState(context);

        CGContextSetStrokeColorWithColor(context, drawObj.drawPara.lineColor.CGColor)
        CGContextSetFillColorWithColor(context, drawObj.drawPara.fillColor.CGColor)
        let originX = drawObj.left - drawObj.currentWidth/2
        let originY = drawObj.top - drawObj.currentHeight/2
        CGContextMoveToPoint(context, originX, originY);
        let toX = originX + drawObj.currentWidth
        let toY = originY + drawObj.currentHeight
        CGContextAddLineToPoint(context, toX, toY);

        CGContextStrokePath(context);
        let roation = CGAffineTransformMakeRotation(CGFloat(Double(drawObj.angle)*M_PI/(180)))
        CGContextConcatCTM(context, roation)
        CGContextRestoreGState(context);
}

因为在绘制直线后旋转了上下文。 如果要将旋转应用于行,请首先旋转上下文。 画完线后就画了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM