博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AGG第五课 RGB颜色定义
阅读量:5742 次
发布时间:2019-06-18

本文共 723 字,大约阅读时间需要 2 分钟。

   混合器的存在是为了适应不同平台、不同需求下的不同像素格式。混合器有三种:agg::rgbaagg::rgba8agg::rgba16,都是用来指定颜色的,rgba每个通道储存为doublergba8unsigned charrgba16intlong int;混合器起到的作用就像Win32API里的RGBCOLORREF宏。

针对agg::rgba特别说明:每一个分量虽然使用double类型保存,但是实际上,取值区间是[0,1],agg::rgba8每一个分量的取值是[0,255]

头文件#include "agg_pixfmt_rgba.h"

类型定义

struct rgba8; //对,你没有看错,是结构,不是类……

基本成员函数

rgba8(unsigned r, unsigned g, unsigned b,unsigned a)

       无须解释了吧,最大255

clear(), no_color()

       四个通道全部清零,也就是变没色咯;

transparent()

       alpha清零,变透明;

opacity()

       返回透明度,用double表示;

gradient(agg::rgba8 &c, double k)

       颜色梯度,就是颜色变为从原先的颜色渐变为c,变化率为k

add(agg::rgba8 &c, unsinged cover)

       颜色叠加,叠加一个透明度为cover/255的颜色c

成员变量

 

r, g, b, a都是无符号整型;

     本文转自fengyuzaitu 51CTO博客,原文链接:http://blog.51cto.com/fengyuzaitu/1961156,如需转载请自行联系原作者

你可能感兴趣的文章
Proxy服务器配置_Squid
查看>>
nagios在apache上安装配置
查看>>
开启“无线网络”,提示:请启动windows零配置wzc服务
查看>>
【SDN】Openflow协议中对LLDP算法的理解--如何判断非OF区域的存在
查看>>
纯DIV+CSS简单实现Tab选项卡左右切换效果
查看>>
栈(一)
查看>>
LINUX档案权限
查看>>
数据结构及算法基础--优先队列(Priority Queue)
查看>>
C#使用Timer.Interval指定时间间隔与指定时间执行事件
查看>>
最浅显易懂的数据库索引讲解
查看>>
tcp/ip基础知识
查看>>
你必须非常努力,才能看起来毫不费力[转载]
查看>>
js遍历集合
查看>>
姑娘你大胆地往前走——答大二学生XCL之八问
查看>>
UVA196
查看>>
ios 自定义delegate(一)
查看>>
创建美国地区的appleId
查看>>
例题10-2 UVa12169 Disgruntled Judge(拓展欧几里德)
查看>>
[c语言]c语言中的内存分配[转]
查看>>
JS 原生ajax写法
查看>>