C++ 在cpp中创建颜色变化
我有一个给定的颜色,并希望创造它的色调,饱和度和亮度方面的变化 我发现了一个网页,它以我喜欢的方式创建了变体(请参阅)。然而,我并不完全理解这些变化是如何为任意颜色创建的。从这个主页上考虑创建的变体可以看出,单独更改HSL值来创建变体似乎是不够的 因此,我想问,是否有人知道创建这些变体的方法,或者理想情况下,是否知道在我自己的程序中采用这种颜色变体创建的代码和平 <我使用C++和QT. 谢谢你的帮助, 马克C++ 在cpp中创建颜色变化,c++,qt,colors,variation,C++,Qt,Colors,Variation,我有一个给定的颜色,并希望创造它的色调,饱和度和亮度方面的变化 我发现了一个网页,它以我喜欢的方式创建了变体(请参阅)。然而,我并不完全理解这些变化是如何为任意颜色创建的。从这个主页上考虑创建的变体可以看出,单独更改HSL值来创建变体似乎是不够的 因此,我想问,是否有人知道创建这些变体的方法,或者理想情况下,是否知道在我自己的程序中采用这种颜色变体创建的代码和平
编辑:谢谢你的回复!实际上,给定主页的变化实际上只会以10%的步长分别改变HSL值。在我的程序的颜色选择器中将这些值与HSV值进行比较后,我感到很困惑。您阅读了有关的文档了吗 QColor类本身提供了大量有用的函数,可以以您能想到的任何方式操纵颜色,文档本身也解释了一些基本的颜色理论 从这个主页上考虑创建的变体可以看出,单独更改HSL值来创建变体似乎是不够的 真的吗?界面似乎很清楚它所做的修改。您可以选择“色调”、“饱和度”或“亮度”,它在该通道上显示9种变化。以下MATLAB脚本将以类似的方式绘制不同的变化(尽管在HSV颜色空间中,而不是HSL中) 使用“黄花”样品颜色,如下所示:
colorwheel('daa520', 9);
我得到:
第一行是色调变化,第二行是饱和度变化,第三行是值变化。输出与不完全对应,但这可以通过颜色空间的差异和排列中使用的精确值来解释。界面给人的印象是,只有亮度、饱和度或值被修改。此外,color minder应用程序为每个生成的颜色提供十六进制颜色代码。您是否检查了HSL颜色空间中这些颜色代码的进度?
colorwheel('daa520', 9);