有人告诉我使用距离公式来找出颜色是否匹配另一个我所拥有的,
struct RGB_SPACE
{
float R, G, B;
};
RGB_SPACE p = (255, 164, 32); //pre-defined
RGB_SPACE u = (192, 35, 111); //user defined
long distance = static_cast<long>(pow(u.R - p.R, 2) + pow(u.G - p.G, 2) + pow(u.B - p.B, 2));
Run Code Online (Sandbox Code Playgroud)
这给出了一个距离,但我怎么知道颜色是否与用户定义相匹配至少25%?
我不确定,但我有一个想法,检查每个颜色值,看看差异是否为25%.例如.
float R = u.R/p.R * 100;
float G = u.G/p.G * 100;
float B = u.B/p.B * 100;
if (R <= 25 && G <= 25 && B <= 25)
{
//color matches with pre-defined color.
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3280 次 |
| 最近记录: |