假如Layer S·在Layer D上面,则最终的屏幕的颜色值如下:
\[R = S + D \cdot (1- S_\alpha)\]
\(R\): 最终的RGB

\(S\): source color,顶层的颜色,已经经过相乘

\(D\): destination color,底层的颜色,已经经过相乘

设顶层颜色用RGB表示是\((r_s,g_s,b_s,\alpha _s)\),底层颜色用RGB表示是\((r_d, g_d, b_d, \alpha_d)\),则\[S=(r_s \cdot \alpha_s, g_s \cdot \alpha_s, b_s \cdot \alpha_s)\]\[D=(r_d \cdot \alpha_d, g_d \cdot \alpha_d, b_d \cdot \alpha_d)\]
于是\[\begin{align*}
R &= S + D \cdot (1 - \alpha_s) \\
&= (r_s\cdot\alpha_s+(1-\alpha_s)\cdot(r_d\cdot\alpha_d), g_s\cdot\alpha_s+(1-\alpha_s)\cdot(g_d\cdot\alpha_d), b_s\cdot\alpha_s+(1-\alpha_s)\cdot(b_d\cdot\alpha_d))
\end{align*}
\]

最新文章

  1. PAT 1004. 成绩排名 (20) JAVA
  2. mybatis 分页
  3. -XX:+TraceClassLoading 监控类的加载
  4. find只查当前目录 和 -exec和xargs区别
  5. CSS 初体验之一
  6. 百度——LBS.云 v2.0——创建自己的地理云数据
  7. [Angular 2] Transclusion in Angular 2
  8. B'day Gift
  9. 查询linux版本命令
  10. 草料Chrome浏览器插件,让二维码更好用
  11. 想进大厂,想收获高薪offer,资深猎头告诉你怎么做......
  12. /bin, /sbin & /usr/bin, /usr/sbin & /usr/local/bin, /usr/local/sbin & glibc
  13. redis安全问题【原】
  14. angular2架构详解
  15. 使用Nginx转发TCP/UDP数据
  16. ajax请求json数据跨域问题(转)
  17. 【nodejs】理想论坛帖子下载爬虫1.08
  18. kmeans聚类源代码
  19. Codeforces450 B. Jzzhu and Sequences (找规律)
  20. GCD死锁,及同步、异步、串行和并行队列组合情形

热门文章

  1. Hibernate中Session与本地线程绑定
  2. SpringBoot Actuator & SpringBoot Admin
  3. loadrunner添加load generator连接失败解决办法
  4. Python正则表达式的七个使用范例-乾颐堂
  5. python3--json反序列化
  6. mysql-day01
  7. java轻量级IOC框架Guice(转)
  8. [ASP.NET MVC 小牛之路]03 - Razor语法(转)
  9. HDU 5119 Happy Matt Friends(DP || 高斯消元)
  10. Ubuntu下安装配置java及环境变量