zoukankan      html  css  js  c++  java
  • 颜色渐变的RGB计算

    均匀渐变

        渐变(Gradient)是美学中一条重要的形式美法则,与其相对应的是突变。形状、大小、位置、方向、色彩等视觉因素都可以进行渐变。在色彩中,色相、明度、纯度也都可以产生渐变效果,并会表现出具有丰富层次的美感。本文主要讲述两种颜色RGB数值的渐变算法。

    已知:A=50,B=200,A、B之间平均分成3份(Step=3),求每份的数值(StepN)分别是多少。

    公式:Gradient = A + (B-A) / Step * N

    [注]:编程时为了提高效率避免浮点运算,往往把除法放在最后面,这样公式就成了:Gradient = A + (B-A) * N / Step

        Step=3时,根据公式可以求出Step1=A+(A-B)/3*1=50+(200-50)/3=100,Step2=A+(A-B)/3*2=50+(200-50)/3*2=150。这就是均匀渐变的算法原理了,很简单,小学知识。

        两种颜色的渐变就是对两种颜色的RGB通道分别进行这样的计算,例如两种颜色分别是RGB(200,50,0)和RGB(50,200,0),用上述公式进行计算就是:

    RStep1=RA=RA+(BA-RA)/Step*N=200+(50-200)/3*1=200-50=150

    GStep1=GA=GA+(GA-GA)/Step*N=50+(200-50)/3*1=50+50=100

    BStep1=BA=BA+(BA-BA)/Step*N=0

    因此RGBStep1=(150,100,0),同样的方法可以求出RGBStep2=(100,150,0)。

  • 相关阅读:
    MongoDB监控一 mongostat
    PHP 中 AJAX 中文乱码解决
    php常用的header头
    PHP判断访客是否移动端浏览器访问
    PHP部分字符串函数汇总
    memcached启动参数
    处理PHP中字符串的常用操作及函数
    Linux Top 命令解析
    XML的特殊字符
    Zookeeper学习(转自知乎)
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/5569781.html
Copyright © 2011-2022 走看看