android 分区渲染,Android 颜色渲染(二) 颜色区域划分原理与实现思路

本文探讨了颜色选择器的工作原理,指出无论选择器形态如何,基本都由七种颜色组成。由于特定的颜色组合,导致默认的色环无法选择黑白。为实现黑白选择,需要增加黑白渐变参数,并在绘制时单独处理。同时,介绍了模糊效果的创建,它是正常七段颜色与黑白渐变的结合。文章建议对颜色处理感兴趣的人参考RGB、HSL和HSV色彩空间的资料以深入了解。
摘要由CSDN通过智能技术生成

上一篇讲到颜色选择器,该demo不能选择黑白或者具体区间颜色,这是为什么呢,还是要从原理部分讲起,首先看一下两张图:

cea43c39fd3e9cbeffb8f0940468f85a.png           图1                   

a01dfc773d147f464e75c4a5bf726401.png图2

看一下这两张图,有什么相似的地方么,其实在第二张图中已经标记地很明显了,无论这个选择器以什么样的图形展现,是圆形选择器也好,线性或者画板选择器也好,其实都是由七种颜色进行组成:

R,RG,G,GB,B,BR,R

它们对应的进制颜色值为 0xFFFF0000, 0xFFFF00FF, 0xFF0000FF, 0xFF00FFFF, 0xFF00FF00, 0xFFFFFF00, 0xFFFF0000

看到这个值我们是不是很熟悉,在apidemos中图1 所示的渐变色圆环怎么初始化的呢:

mColors = new int[] {//渐变色数组

0xFFFF0000, 0xFFFF00FF, 0xFF0000FF, 0xFF00FFFF, 0xFF00FF00,

0xFFFFFF00, 0xFFFF0000

};

没错,实际上这个渐变色圆环也是由这七段颜色组成,所以这个demo是没办法选择黑白色的

怎么加入黑白色呢,这里我说下大概思路:

1.   首先要有黑白渐变的参数: 0xFF000000,0xFFFFFFFF

2.  绘制圆环或者颜色板时留出黑白色块区域单独进行绘制

eb5793a99ea1639cbc11a910fb88e344.png图3

再看一张图:

c1222fdab6cdad592c7a0e53b6839d4e.png图4

这张七彩图又有了一种模糊的感觉,这种效果又是怎么实现的呢,相信很多人已经猜到了,这种效果就是图2和图3综合绘制出来的图形(正常七段颜色图加上黑白颜色渐变)

其实关于颜色选择器呢,最经典的还是在PS 中的调色板应用,这里我只是做一些简单的原理性描述,

有想深入研究的童鞋,可以看下 Wiki百科上关于RGB,  HSL和HSV色彩空间的介绍. 以及AS3调色板算法, 相信会对颜色处理方面有很大的帮助,

以下附上对应的链接:

维基百科:

三原色光模型:

HSL和HSV色彩空间:

AS3调色板算法:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值