如何从颜色名称获取RGB值?

问题描述

我需要根据用户给定的数据/颜色/秒获取颜色的rgb值。目前,我有一张地图,其中有一些颜色名称作为键,而rgb值作为值。但是使用rgb值,可以有大约255 255 255种颜色。由于我的程序中没有所有这些颜色的映射。我正在寻找更好的解决方案,以允许用户输入至少一半的颜色。我已经阅读了一些CSS框架,以了解我的问题。但是我什么都不知道。

这是我当前正在使用的代码。

std::unordered_map<std::string,sim_vector_t> COLOR_OPTION{
            {"red",{1,0}},{"green",{0,1,{"blue",1}},{"yellow",10}},{"white",{"orange",0.5,0}}};

sim_vector_t LightControlModule::ColorValueExtraction(const std::string& colorTransition)
{
    auto ptr = COLOR_OPTION.find(colorTransition);
    if (ptr != COLOR_OPTION.end())
    {
        return ptr->second;
    }
    else
    {
        ROS_WARN(" Given state transition is not defined");
        return {0,0};
    }
}

目前,上面的代码仅适用于有限数量的颜色,正如我上面解释的那样,我需要一种数据库类的东西才能拥有所有rgb有效颜色。

  1. 有没有办法使之成为可能?
  2. 有没有可以在我的代码中集成或使用的开源库?
  3. 是否可以将CSS动画框架集成到我的c ++代码中,以实现上述所需?

谢谢。

解决方法

查看此package

那里有1566种颜色

此插件中颜色的原始source

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...