zoukankan      html  css  js  c++  java
  • UIBezierPath贝塞尔曲线的常用方法总结

    1、根据一个矩形画曲线

    + (UIBezierPath *)bezierPathWithRect:(CGRect)rect

    2、根据矩形框的内切圆画曲线

    + (UIBezierPath *)bezierPathWithOvalInRect:(CGRect)rect

    3、根据矩形画带圆角的曲线

    + (UIBezierPath *)bezierPathWithRoundedRect:(CGRect)rect cornerRadius:(CGFloat)cornerRadius

    4、在矩形中,可以针对四角中的某个角加圆角, 一般用于设置某个视图的顶端两角为圆形

    + (UIBezierPath *)bezierPathWithRoundedRect:(CGRect)rect byRoundingCorners:(UIRectCorner)corners cornerRadii:(CGSize)cornerRadii

    参数:

    corners:枚举值,可以选择某个角

    cornerRadii:圆角的大小

     
    5、以某个中心点画弧线 
     + (UIBezierPath *)bezierPathWithArcCenter:(CGPoint)center radius:(CGFloat)radius startAngle:(CGFloat)startAngle endAngle:(CGFloat)endAngle clockwise:(BOOL)clockwise;

    参数:

    center:弧线中心点的坐标

    radius:弧线所在圆的半径

    startAngle:弧线开始的角度值

    endAngle:弧线结束的角度值

    clockwise:是否顺时针画弧线

    6、画二元曲线,一般和moveToPoint配合使用

    - (void)addQuadCurveToPoint:(CGPoint)endPoint controlPoint:(CGPoint)controlPoint

    参数:

    endPoint:曲线的终点

    controlPoint:画曲线的基准点

    7、以三个点画一段曲线,一般和moveToPoint配合使用

    - (void)addCurveToPoint:(CGPoint)endPoint controlPoint1:(CGPoint)controlPoint1 controlPoint2:(CGPoint)controlPoint2

    参数:

    endPoint:曲线的终点

    controlPoint1:画曲线的第一个基准点

    controlPoint2:画曲线的第二个基准点

  • 相关阅读:
    PAT 1037. 在霍格沃茨找零钱(20)
    PAT 1036. 跟奥巴马一起编程(15)
    Topcoder SRM633 DIV2 解题报告
    HDU 4565 So Easy! 矩阵快速幂 + 共轭数
    HDU 2256 Problem of Precision 矩阵快速幂 + 共轭数
    FZU 1683 纪念SlingShot 矩阵快速幂
    CodeForces 185A Plant 矩阵快速幂
    HDU 2604 Queuing 矩阵快速幂
    HDU 1575 Tr A 矩阵快速幂
    HDU 1757 A Simple Math Problem 矩阵快速幂
  • 原文地址:https://www.cnblogs.com/easonoutlook/p/3055388.html
Copyright © 2011-2022 走看看