Quartz2D-图形的画法

扇形

1获取上下文,2设置线得宽度,3给出圆的中点,半径,起始角度,和最终角度,顺逆时针方向,4在给出中点,5闭合(6可以设置颜色填充,根据需要),以上步骤可以完成扇形的图形;

 

曲线

1获取上下文,2设置线得宽度,3给出起始点,4给出结束点(获取上下文,第一个位置的弯曲点, 第一个位置的弯曲度, 第二个位置的弯曲点, 第二个位置的弯曲度,, 终点的x坐标, 终点的y坐标)5渲染;

渐变

-(void)drawcolor

{  //获取上下文

    CGContextRef a = UIGraphicsGetCurrentContext();

    //给出颜色和空间

    CGColorSpaceRef rgb= CGColorSpaceCreateDeviceRGB();

    CGFloat colors[]={

        204.0 / 255.0, 254.0 / 255.0, 274.0 / 295.0, 1.00,

        29.0 / 255.0, 156.0 / 255.0, 215.0 / 255.0, 1.00,

        0.0 / 255.0,  50.0 / 255.0, 126.0 / 255.0, 1.00,

    };

       //创建彩色花园

    CGGradientRef gradient = CGGradientCreateWithColorComponents

    (rgb, colors, NULL, sizeof(colors)/(sizeof(colors[0])*4));

    

    //色彩空间释放

    CGColorSpaceRelease(rgb);

    //绘制线性梯度

    CGContextDrawLinearGradient(a, gradient,CGPointMake(0.0,0.0) ,CGPointMake(0.0,self.frame.size.height),kCGGradientDrawsBeforeStartLocation);

 

}

通过控件slider画圆

关键点,将控件与圆弧度的进度联系起来,利用值将其连接,首先设置slider的最大最小值,将其与云的弧度建立联系,可以利用NSuerdefaults,

// 使用NSUserDefaults 去存值,取值

{   NSUserDefaults *user = [NSUserDefaults standardUserDefaults];

    //由于需要slider控件去控制,所以M_PI*[str doubleValue]值需要根据控件的滑动而变化;

    NSString *str = [user valueForKey:@"value"];

    CGContextRef context = UIGraphicsGetCurrentContext();

    CGContextAddArc(context, 180, 200, 90, 0, M_PI*[str doubleValue],0);

    CGContextSetLineWidth(context, 4);

    [[UIColor yellowColor] set];

    CGContextStrokePath(context);

}

以上是一部分代码如有需要了解的可私聊,留言即可;

转载于:https://my.oschina.net/u/2893293/blog/737985

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值