qualpal 2.3.0
Loading...
Searching...
No Matches
qualpal.h File Reference

Qualpal API for generating qualitative color palettes. More...

#include <map>
#include <optional>
#include <qualpal/colors.h>
#include <qualpal/metrics.h>
#include <vector>
Include dependency graph for qualpal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  qualpal::Qualpal
 Builder for qualitative color palette generation. More...
 

Namespaces

namespace  qualpal
 Qualitative color palette generation library.
 

Enumerations

enum class  qualpal::ColorspaceType { HSL , LCHab }
 Supported cylindrical color spaces for input colors. More...
 

Detailed Description

Qualpal API for generating qualitative color palettes.

This file defines the Qualpal class, which provides a builder-style interface for configuring and generating maximally distinct color palettes using perceptual color difference in DIN99d color space. The API supports multiple input formats, color vision deficiency simulation, and flexible configuration options.

Usage example:

qp.setInputRGB(rgb_colors)
.setCvd(cvd_params)
.setMetric(metric)
auto palette = qp.generate(n);
Builder for qualitative color palette generation.
Definition qualpal.h:62
Qualpal & setInputRGB(const std::vector< colors::RGB > &colors)
Set input colors from a vector of RGB values.
Qualpal & setMetric(metrics::MetricType metric)
Set the color difference metric to use.
std::vector< colors::RGB > generate(std::size_t n)
Generate a qualitative color palette with the configured options.
Qualpal & setMemoryLimit(double gb)
Set the maximum memory limit (in GB) for color difference matrix.
Qualpal & setBackground(const colors::RGB &bg_color)
Set the background color for palette generation.
Qualpal & setCvd(const std::map< std::string, double > &cvd_params)
Set color vision deficiency simulation parameters.

Definition in file qualpal.h.