color_scheme.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef PAPYRUSSCHEME_H
00021 #define PAPYRUSSCHEME_H
00022
00023 #include <vector>
00024
00025 #include <papyrus/hsba.h>
00026
00027 namespace Papyrus
00028 {
00029
00030 typedef std::vector<HSBA> Colors;
00031
00032 Colors primary_colors(double saturation=1.0, double brightness=1.0);
00033
00034 Colors secondary_colors(double saturation=1.0, double brightness=1.0);
00035
00036 Colors primary_secondary_colors(double saturation=1.0, double brightness=1.0);
00037
00038 Colors tertiary_colors(double saturation=1.0, double brightness=1.0);
00039
00040 Colors rgb_color_wheel(unsigned bands=24, double saturation=1.0, double brightness=1.0);
00041
00042 Colors complements(const HSBA& color);
00043
00044 Colors complements(const Colors& colors);
00045
00046 Colors split_complements(const HSBA& color, double split=24.0);
00047
00048 Colors split_complements(const Colors& colors, double split=24.0);
00049
00050 Colors triads(const HSBA& color);
00051
00052 Colors triads(const Colors& colors);
00053
00054 Colors tetrads(const HSBA& color, double offset=-60.0);
00055
00056 Colors tetrads(const Colors& colors, double offset=-60.0);
00057
00058 Colors analogous(const HSBA& color, unsigned size=3, double offset=-30.0);
00059
00060 Colors analogous(const Colors& colors, unsigned size=3, double offset=-30.0);
00061
00063 Colors tints(const HSBA& color,
00064 unsigned size=5,
00065 double offset=-0.2,
00066 double start=1.0
00067 );
00068
00069 Colors tints(const Colors& colors,
00070 unsigned size=5,
00071 double offset=-0.2,
00072 double start=1.0
00073 );
00074
00076 Colors shades(const HSBA& color,
00077 unsigned size=5,
00078 double offset=-0.2,
00079 double start=1.0
00080 );
00081
00082 Colors shades(const Colors& colors,
00083 unsigned size=5,
00084 double offset=-0.2,
00085 double start=1.0
00086 );
00087
00089 Colors tones(const HSBA& color,
00090 unsigned size=5,
00091 double offset=-0.2,
00092 double start=1.0
00093 );
00094
00095 Colors tones(const Colors& colors,
00096 unsigned size=5,
00097 double offset=-0.2,
00098 double start=1.0
00099 );
00100
00102 Colors monochromatic(const HSBA& color,
00103 unsigned size=3,
00104 double offset=-0.5,
00105 double start=1.0
00106 );
00107
00108 Colors monochromatic(const Colors& colors,
00109 unsigned size=3,
00110 double offset=-0.5,
00111 double start=1.0
00112 );
00113
00114
00115 HSBA complement(const HSBA& color, double offset);
00116
00117 HSBA hue_offset(const HSBA& color, double offset);
00118
00119
00120 }
00121
00122 #endif