资源介绍:
Matrix(矩阵) 是个接口, 要通过 GP矩阵 实例化后使用, 其内置了很多方法和属性.
ColorMatrix(颜色矩阵) 只是一个(5*5)的小数数组.
初始化时应该是:
┏ ┓
┃1 0 0 0 0 ┃
┃0 1 0 0 0 ┃
┃0 0 1 0 0 ┃
┃0 0 0 1 0 ┃
┃0 0 0 0 1 ┃
┗ ┛
对角线上的 1 是比例; 应用这个数据后, 目标不会有任何变化.
其中的第 5 行和第 5 列用于辅助运算, 我们主要操作 4*4 的范围; 为便于理解可以这样表示:
┏ ┓
┃rr gr br ar┃
┃rg gg bg ag┃
┃rb gb bb ab┃
┃ra ga ba aa┃
┗ ┛
rr、gg、bb、aa 分别表示红、绿、蓝和透明度的比例; 譬如 aa = 0.5 表示半透明.
第四行的 ra、ga、ba 分别是颜色的增减量; 譬如 ra = 0.1 表示红色增加 10%.
第一列的 rr、rg、rb 分别表示: 红色应用其他颜色的比例; 譬如 rg = 0.5, 那么红色的值将是绿色成分的 50%.
第二列的 gr、gg、gb 分别表示: 绿应用其他颜色的比例.
第三列的 br、bg、bb 分别表示: 蓝色应用其他颜色的比例.
还有一个颜色旋转的概念:
//红色与绿色绕蓝色旋转(其中的 f 是弧度, 弧度 = 角度 * Pi / 180):
┏ ┓
┃ 余弦(f) 正弦(f) br ar┃
┃ -正弦(f) 余弦(f) bg ag┃
┃ rb gb bb ab┃
┃ ra ga ba aa┃
┗ ┛
//绿色与蓝色绕红色旋转:
┏ ┓
┃rr gr br ar┃
┃rg 余弦(f) 正弦(f) ag┃
┃rb -正弦(f) 余弦(f) ab┃
┃ra ga ba aa┃
┗ ┛
//红色与蓝色绕绿色旋转:
┏ ┓
┃ 余弦(f) gr 正弦(f) ar┃
┃ -正弦(f) gg 余弦(f) ag┃
┃ rb gb bb ab┃
┃ ra ga ba aa┃
┗ ┛
资源作者:
资源下载:
易语言图片颜色分析
易语言图片源码
易语言矩阵