|
Lamp-Da 0.1
A compact lantern project
|
Tools to manipulate colors and their representation. More...
Classes | |
| struct | ToRGB |
| Exposes (r, g, b) as uint8_t in struct from a single uint32_t color. More... | |
Typedefs | |
| using | PaletteTy = std::array< uint32_t, 16 > |
| Palette types. | |
Enumerations | |
| enum | ColorTemperature { Candle = 0xFF9329 , Tungsten40W = 0xFFC58F , Tungsten100W = 0xFFD6AA , Halogen = 0xFFF1E0 , CarbonArc = 0xFFFAF4 , HighNoonSun = 0xFFFFFB , DirectSunlight = 0xFFFFFF , OvercastSky = 0xC9E2FF , ClearBlueSky = 0x409CFF , WarmFluorescent = 0xFFF4E5 , StandardFluorescent = 0xF4FFFA , CoolWhiteFluorescent = 0xD4EBFF , FullSpectrumFluorescent = 0xFFF4F2 , GrowLightFluorescent = 0xFFEFF7 , BlackLightFluorescent = 0xA700FF , MercuryVapor = 0xD8F7FF , SodiumVapor = 0xFFD1B2 , MetalHalide = 0xF2FCFF , HighPressureSodium = 0xFFB74C , UncorrectedTemperature = 0xFFFFFF } |
| Color temperature values. More... | |
| enum | HTMLColorCode { AliceBlue = 0xF0F8FF , Amethyst = 0x9966CC , AntiqueWhite = 0xFAEBD7 , Aqua = 0x00FFFF , Aquamarine = 0x7FFFD4 , Azure = 0xF0FFFF , Beige = 0xF5F5DC , Bisque = 0xFFE4C4 , Black = 0x000000 , BlanchedAlmond = 0xFFEBCD , Blue = 0x0000FF , BlueViolet = 0x8A2BE2 , Brown = 0xA52A2A , BurlyWood = 0xDEB887 , CadetBlue = 0x5F9EA0 , Chartreuse = 0x7FFF00 , Chocolate = 0xD2691E , Coral = 0xFF7F50 , CornflowerBlue = 0x6495ED , Cornsilk = 0xFFF8DC , Crimson = 0xDC143C , Cyan = 0x00FFFF , DarkBlue = 0x00008B , DarkCyan = 0x008B8B , DarkGoldenrod = 0xB8860B , DarkGray = 0xA9A9A9 , DarkGrey = 0xA9A9A9 , DarkGreen = 0x006400 , DarkKhaki = 0xBDB76B , DarkMagenta = 0x8B008B , DarkOliveGreen = 0x556B2F , DarkOrange = 0xFF8C00 , DarkOrchid = 0x9932CC , DarkRed = 0x8B0000 , DarkSalmon = 0xE9967A , DarkSeaGreen = 0x8FBC8F , DarkSlateBlue = 0x483D8B , DarkSlateGray = 0x2F4F4F , DarkSlateGrey = 0x2F4F4F , DarkTurquoise = 0x00CED1 , DarkViolet = 0x9400D3 , DeepPink = 0xFF1493 , DeepSkyBlue = 0x00BFFF , DimGray = 0x696969 , DimGrey = 0x696969 , DodgerBlue = 0x1E90FF , FireBrick = 0xB22222 , FloralWhite = 0xFFFAF0 , ForestGreen = 0x228B22 , Gainsboro = 0xDCDCDC , GhostWhite = 0xF8F8FF , Gold = 0xFFD700 , Goldenrod = 0xDAA520 , Gray = 0x808080 , Grey = 0x808080 , Green = 0x008000 , GreenYellow = 0xADFF2F , Honeydew = 0xF0FFF0 , HotPink = 0xFF69B4 , IndianRed = 0xCD5C5C , Indigo = 0x4B0082 , Ivory = 0xFFFFF0 , Khaki = 0xF0E68C , Lavender = 0xE6E6FA , LavenderBlush = 0xFFF0F5 , LawnGreen = 0x7CFC00 , LemonChiffon = 0xFFFACD , LightBlue = 0xADD8E6 , LightCoral = 0xF08080 , LightCyan = 0xE0FFFF , LightGoldenrodYellow = 0xFAFAD2 , LightGreen = 0x90EE90 , LightGrey = 0xD3D3D3 , LightPink = 0xFFB6C1 , LightSalmon = 0xFFA07A , LightSeaGreen = 0x20B2AA , LightSkyBlue = 0x87CEFA , LightSlateGray = 0x778899 , LightSlateGrey = 0x778899 , LightSteelBlue = 0xB0C4DE , LightYellow = 0xFFFFE0 , Lime = 0x00FF00 , LimeGreen = 0x32CD32 , Linen = 0xFAF0E6 , Magenta = 0xFF00FF , Maroon = 0x800000 , MediumAquamarine = 0x66CDAA , MediumBlue = 0x0000CD , MediumOrchid = 0xBA55D3 , MediumPurple = 0x9370DB , MediumSeaGreen = 0x3CB371 , MediumSlateBlue = 0x7B68EE , MediumSpringGreen = 0x00FA9A , MediumTurquoise = 0x48D1CC , MediumVioletRed = 0xC71585 , MidnightBlue = 0x191970 , MintCream = 0xF5FFFA , MistyRose = 0xFFE4E1 , Moccasin = 0xFFE4B5 , NavajoWhite = 0xFFDEAD , Navy = 0x000080 , OldLace = 0xFDF5E6 , Olive = 0x808000 , OliveDrab = 0x6B8E23 , Orange = 0xFFA500 , OrangeRed = 0xFF4500 , Orchid = 0xDA70D6 , PaleGoldenrod = 0xEEE8AA , PaleGreen = 0x98FB98 , PaleTurquoise = 0xAFEEEE , PaleVioletRed = 0xDB7093 , PapayaWhip = 0xFFEFD5 , PeachPuff = 0xFFDAB9 , Peru = 0xCD853F , Pink = 0xFFC0CB , Plaid = 0xCC5533 , Plum = 0xDDA0DD , PowderBlue = 0xB0E0E6 , Purple = 0x800080 , Red = 0xFF0000 , RosyBrown = 0xBC8F8F , RoyalBlue = 0x4169E1 , SaddleBrown = 0x8B4513 , Salmon = 0xFA8072 , SandyBrown = 0xF4A460 , SeaGreen = 0x2E8B57 , Seashell = 0xFFF5EE , Sienna = 0xA0522D , Silver = 0xC0C0C0 , SkyBlue = 0x87CEEB , SlateBlue = 0x6A5ACD , SlateGray = 0x708090 , SlateGrey = 0x708090 , Snow = 0xFFFAFA , SpringGreen = 0x00FF7F , SteelBlue = 0x4682B4 , Tan = 0xD2B48C , Teal = 0x008080 , Thistle = 0xD8BFD8 , Tomato = 0xFF6347 , Turquoise = 0x40E0D0 , Violet = 0xEE82EE , Wheat = 0xF5DEB3 , White = 0xFFFFFF , WhiteSmoke = 0xF5F5F5 , Yellow = 0xFFFF00 , YellowGreen = 0x9ACD32 , FairyLight = 0xFFE42D , FairyLightNCC = 0xFF9D2A } |
| Define common HTML colors. More... | |
Functions | |
| static constexpr uint8_t | gamma8 (uint8_t value) |
| used for color gamma correction | |
| template<bool PaletteLoops = true, typename UIntTy = uint8_t> | |
| static constexpr uint32_t | from_palette (UIntTy index, const PaletteTy &palette, uint8_t brightness=255) |
| Return a color from a palette. | |
| static constexpr LMBD_INLINE uint32_t | fromRGB (uint8_t r, uint8_t g, uint8_t b) |
| Return color (r, g, b) as a single uint32_t integer. | |
| static constexpr LMBD_INLINE uint32_t | fromGrey (uint32_t w) |
| Return color (w, w, w) as a single uint32_t integer. | |
| static constexpr LMBD_INLINE uint32_t | fromAngleHue (uint16_t angleDegrees) |
| Given a 360 degrees angle, return a corresponding color as an integer. | |
| static uint32_t | blend (uint32_t leftColor, uint32_t rightColor, uint16_t blend, bool b16=false) |
| blend to two colors | |
| template<bool isVideoMode = false> | |
| static uint32_t | fade (uint32_t inputColor, uint8_t fadeAmount) |
| fade the color toward black | |
| template<bool isFast = false> | |
| uint32_t | add (uint32_t c1, uint32_t c2) |
| Add two colors together. | |
Variables | |
| static constexpr PaletteTy | PaletteCloudColors |
| Cloudy color palette/ blue to blue-white. | |
| static constexpr PaletteTy | PaletteLavaColors |
| Lava color palette. | |
| static constexpr PaletteTy | PaletteFlameColors |
| Fire color palette. | |
| static constexpr PaletteTy | PaletteOceanColors |
| Ocean colors, blues and whites. | |
| static constexpr PaletteTy | PaletteWaterColors |
| Water colors, blues. | |
| static constexpr PaletteTy | PaletteForestColors |
| Forest colors, greens. | |
| static constexpr PaletteTy | PaletteRainbowColors |
| HSV Rainbow. | |
| static constexpr PaletteTy | PalettePartyColors |
| basically, HSV with no green. looks better when lighing people | |
| static constexpr PaletteTy | PaletteBlackBodyColors |
| Black body radiation, with the high end changed to be nicer. | |
| static constexpr PaletteTy | PaletteHeatColors |
| Heat black body. | |
| static constexpr PaletteTy | PaletteAuroraColors |
| Palette of green yellow colors. | |
| static constexpr PaletteTy | PalettePapiColors |
| Palette of nice handpicked colors. | |
| template<uint32_t startColor, uint32_t endColor> | |
| static constexpr PaletteTy | PaletteGradient |
Return a palette gradient from startColor to endColor. | |
| static constexpr uint8_t | colorRotation [360] |
| precompiled table for Hue | |
Tools to manipulate colors and their representation.
Color temperature values.
These color values are separated into two groups: black body radiators and gaseous light sources.
Black body radiators emit a (relatively) continuous spectrum, and can be described as having a Kelvin 'temperature'. This includes things like candles, tungsten lightbulbs, and sunlight.
Gaseous light sources emit discrete spectral bands, and while we can approximate their aggregate hue with RGB values, they don't actually have a proper Kelvin temperature.
Define common HTML colors.
|
static |
blend to two colors
| [in] | leftColor | : the first color to use |
| [in] | rightColor | : the second color to use |
| [in] | blend | : the amount of the first color use in the blend |
| [in] | b16 | optional : use b16 for a more |
|
static |
fade the color toward black
if using template "isVideoMode" method the resulting color will never become black unless it is already black
| [in] | inputColor | : the first color to use |
| [in] | fadeAmount | : the second color to use |
|
staticconstexpr |
Return a color from a palette.
| [in] | index | from 0 to 255, the index of color we want from the palette |
| [in] | palette | The palette to sample from. Values are interpolated |
| [in] | brightness | The brighness of the color, default is max at 255 |
|
staticconstexpr |
precompiled table for Hue
|
staticconstexpr |
|
staticconstexpr |
Black body radiation, with the high end changed to be nicer.
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
Forest colors, greens.
|
staticconstexpr |
Return a palette gradient from startColor to endColor.
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
Ocean colors, blues and whites.
|
staticconstexpr |
|
staticconstexpr |
basically, HSV with no green. looks better when lighing people
|
staticconstexpr |