vcg.vertex.Color
是VCGLIB库中定义的一个类,代表顶点颜色,提供了颜色相关的方法和属性。
Color()
构造函数,创建一个默认颜色为黑色的顶点颜色对象。
Color(const T & _r, const T & _g, const T & _b)
构造函数,创建一个指定颜色的顶点颜色对象。
参数:
_r
:红色分量的值,范围为[0, 255]。_g
:绿色分量的值,范围为[0, 255]。_b
:蓝色分量的值,范围为[0, 255]。static Color Interpolate(const Color &c1, const Color &c2, float alpha)
静态方法,计算两个颜色之间的插值颜色。
参数:
c1
:要插值的第一个颜色。c2
:要插值的第二个颜色。alpha
:插值因子,范围为[0,1],表示颜色c1的权重,颜色c2的权重为1-alpha。返回值:插值后的颜色对象。
float Luminance()
方法,计算该颜色的亮度值。
返回值:亮度值,范围为[0,1],每个分量的权重为0.299、0.587和0.114。
vcg.vertex.Color
类的属性可以直接访问和修改。
T r
、T g
、T b
三个属性分别代表了颜色的红、绿、蓝分量,值的范围为[0, 255]。
vcg::Color4b color1(255, 0, 0); // 创建一个红色颜色对象
vcg::Color4b color2(0, 255, 0); // 创建一个绿色颜色对象
vcg::Color4b color3; // 创建一个默认颜色(黑色)颜色对象
vcg::Color4b color1(255, 0, 0); // 创建一个红色颜色对象
vcg::Color4b color2(0, 255, 0); // 创建一个绿色颜色对象
vcg::Color4b interpolatedColor = vcg::Color4b::Interpolate(color1, color2, 0.5f); // 计算红色和绿色的平均颜色(黄色)
vcg::Color4b color(255, 128, 0); // 创建一个橙色颜色对象
float luminance = color.Luminance(); // 计算颜色的亮度值