![]() |
TGX 1.0.7
A tiny 2D/3D graphics library optimized for 32 bits microcontrollers.
|
Color classes [RGB565, RGB24, RGB32, RGB64, RGBf, HSV]. More...
#include "Misc.h"#include <stdint.h>#include <math.h>#include <type_traits>#include "Vec3.h"#include "Vec4.h"#include "Color.inl"Go to the source code of this file.
Classes | |
| struct | tgx::RGB565 |
| Color in R5/G6/B5 format. More... | |
| struct | tgx::RGB24 |
| Color in R8/G8/B8 format. More... | |
| struct | tgx::RGB32 |
| Color in R8/G8/B8/A8 format. More... | |
| struct | tgx::RGB64 |
| Color in R16/G16/B16/A16 format. More... | |
| struct | tgx::RGBf |
| Color in R,G,B float format. More... | |
| struct | tgx::HSV |
| Color in H/S/V format [experimental]. More... | |
Functions | |
| RGB565 | tgx::interpolateColorsTriangle (const RGB565 &col1, int32_t C1, const RGB565 &col2, int32_t C2, const RGB565 &col3, const int32_t totC) |
| Interpolate between 3 colors. More... | |
| RGB565 | tgx::interpolateColorsBilinear (const RGB565 &C00, const RGB565 &C10, const RGB565 &C01, const RGB565 &C11, const float ax, const float ay) |
| Bilinear interpolation between 4 colors. More... | |
| RGB565 | tgx::meanColor (RGB565 colA, RGB565 colB) |
| Return the average color between colA and colB. More... | |
| RGB565 | tgx::meanColor (RGB565 colA, RGB565 colB, RGB565 colC, RGB565 colD) |
| Return the average color between 4 colors. More... | |
| RGB24 | tgx::interpolateColorsTriangle (const RGB24 &col1, int32_t C1, const RGB24 &col2, int32_t C2, const RGB24 &col3, const int32_t totC) |
| Interpolate between 3 colors. More... | |
| RGB24 | tgx::interpolateColorsBilinear (const RGB24 &C00, const RGB24 &C10, const RGB24 &C01, const RGB24 &C11, const float ax, const float ay) |
| Bilinear interpolation between 4 colors. More... | |
| RGB24 | tgx::meanColor (const RGB24 &colA, const RGB24 &colB) |
| Return the average color between colA and colB. | |
| RGB24 | tgx::meanColor (const RGB24 &colA, const RGB24 &colB, const RGB24 &colC, const RGB24 &colD) |
| Return the average color between 4 colors. | |
| RGB32 | tgx::interpolateColorsTriangle (const RGB32 &col1, int32_t C1, const RGB32 &col2, int32_t C2, const RGB32 &col3, const int32_t totC) |
| Interpolate between 3 colors. More... | |
| RGB32 | tgx::interpolateColorsBilinear (const RGB32 &C00, const RGB32 &C10, const RGB32 &C01, const RGB32 &C11, const float ax, const float ay) |
| Bilinear interpolation between 4 colors. More... | |
| RGB32 | tgx::meanColor (RGB32 colA, RGB32 colB) |
| Return the average color between colA and colB. | |
| RGB32 | tgx::meanColor (RGB32 colA, RGB32 colB, RGB32 colC, RGB32 colD) |
| Return the average color between 4 colors. | |
| RGB64 | tgx::interpolateColorsTriangle (const RGB64 &col1, int32_t C1, const RGB64 &col2, int32_t C2, const RGB64 &col3, const int32_t totC) |
| Interpolate between 3 colors. More... | |
| RGB64 | tgx::interpolateColorsBilinear (const RGB64 &C00, const RGB64 &C10, const RGB64 &C01, const RGB64 &C11, const float ax, const float ay) |
| Bilinear interpolation between 4 colors. More... | |
| RGB64 | tgx::meanColor (const RGB64 &colA, const RGB64 &colB) |
| Return the average color between colA and colB. | |
| RGB64 | tgx::meanColor (const RGB64 &colA, const RGB64 &colB, const RGB64 &colC, const RGB64 &colD) |
| Return the average color between 4 colors. | |
| RGBf | tgx::interpolate (const RGBf &col1, const RGBf &col2, float alpha) |
| Interpolate between 2 colors. More... | |
| RGBf | tgx::interpolateColorsTriangle (const RGBf &col1, int32_t C1, const RGBf &col2, int32_t C2, const RGBf &col3, int32_t totC) |
| Interpolate between 3 colors. More... | |
| RGBf | tgx::interpolateColorsBilinear (const RGBf &C00, const RGBf &C10, const RGBf &C01, const RGBf &C11, const float ax, const float ay) |
| Bilinear interpolation between 4 colors. More... | |
| RGBf | tgx::meanColor (const RGBf &colA, const RGBf &colB) |
| Return the average color between colA and colB. | |
| RGBf | tgx::meanColor (const RGBf &colA, const RGBf &colB, const RGBf &colC, const RGBf &colD) |
| Return the average color between 4 colors. | |
| HSV | tgx::interpolateColorsTriangle (HSV col1, int32_t C1, HSV col2, int32_t C2, HSV col3, int32_t totC) |
| Interpolate between 3 colors. More... | |
| HSV | tgx::interpolateColorsBilinear (const HSV &C00, const HSV &C10, const HSV &C01, const HSV &C11, const float ax, const float ay) |
| Bilinear interpolation between 4 colors. More... | |
| HSV | tgx::meanColor (const HSV &colA, const HSV &colB) |
| Return the average color between colA and colB. | |
| HSV | tgx::meanColor (const HSV &colA, const HSV &colB, const HSV &colC, const HSV &colD) |
| Return the average color between 4 colors. | |
Variables | |
| const RGB32 | tgx::RGB32_Black |
| Color black in RGB32 format. | |
| const RGB32 | tgx::RGB32_White |
| Color white in RGB32 format. | |
| const RGB32 | tgx::RGB32_Red |
| Color red in RGB32 format. | |
| const RGB32 | tgx::RGB32_Blue |
| Color blue in RGB32 format. | |
| const RGB32 | tgx::RGB32_Green |
| Color green in RGB32 format. | |
| const RGB32 | tgx::RGB32_Purple |
| Color purple in RGB32 format. | |
| const RGB32 | tgx::RGB32_Orange |
| Color orange in RGB32 format. | |
| const RGB32 | tgx::RGB32_Cyan |
| Color cyan in RGB32 format. | |
| const RGB32 | tgx::RGB32_Lime |
| Color lime in RGB32 format. | |
| const RGB32 | tgx::RGB32_Salmon |
| Color salmon in RGB32 format. | |
| const RGB32 | tgx::RGB32_Maroon |
| Color maroon in RGB32 format. | |
| const RGB32 | tgx::RGB32_Yellow |
| Color yellow in RGB32 format. | |
| const RGB32 | tgx::RGB32_Magenta |
| Color majenta in RGB32 format. | |
| const RGB32 | tgx::RGB32_Olive |
| Color olive in RGB32 format. | |
| const RGB32 | tgx::RGB32_Teal |
| Color teal in RGB32 format. | |
| const RGB32 | tgx::RGB32_Gray |
| Color gray in RGB32 format. | |
| const RGB32 | tgx::RGB32_Silver |
| Color silver in RGB32 format. | |
| const RGB32 | tgx::RGB32_Navy |
| Color navy in RGB32 format. | |
| const RGB32 | tgx::RGB32_Transparent |
| premultiplied transparent black (0,0,0,0) | |
| const RGB565 | tgx::RGB565_Black |
| Color black in RGB565 format. | |
| const RGB565 | tgx::RGB565_White |
| Color white in RGB565 format. | |
| const RGB565 | tgx::RGB565_Red |
| Color red in RGB565 format. | |
| const RGB565 | tgx::RGB565_Blue |
| Color blue in RGB565 format. | |
| const RGB565 | tgx::RGB565_Green |
| Color green in RGB565 format. | |
| const RGB565 | tgx::RGB565_Purple |
| Color purple in RGB565 format. | |
| const RGB565 | tgx::RGB565_Orange |
| Color orange in RGB565 format. | |
| const RGB565 | tgx::RGB565_Cyan |
| Color cyan in RGB565 format. | |
| const RGB565 | tgx::RGB565_Lime |
| Color lime in RGB565 format. | |
| const RGB565 | tgx::RGB565_Salmon |
| Color salmon in RGB565 format. | |
| const RGB565 | tgx::RGB565_Maroon |
| Color maroon in RGB565 format. | |
| const RGB565 | tgx::RGB565_Yellow |
| Color yellow in RGB565 format. | |
| const RGB565 | tgx::RGB565_Magenta |
| Color majenta in RGB565 format. | |
| const RGB565 | tgx::RGB565_Olive |
| Color olive in RGB565 format. | |
| const RGB565 | tgx::RGB565_Teal |
| Color teal in RGB565 format. | |
| const RGB565 | tgx::RGB565_Gray |
| Color gray in RGB565 format. | |
| const RGB565 | tgx::RGB565_Silver |
| Color silver in RGB565 format. | |
| const RGB565 | tgx::RGB565_Navy |
| Color navy in RGB565 format. | |
Color classes [RGB565, RGB24, RGB32, RGB64, RGBf, HSV].
|
inline |
Interpolate between 3 colors.
Return the color (C1*col1 + C2*col2 + (totC-C1-C2)*col3) / totC.
|
inline |
Bilinear interpolation between 4 colors.
Return the bilinear interpolation of four neighouring pixels in an image with respect to position X where ax and ay are in [0.0f,1.0f] and represent the distance to the mininum coord. in direction x and y, as illustrated in the drawing below:
Return the average color between colA and colB.
TODO : make it faster
Return the average color between 4 colors.
TODO : make it faster
|
inline |
Interpolate between 3 colors.
Return the color (C1*col1 + C2*col2 + (totC-C1-C2)*col3) / totC.
|
inline |
Bilinear interpolation between 4 colors.
Return the bilinear interpolation of four neighouring pixels in an image with respect to position X where ax and ay are in [0.0f,1.0f] and represent the distance to the mininum coord. in direction x and y, as illustrated in the drawing below:
|
inline |
Interpolate between 3 colors.
Return the color (C1*col1 + C2*col2 + (totC-C1-C2)*col3) / totC.
|
inline |
Bilinear interpolation between 4 colors.
Return the bilinear interpolation of four neighouring pixels in an image with respect to position X where ax and ay are in [0.0f,1.0f] and represent the distance to the mininum coord. in direction x and y, as illustrated in the drawing below:
|
inline |
Interpolate between 3 colors.
Return the color (C1*col1 + C2*col2 + (totC-C1-C2)*col3) / totC.
|
inline |
Bilinear interpolation between 4 colors.
Return the bilinear interpolation of four neighouring pixels in an image with respect to position X where ax and ay are in [0.0f,1.0f] and represent the distance to the mininum coord. in direction x and y, as illustrated in the drawing below:
Interpolate between 2 colors.
Return the color col1 + alpha*(col2 - col1)
|
inline |
Interpolate between 3 colors.
Return the color (C1*col1 + C2*col2 + (totC-C1-C2)*col3) / totC.
|
inline |
Bilinear interpolation between 4 colors.
Return the bilinear interpolation of four neighouring pixels in an image with respect to position X where ax and ay are in [0.0f,1.0f] and represent the distance to the mininum coord. in direction x and y, as illustrated in the drawing below:
|
inline |
Interpolate between 3 colors.
Return the color (C1*col1 + C2*col2 + (totC-C1-C2)*col3) / totC.
|
inline |
Bilinear interpolation between 4 colors.
Return the bilinear interpolation of four neighouring pixels in an image with respect to position X where ax and ay are in [0.0f,1.0f] and represent the distance to the mininum coord. in direction x and y, as illustrated in the drawing below: