貝塞爾曲線

屬性

  1. CGPathRef CGPath
    將UIBezierPath類轉(zhuǎn)換成CGPath
  2. BOOL empty
    只讀屬性,路徑上是否有有效元素
  3. CGRect bounds
    獲取path的X坐標(biāo)、Y坐標(biāo)、寬度,高度為0
  4. CGPoint currentPoint
    當(dāng)前path的位置
  5. CGFloat lineWidth
    path的寬度
  6. CGLineCap lineCapStyle
    端點(diǎn)樣式
    kCGLineCapButt:無端點(diǎn)
    kCGLineCapRound:圓形端點(diǎn)
    kCGLineCapSquare:方形端點(diǎn)
  7. CGLineJoin lineJoinStyle
    拐角樣式
    kCGLineJoinMiter:尖角
    kCGLineJoinRound:圓角
    kCGLineJoinBevel:缺角
  8. CGFloat miterLimit
    最大斜接長度(只有在使用kCGLineJoinMiter是才有效),邊角的角度越小,斜接長度就會越大
  9. CGFloat flatness
    彎曲路徑的渲染精度,默認(rèn)為0.6,越小精度越高,相應(yīng)的更加消耗性能。
  10. BOOL usesEvenOddFillRule
    單雙數(shù)圈規(guī)則是否用于繪制路徑,默認(rèn)是NO

畫各種圖形圖形方法

  1. 移動(dòng)到某一點(diǎn)
    - (void)moveToPoint:(CGPoint)point;
  2. 繪制一條線
    - (void)addLineToPoint:(CGPoint)point;
  3. 創(chuàng)建3次貝塞爾曲線
    - (void)addCurveToPoint:(CGPoint)endPoint controlPoint1:(CGPoint)controlPoint1 controlPoint2:(CGPoint)controlPoint2;
  4. 創(chuàng)建二次貝塞爾曲線
    - (void)addQuadCurveToPoint:(CGPoint)endPoint controlPoint:(CGPoint)controlPoint;
  5. 畫一段圓弧
    - (void)addArcWithCenter:(CGPoint)center radius:(CGFloat)radius startAngle:(CGFloat)startAngle endAngle:(CGFloat)endAngle clockwise:(BOOL)clockwise
    各個(gè)參數(shù)的意義:
    center:圓心的坐標(biāo)
    radius:半徑
    startAngle:起始的弧度
    endAngle:圓弧結(jié)束的弧度
    clockwise:YES為順時(shí)針,No為逆時(shí)針
  6. 關(guān)閉路徑,在起點(diǎn)和終點(diǎn)連一條線
    - (void)closePath;
  7. 清空路徑
    - (void)removeAllPoints;
  8. 追加路徑
    - (void)appendPath:(UIBezierPath *)bezierPath
  9. 扭轉(zhuǎn)路徑,起點(diǎn)終點(diǎn)轉(zhuǎn)換
    - (UIBezierPath *)bezierPathByReversingPath
  10. 路徑進(jìn)行仿射變換:
    - (void)applyTransform:(CGAffineTransform)transform
  11. 繪制虛線
    - (void)setLineDash:(nullable const CGFloat *)pattern count:(NSInteger)count phase:(CGFloat)phase
    參數(shù)
    pattern->C類型線性數(shù)據(jù)
    count->pattern中數(shù)據(jù)個(gè)數(shù)
    phase-> 起始位置
  12. 填充
    - (void)fill
  13. 描邊
    - (void)stroke
  14. 設(shè)置描邊的顏色
    [[UIColor blackColor] setStroke];
  15. 設(shè)置描邊的混合模式
    - (void)fillWithBlendMode:(CGBlendMode)blendMode alpha:(CGFloat)alpha
    參數(shù):
    blendMode->混合模式 alpha->透明度
  16. 設(shè)置填充的混合模式
    - (void)strokeWithBlendMode:(CGBlendMode)blendMode alpha:(CGFloat)alpha;
  17. 修改當(dāng)前圖形上下文的繪圖區(qū)域可見,隨后的繪圖操作導(dǎo)致呈現(xiàn)內(nèi)容只有發(fā)生在指定路徑的填充區(qū)域
    - (void)addClip

參考文檔:http://www.itdecent.cn/p/7c03f7e9ed57

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容