iOS 混色.....两个颜色过渡,颜色混色算法

来源:互联网 发布:买房子哪个网好 知乎 编辑:程序博客网 时间:2024/04/30 19:23

//混合颜色,ratio 0~1+(UIColor *)mixColor1:(UIColor*)color1 color2:(UIColor *)color2 ratio:(CGFloat)ratio{    if(ratio > 1)        ratio = 1;    const CGFloat * components1 = CGColorGetComponents(color1.CGColor);    const CGFloat * components2 = CGColorGetComponents(color2.CGColor);//    NSLog(@"Red1: %f", components1[0]);//    NSLog(@"Green1: %f", components1[1]);//    NSLog(@"Blue1: %f", components1[2]);//    NSLog(@"Red2: %f", components2[0]);//    NSLog(@"Green2: %f", components2[1]);//    NSLog(@"Blue2: %f", components2[2]);    NSLog(@"ratio = %f",ratio);    CGFloat r = components1[0]*ratio + components2[0]*(1-ratio);    CGFloat g = components1[1]*ratio + components2[1]*(1-ratio);    CGFloat b = components1[2]*ratio + components2[2]*(1-ratio);//    CGFloat alpha = components1[3]*ratio + components2[3]*(1-ratio);        return [UIColor colorWithRed:r green:g blue:b alpha:1];}


0 0
原创粉丝点击