加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
distinctcolorgenerator.h 1.04 KB
一键复制 编辑 原始数据 按行查看 历史
JiuZhou 提交于 2021-05-08 13:03 . init repository
#ifndef UNIQUECOLORGENERATOR_H
#define UNIQUECOLORGENERATOR_H
#include <vector>
class DistinctColorGenerator
{
public:
/**
* @brief RGB to Lab color Model, both range is [0,255]
*/
static std::vector<int> Rgb2Lab(int r, int g, int b);
static std::vector<std::vector<int>> Rgb2Lab(const std::vector<std::vector<int>>& colors);
/**
* @brief RGB to Lab color Model, both range is [0,255]
*/
static std::vector<int> Lab2Rgb(int l, int a, int b);
static std::vector<std::vector<int>> Lab2Rgb(const std::vector<std::vector<int>>& colors);
/**
* @brief generate giving count distinguishable colors from background colors,
* default background is white
* @param rgb color Model, range [0,255]
* @return rgb color Model, range [0,255]
*/
static std::vector<std::vector<int>> genUniqueColors(int count,
std::vector<std::vector<int>> backgroundColors = std::vector<std::vector<int>> {{255, 255, 255}});
private:
DistinctColorGenerator() = delete;
};
#endif // UNIQUECOLORGENERATOR_H
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化