寫一點(diǎn)關(guān)于圖層繪制的方法

純粹代碼,方便以后查看

 // - 畫筆顏色:綠色
        ctx.setStrokeColor(red: 0, green: 0, blue: 1, alpha: 1)
        
        /*
        // - 繪制一個(gè)矩形
        // - 設(shè)置填充顏色為藍(lán)色
        ctx.setFillColor(red: 0, green: 0, blue: 1, alpha: 1)
        // - 畫筆顏色:綠色
        ctx.setStrokeColor(red: 0, green: 1, blue: 0, alpha: 1)
        // - 設(shè)置邊框?qū)挾?        ctx.setLineWidth(10)
        // - 添加一個(gè)跟圖層一樣大的矩形到路徑中
        ctx.addRect(layer.bounds)
        // - 繪制路徑
        // - 顏色問題:
        // - 如果是描邊,應(yīng)該使用setStrokeColor設(shè)置顏色,使用strokePath繪制
        // - 如果是填充,應(yīng)該使用setFillColor設(shè)置顏色,使用fillPath繪制
        ctx.fillPath()//strokePath()
         */
        
        /*
        // - 繪制一條直線
        // - 移動到起點(diǎn)
        ctx.move(to: CGPoint(x: 0, y: 50))
        // - 繪制到指定點(diǎn)
        ctx.addLine(to: CGPoint(x: 50, y:100))
        // - 繪制完成
        ctx.strokePath()
         */
        
        /*
        // - 繪制一個(gè)圓
        ctx.addEllipse(in: CGRect(x: 0, y: 0, width: 100, height: 100))
        // - 關(guān)閉路徑(繪制完成)
        ctx.strokePath()
         */
        
        /*
        // - 繪制弧形
        // - 各參數(shù)分別是:
        // - center:圓心的坐標(biāo)
        // - radius:半徑
        // - startAngle:起始的弧度
        // - endAngle:圓弧結(jié)束的弧度
        // - clockwise:true為順時(shí)針,false為逆時(shí)針
        ctx.addArc(center: CGPoint(x: 40, y:50), radius: 30, startAngle: CGFloat(M_PI/2), endAngle: 0, clockwise: true)
        ctx.drawPath(using: CGPathDrawingMode.stroke)
        */
        
        /*
        // - 繪制橢圓
        ctx.addEllipse(in: CGRect(x: 50, y: 50, width: 30, height: 50))
        ctx.drawPath(using: CGPathDrawingMode.fillStroke)
        */
        
        // - 貝塞爾曲線
        // - 二次曲線
        // - 設(shè)置起點(diǎn)
        ctx.move(to: CGPoint(x: 50, y: 50))
        // - 設(shè)置貝塞爾曲線的控制點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo)
        ctx.addQuadCurve(to: CGPoint(x:200,y:100), control: CGPoint(x: 50, y: 200))
        //ctx.strokePath()
        
        // - 三次曲線
        ctx.move(to: CGPoint(x: 50, y: 50))
        // - 設(shè)置貝塞爾曲線的控制點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo)
        ctx.addCurve(to: CGPoint(x:200,y:100), control1: CGPoint(x:0,y:0), control2: CGPoint(x:40,y:150))
        ctx.strokePath()

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容