Ocean
|
This class implements canvas functions. More...
Data Structures | |
class | Comfort |
The following comfort class provides comfortable functions simplifying prototyping applications but also increasing binary size of the resulting applications. More... | |
class | FilterFactors |
This class implements a helper class that provides binomial filter parameters for a specific filter size. More... | |
class | Font |
This class implements a standard font similar to a code-block like font. More... | |
Static Public Member Functions | |
static const uint8_t * | white (const FrameType::PixelFormat pixelFormat=FrameType::FORMAT_RGB24) |
Returns the color values for a white color. More... | |
static const uint8_t * | black (const FrameType::PixelFormat pixelFormat=FrameType::FORMAT_RGB24) |
Returns the color values for a black color. More... | |
static const uint8_t * | gray (const FrameType::PixelFormat pixelFormat=FrameType::FORMAT_RGB24) |
Returns the color values for a gray color. More... | |
static const uint8_t * | red (const FrameType::PixelFormat pixelFormat=FrameType::FORMAT_RGB24) |
Returns the color values for a red color. More... | |
static const uint8_t * | green (const FrameType::PixelFormat pixelFormat=FrameType::FORMAT_RGB24) |
Returns the color values for a green color. More... | |
static const uint8_t * | blue (const FrameType::PixelFormat pixelFormat=FrameType::FORMAT_RGB24) |
Returns the color values for a blue color. More... | |
static const uint8_t * | yellow (const FrameType::PixelFormat pixelFormat=FrameType::FORMAT_RGB24) |
Returns the color values for a yellow color. More... | |
static bool | line (Frame &frame, const int xStart, const int yStart, const int xEnd, const int yEnd, const uint8_t *value=nullptr) |
Paints a line with specified start and end position with pixel accuracy. More... | |
static bool | lines (Frame &frame, const PixelPosition *positions, const unsigned int numberPositions, const uint8_t *value=nullptr) |
Paints several lines with specified start and end positions with pixel accuracy. More... | |
template<unsigned int tChannels> | |
static void | line8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const int xStart, const int yStart, const int xEnd, const int yEnd, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints a line with specified start and end position with pixel accuracy. More... | |
template<unsigned int tChannels> | |
static void | lines8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const PixelPosition *positions, const unsigned int numberPositions, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints several lines with specified start and end positions with pixel accuracy. More... | |
template<unsigned int tSize> | |
static bool | line (Frame &frame, const Scalar xStart, const Scalar yStart, const Scalar xEnd, const Scalar yEnd, const uint8_t *value=nullptr) |
Paints a line with specified start and end position with sub-pixel accuracy. More... | |
template<unsigned int tChannels, unsigned int tSize> | |
static void | line8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const Scalar xStart, const Scalar yStart, const Scalar xEnd, const Scalar yEnd, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints a line with specified start and end position with sub-pixel accuracy. More... | |
template<unsigned int tSize> | |
static bool | line (Frame &frame, const Vector2 &start, const Vector2 &end, const uint8_t *value=nullptr) |
Paints a line with specified start and end position with sub-pixel accuracy. More... | |
template<unsigned int tChannels, unsigned int tSize> | |
static void | line8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const Vector2 &start, const Vector2 &end, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints a line with specified start and end position with sub-pixel accuracy. More... | |
template<unsigned int tSize> | |
static bool | line (Frame &frame, const FiniteLine2 &line, const uint8_t *value=nullptr) |
Paints a finite line with sub-pixel accuracy. More... | |
template<unsigned int tSize> | |
static bool | lines (Frame &frame, const FiniteLines2 &lines, const uint8_t *value=nullptr) |
Paints several finite lines with sub-pixel accuracy. More... | |
template<unsigned int tChannels, unsigned int tSize> | |
static void | line8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const FiniteLine2 &line, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints a finite line with sub-pixel accuracy. More... | |
template<unsigned int tSize> | |
static bool | line (Frame &frame, const Line2 &line, const uint8_t *value=nullptr) |
Paints an infinite line with sub-pixel accuracy. More... | |
template<unsigned int tSize> | |
static bool | lines (Frame &frame, const Lines2 &lines, const uint8_t *value=nullptr) |
Paints several infinite lines with sub-pixel accuracy. More... | |
template<unsigned int tChannels, unsigned int tSize> | |
static void | line8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const Line2 &line, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints an infinite line with sub-pixel accuracy. More... | |
template<unsigned int tSize> | |
static bool | box (Frame &frame, const Box2 &box, const uint8_t *value=nullptr) |
Paints a 2D axis aligned bounding box with sub-pixel accuracy. More... | |
template<unsigned int tChannels, unsigned int tSize> | |
static void | box8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const Box2 &box, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints a 2D axis aligned bounding box with sub-pixel accuracy. More... | |
static bool | ellipse (Frame &frame, const PixelPosition &position, const unsigned int horizontal, const unsigned int vertical, const uint8_t *value=nullptr) |
Paints an ellipse at a specified position with specified size. More... | |
template<unsigned int tChannels> | |
static void | ellipse8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const PixelPosition &position, const unsigned int horizontal, const unsigned int vertical, const uint8_t *value=nullptr, const unsigned int paddingElements=0u) |
Paints an ellipse at a specified position with specified size. More... | |
static bool | rotatedEllipse (Frame &frame, const PixelPosition &position, const unsigned int horizontal, const unsigned int vertical, const Scalar angle, const uint8_t *value=nullptr) |
Paints a rotated elliptic region at a specified position with specified size and rotation angle. More... | |
static bool | rectangle (Frame &frame, const int left, const int top, const unsigned int xSize, const unsigned int ySize, const uint8_t *value=nullptr) |
Paints a rectangle at a specified position with specified size. More... | |
template<unsigned int tChannels> | |
static void | rectangle8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const int left, const int top, const unsigned int xSize, const unsigned int ySize, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints a rectangle at a specified position with specified size. More... | |
template<unsigned int tSize, PixelCenter tPixelCenter = CV::PC_CENTER> | |
static bool | point (Frame &frame, const Vector2 &position, const uint8_t *value=nullptr) |
Paints a point with sub-pixel accuracy. More... | |
template<unsigned int tChannels, unsigned int tSize, PixelCenter tPixelCenter = CV::PC_CENTER> | |
static void | point8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const Vector2 &position, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints a point with sub-pixel accuracy. More... | |
template<unsigned int tSize, PixelCenter tPixelCenter = CV::PC_CENTER> | |
static bool | points (Frame &frame, const Vectors2 &positions, const uint8_t *value=nullptr) |
Paints points with sub-pixel accuracy. More... | |
template<unsigned int tChannels, unsigned int tSize, PixelCenter tPixelCenter = CV::PC_CENTER> | |
static void | points8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const Vectors2 &positions, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Paints points with sub-pixel accuracy. More... | |
static bool | fill (Frame &frame, const PixelPosition &position, const uint8_t *value=nullptr) |
Fills an image area with a given color, an recursive seed-fill-algorithm is implemented. More... | |
template<unsigned int tChannels> | |
static void | fill8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const PixelPosition &position, const uint8_t *value=nullptr, const unsigned int framePaddingElements=0u) |
Fills an image area with a given color, an recursive seed-fill-algorithm is implemented. More... | |
template<unsigned int tSize> | |
static bool | polygon (Frame &frame, const Vector2 *points, size_t numberPoints, const uint8_t *value=nullptr, const bool closeLoop=true) |
Paints the outline of a polygon with sub-pixel accuracy. More... | |
template<unsigned int tChannels, unsigned int tSize> | |
static void | polygon8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const Vector2 *points, size_t numberPoints, const uint8_t *value=nullptr, const bool closeLoop=true, const unsigned int framePaddingElements=0u) |
Paints the outline of a polygon with sub-pixel accuracy. More... | |
static bool | drawText (Frame &frame, const std::string &text, const int left, const int top, const uint8_t *foregroundColor, const uint8_t *backgroundColor=nullptr) |
Paints a given text into a given frame using the standard (code style) font supporting only one size. More... | |
static bool | textExtent (const std::string &text, unsigned int &width, unsigned int &height) |
Returns the bounding box a given text will occupy in pixel space when using the standard font. More... | |
Static Private Member Functions | |
static const uint8_t * | memoryBlock32Byte () |
Returns a memory block to 32 bytes as a backup in case a requested color value does not exist for a specific pixel format. More... | |
template<typename T , unsigned int tChannels> | |
static void | ellipse8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const PixelPosition &position, const unsigned int horizontalHalf, const unsigned int verticalHalf, const uint8_t *value, const unsigned int paddingElements=0u) |
Paints a ellipse at a specified position with specified size. More... | |
template<unsigned int tChannels> | |
static void | rotatedEllipse8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const PixelPosition &position, const unsigned int horizontalHalf, const unsigned int verticalHalf, const Scalar angle, const uint8_t *value, const unsigned int paddingElements=0u) |
Paints a rotated elliptic region at a specified position with specified size. More... | |
template<unsigned int tChannels, unsigned int tSize, PixelCenter tPixelCenter> | |
static void | point8BitPerChannel (uint8_t *frame, const unsigned int width, const unsigned int height, const Vector2 &position, const uint8_t *value, const FilterFactors< tSize > &factors, const unsigned int framePaddingElements=0u) |
Paints a point with sub-pixel accuracy. More... | |
This class implements canvas functions.
|
static |
Returns the color values for a black color.
Values of alpha channel are set to 0xFF.
pixelFormat | The pixel format for which the color will be returned |
|
static |
Returns the color values for a blue color.
Values of alpha channel are set to 0xFF.
pixelFormat | The pixel format for which the color will be returned |
|
static |
Paints a 2D axis aligned bounding box with sub-pixel accuracy.
frame | The frame in which the line will be painted, must be valid |
box | The 2D axis aligned bounding box to be drawn, must be valid |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a 2D axis aligned bounding box with sub-pixel accuracy.
frame | The frame receiving the line, must be valid |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
box | The 2D axis aligned bounding box to be drawn, must be valid |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each row, with range [0, infinity) |
tChannels | Number of channels of the given frame, with range [1, infinity) |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a given text into a given frame using the standard (code style) font supporting only one size.
Use Ocean::CV::Fonts in case arbitrary fonts are necessary. The given location can be partially outside of the frame.
frame | The frame in which the text will be painted, must have a generic pixel format like e.g., FORMAT_Y8 or FORMAT_RGB24, must be valid |
text | The text to be painted, the text can contain end-of-line characters to paint the remaining the following characters in the next line, can be empty |
left | The horizontal start position of the text within the frame, in pixel, with range (-infinity, infinity) |
top | The vertical start position of the text within the frame, in pixel, with range (-infinity, infinity) |
foregroundColor | The foreground color to be used when painting the character, must be valid |
backgroundColor | The optional background color to be used when paining the character, nullptr to paint the foreground pixels only |
|
static |
Paints an ellipse at a specified position with specified size.
frame | The frame receiving the elliptic blob-region, must be valid |
position | Center position of the elliptic mask, with range [0, frame.width())x[0, frame.height()) |
horizontal | The horizontal size of the elliptic mask in pixel, must be odd, with range [3, infinity) |
vertical | The vertical size of the elliptic mask in pixel, must be odd, with range [3, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
|
inlinestatic |
Paints an ellipse at a specified position with specified size.
frame | The frame receiving the elliptic blob-region, must be valid |
width | The width of the mask frame in pixel, with range [1, infinity) |
height | The height of the mask frame in pixel, with range [1, infinity) |
position | Center position of the elliptic mask, with range [0, width)x[0, height) |
horizontal | The horizontal size of the elliptic mask, must be odd, with range [3, infinity) |
vertical | The vertical size of the elliptic mask, must be odd, with range [3, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
paddingElements | Optional number of padding elements at the end of each row, with range [0, infinity) |
tChannels | Number of data channels of the frame data |
|
staticprivate |
Paints a ellipse at a specified position with specified size.
frame | The frame receiving the elliptic blob-region, must be valid |
width | The width of the mask frame in pixel, with range [1, infinity) |
height | The height of the mask frame in pixel, with range [1, infinity) |
position | Center position of the elliptic mask, with range [0, width - 1]x[0, height - 1] |
horizontalHalf | Half horizontal size of the elliptic mask, with range [1, infinity) |
verticalHalf | Half vertical size of the elliptic mask, with range [1, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
paddingElements | Optional number of padding elements at the end of each row, with range [0, infinity) |
T | Internal data type to determine the elliptic region |
tChannels | Number of channels of the given frame |
|
static |
Fills an image area with a given color, an recursive seed-fill-algorithm is implemented.
The fill area is determined by all pixels that lie in a successive 4-neighborhood of the given start position and have the same color value as the start pixel.
frame | The frame to be filled |
position | The start position defining the color of the fill area, with range [0, width)x[0, height) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
|
static |
Fills an image area with a given color, an recursive seed-fill-algorithm is implemented.
The fill area is determined by all pixels that lie in a successive 4-neighborhood of the given start position and have the same color value as the start pixel.
frame | The frame to be filled, must be valid |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
position | The start position defining the color of the fill area, with range [0, width)x[0, height) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each frame row, in elements, with range [0, infinity) |
tChannels | Number of frame channels, with range [1, infinity) |
|
static |
Returns the color values for a gray color.
Values of alpha channel are set to 0xFF.
pixelFormat | The pixel format for which the color will be returned |
|
static |
Returns the color values for a green color.
Values of alpha channel are set to 0xFF.
pixelFormat | The pixel format for which the color will be returned |
|
static |
Paints a finite line with sub-pixel accuracy.
The specified start and end positions will be included.
frame | The frame in which the line will be painted, must be valid |
line | The finite line to be drawn, must be valid |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a line with specified start and end position with pixel accuracy.
The specified start and end positions will be included.
frame | The frame in which the line will be painted, must be valid |
xStart | Horizontal start position, with range (-infinity, infinity) |
yStart | Vertical start position, with range (-infinity, infinity) |
xEnd | Horizontal end position, with range (-infinity, infinity) |
yEnd | Vertical end position, with range (-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
|
static |
Paints an infinite line with sub-pixel accuracy.
frame | The frame in which the line will be painted, must be valid |
line | The line to be drawn, must be valid |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a line with specified start and end position with sub-pixel accuracy.
The specified start and end positions will be included.
frame | The frame in which the line will be painted, must be valid |
xStart | Horizontal start position, with range (-infinity, infinity) |
yStart | Vertical start position, with range (-infinity, infinity) |
xEnd | Horizontal end position, with range (-infinity, infinity) |
yEnd | Vertical end position, with range (-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a line with specified start and end position with sub-pixel accuracy.
The specified start and end positions will be included.
frame | The frame in which the line will be painted, must be valid |
start | The start position, with range (-infinity, infinity)x(-infinity, infinity) |
end | The end position, with range (-infinity, infinity)x(-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a finite line with sub-pixel accuracy.
The specified start and end positions will be included.
frame | The frame receiving the line, must be valid |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
line | The finite line to be drawn, must be valid |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each row, with range [0, infinity) |
tChannels | Number of channels of the given frame, with range [1, infinity) |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a line with specified start and end position with pixel accuracy.
The specified start and end positions will be included.
frame | The frame in which the line will be painted, must be valid |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
xStart | Horizontal start position, with range (-infinity, infinity) |
yStart | Vertical start position, with range (-infinity, infinity) |
xEnd | Horizontal end position, with range (-infinity, infinity) |
yEnd | Vertical end position, with range (-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each row, in elements, with range [0, infinity) |
tChannels | Number of channels of the given frame, with range [1, infinity) |
|
static |
Paints an infinite line with sub-pixel accuracy.
frame | The frame receiving the line, must be valid |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
line | The line to be drawn, must be valid |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each row, with range [0, infinity) |
tChannels | Number of channels of the given frame, with range [1, infinity) |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a line with specified start and end position with sub-pixel accuracy.
The specified start and end positions will be included.
frame | The frame receiving the line, must be valid |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
xStart | Horizontal start position, with range (-infinity, infinity) |
yStart | Vertical start position, with range (-infinity, infinity) |
xEnd | Horizontal end position, with range (-infinity, infinity) |
yEnd | Vertical end position, with range (-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each row, with range [0, infinity) |
tChannels | Number of channels of the given frame, with range [1, infinity) |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a line with specified start and end position with sub-pixel accuracy.
The specified start and end positions will be included.
frame | The frame receiving the line, must be valid |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
start | The start position, with range (-infinity, infinity)x(-infinity, infinity) |
end | The end position, with range (-infinity, infinity)x(-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each row, with range [0, infinity) |
tChannels | Number of channels of the given frame, with range [1, infinity) |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
inlinestatic |
Paints several finite lines with sub-pixel accuracy.
The specified start and end positions will be included.
frame | The frame in which the line will be painted, must be valid |
lines | The finite lines to be drawn, must be valid |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
inlinestatic |
Paints several infinite lines with sub-pixel accuracy.
frame | The frame in which the line will be painted, must be valid |
lines | The lines to be drawn, must be valid |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints several lines with specified start and end positions with pixel accuracy.
The specified start and end positions will be included.
frame | The frame in which the line will be painted, must be valid |
positions | Interleaved start and end positions of the lines, with range (-infinity, infinity)x(-infinity, infinity) |
numberPositions | Number of provided positions, should be even - otherwise the last line will not be painted |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
|
static |
Paints several lines with specified start and end positions with pixel accuracy.
The specified start and end positions will be included.
frame | The frame in which the line will be painted, must be valid |
width | The width of the frame in pixel, with range [0, infinity) |
height | The height of the frame in pixel, with range [0, infinity) |
positions | Interleaved start and end positions of the lines, with range (-infinity, infinity)x(-infinity, infinity) |
numberPositions | Number of provided positions, should be even - otherwise the last line will not be painted |
value | Color value to be used, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each row, with range [0, infinity) |
tChannels | Number of channels of the given frame, with range [1, infinity) |
|
staticprivate |
Returns a memory block to 32 bytes as a backup in case a requested color value does not exist for a specific pixel format.
|
static |
Paints a point with sub-pixel accuracy.
frame | The frame in which the point will be painted, must be valid |
position | Sub-pixel position of the point, with range (-infinity, infinity)x(-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
tSize | The size (width) of the point in pixel, with range [1, infinity) and must be odd |
tPixelCenter | The pixel center of the provided position, either 'PC_TOP_LEFT' or 'PC_CENTER' |
|
staticprivate |
Paints a point with sub-pixel accuracy.
frame | The frame in which the point will be painted |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
position | Sub-pixel position of the point, with range (-infinity, infinity)x(-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
factors | Filter factors for the specified point size |
framePaddingElements | Optional number of padding elements at the end of each frame row, in elements, with range [0, infinity) |
tChannels | Number of frame channels, with range [1, infinity) |
tSize | The size (width) of the point in pixel, with range [1, infinity) and must be odd |
tPixelCenter | The pixel center of the provided position, either 'PC_TOP_LEFT' or 'PC_CENTER' |
|
static |
Paints a point with sub-pixel accuracy.
frame | The frame in which the point will be painted |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
position | Sub-pixel position of the point, with range (-infinity, infinity)x(-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each frame row, in elements, with range [0, infinity) |
tChannels | Number of frame channels, with range [1, infinity) |
tSize | The size (width) of the point in pixel, with range [1, infinity) and must be odd |
tPixelCenter | The pixel center of the provided position, either 'PC_TOP_LEFT' or 'PC_CENTER' |
|
static |
Paints points with sub-pixel accuracy.
frame | The frame in which the point will be painted, must be valid |
positions | Sub-pixel positions of the points, with range (-infinity, infinity)x(-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
tSize | The size (width) of the point in pixel, with range [1, infinity) and must be odd |
tPixelCenter | The pixel center of the provided position, either 'PC_TOP_LEFT' or 'PC_CENTER' |
|
static |
Paints points with sub-pixel accuracy.
frame | The frame in which the point will be painted |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
positions | Sub-pixel positions of the points, with range (-infinity, infinity)x(-infinity, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Optional number of padding elements at the end of each frame row, in elements, with range [0, infinity) |
tChannels | Number of frame channels, with range [1, infinity) |
tSize | The size (width) of the point in pixel, with range [1, infinity) and must be odd |
tPixelCenter | The pixel center of the provided position, either 'PC_TOP_LEFT' or 'PC_CENTER' |
|
static |
Paints the outline of a polygon with sub-pixel accuracy.
frame | The frame in which the polygon will be painted, must be valid |
points | The points of the polygon to be drawn, must be valid |
numberPoints | The number of given polygon points, with range [0, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
closeLoop | True, to close the loop of the polygon (between first and last point); False, to not paint the connection between first and last point |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints the outline of a polygon with sub-pixel accuracy.
frame | The frame in which the polygon will be painted, must be valid |
width | The width of the frame in pixel, with range [1, infinity) |
height | The height of the frame in pixel, with range [1, infinity) |
points | The points of the polygon to be drawn, must be valid |
numberPoints | The number of given polygon points, with range [0, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
closeLoop | True, to close the loop of the polygon (between first and last point); False, to not paint the connection between first and last point |
framePaddingElements | Optional number of padding elements at the end of each frame row, in elements, with range [0, infinity) |
tChannels | Number of frame channels, with range [1, infinity) |
tSize | Size (thickness) of the line in pixel, with range [1, infinity) and must be odd |
|
static |
Paints a rectangle at a specified position with specified size.
frame | The frame receiving the rectangle, must be valid |
left | Horizontal start position (top, left) of the rectangle in pixel, with range (-infinity, infinity) |
top | Vertical start position (top, left) of the rectangle in pixel, with range (-infinity, infinity) |
xSize | Width of the rectangle in pixel, with range [0u, infinity) |
ySize | Height of the rectangle in pixel, with range [0u, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
|
static |
Paints a rectangle at a specified position with specified size.
frame | The frame receiving the rectangle, must be valid |
width | The width of the frame in pixel, with range [1u, infinity) |
height | The height of the frame in pixel, with range [1u, infinity) |
left | Horizontal start position (top, left) of the rectangle in pixel, with range (-infinity, infinity) |
top | Vertical start position (top, left) of the rectangle in pixel, with range (-infinity, infinity) |
xSize | Width of the rectangle in pixel, with range [0u, infinity) |
ySize | Height of the rectangle in pixel, with range [0u, infinity) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
framePaddingElements | Number of padding elements at the end of each frame row, in elements, with range [0, infinity) |
tChannels | Number of data channels of the frame data, with range [1, infinity) |
|
static |
Returns the color values for a red color.
Values of alpha channel are set to 0xFF.
pixelFormat | The pixel format for which the color will be returned |
|
static |
Paints a rotated elliptic region at a specified position with specified size and rotation angle.
frame | The frame receiving the elliptic blob-region, must be valid |
position | Center position of the elliptic mask, with range [0, frame.width())x[0, frame.height()) |
horizontal | The horizontal size of the elliptic mask in pixel, must be odd, with range [3, infinity) |
vertical | The vertical size of the elliptic mask in pixel, must be odd, with range [3, infinity) |
angle | Rotation angle, in radian |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
|
staticprivate |
Paints a rotated elliptic region at a specified position with specified size.
frame | The frame receiving the elliptic blob-region, must be valid |
width | The width of the mask frame in pixel, with range [1, infinity) |
height | The height of the mask frame in pixel, with range [1, infinity) |
position | Center position of the elliptic mask, with range [0, width)x[0, height) |
horizontalHalf | Half horizontal size of the elliptic mask, with range [1, infinity) |
verticalHalf | Half vertical size of the elliptic mask, with range [1, infinity) |
angle | Rotation angle, in radian, with range [0, 2 * PI) |
value | Color value to be used, make sure that the provided buffer has at least as many bytes as the pixel format for one pixel, nullptr to apply 0x00 for each channel |
paddingElements | Optional number of padding elements at the end of each row, with range [0, infinity) |
tChannels | Number of channels of the given frame |
|
static |
Returns the bounding box a given text will occupy in pixel space when using the standard font.
text | The text for which the extent will be determined, can be empty |
width | The width of the bounding box, in pixel, with range [0, infinity) |
height | The height of the bounding box, in pixel, with range [0, infinity) |
|
static |
Returns the color values for a white color.
Values of alpha channel are set to 0xFF.
pixelFormat | The pixel format for which the color will be returned |
|
static |
Returns the color values for a yellow color.
Values of alpha channel are set to 0xFF.
pixelFormat | The pixel format for which the color will be returned |