Skip to main content

PainterBW

PainterBW is used for drawing one 1bpp displays. The color is either on or off. No transparency is supported.

See: AbstractPainter

Inherits from: AbstractPainterBW, AbstractPainter

Public Functions

unsignedbw(unsigned red, unsigned green, unsigned blue)
Converts the selected color to either white (1) or black (0) depending on the gray representation of the RGB color.
colortypegetColor() const
Gets the current color.
virtual voidrender(uint8_t ptr, int x, int xAdjust, int y, unsigned count, const uint8_t covers)
Paint a designated part of the RenderingBuffer with respect to the amount of coverage of each pixel given by the parameter covers.
voidsetColor(colortype color)
Sets color to use when drawing the CanvasWidget.

Protected Functions

virtual boolrenderNext(uint8_t & color)
Get the color of the next pixel in the scan line to blend into the framebuffer.

Protected Attributes

uint8_tpainterBW
The color to use when painting.
colortypepainterColor
The painter color.

Additional inherited members

Public Functions inherited from AbstractPainterBW

Protected Functions inherited from AbstractPainterBW

virtual boolrenderInit()
Initialize rendering of a single scan line of pixels for the render.

Protected Attributes inherited from AbstractPainterBW

intcurrentX
Current x coordinate relative to the widget.
intcurrentY
Current y coordinate relative to the widget.

Public Functions inherited from AbstractPainter

AbstractPainter()
Initializes a new instance of the AbstractPainter class.
virtual ~AbstractPainter()
Finalizes an instance of the AbstractPainter class.

Protected Functions inherited from AbstractPainter

voidsetAreaOffset(uint16_t offsetX, uint16_t offsetY)
Sets the offset of the area being drawn.
voidsetWidgetAlpha(const uint8_t alpha)
Sets the widget alpha to allow an entire canvas widget to easily be faded without changing the painter of the widget.
FORCE_INLINE_FUNCTION boolcompatibleFramebuffer(Bitmap::BitmapFormat format)
Helper function to check if the provided bitmap format matches the current framebuffer format.

Protected Attributes inherited from AbstractPainter

int16_tareaOffsetX
The offset x coordinate of the area being drawn.
int16_tareaOffsetY
The offset y coordinate of the area being drawn.
uint8_twidgetAlpha
The alpha of the widget using the painter.

Public Functions Documentation

bw

static unsigned bw(unsignedred ,
unsignedgreen ,
unsignedblue
)

Converts the selected color to either white (1) or black (0) depending on the gray representation of the RGB color.

Parameters:
redThe red color.
greenThe green color.
blueThe blue color.
Returns:

1 (white) if the brightness of the RGB color is above 50% and 0 (black) otherwise.

getColor

colortype getColor()const

Gets the current color.

Returns:

The color.

render

virtual void render(uint8_t *ptr ,
intx ,
intxAdjust ,
inty ,
unsignedcount ,
const uint8_t *covers
)

Paint a designated part of the RenderingBuffer with respect to the amount of coverage of each pixel given by the parameter covers.

The cover is the alpha for each pixel, which is what makes it possible to have smooth anti-aliased edges on the shapes drawn with CanvasWidgetRenderer.

Parameters:
ptrPointer to the row in the RenderingBuffer.
xThe x coordinate.
xAdjustThe minor adjustment of x (used when a pixel is smaller than a byte to specify that the ptr should have been advanced "xAdjust" pixels futher into the byte).
yThe y coordinate.
countNumber of pixels to fill.
coversThe coverage in of each pixel.
Note

The implementation of render() in the AbstractPainter classes is a generic (i.e. slow) implementation that should be completely implemented in subclasses of AbstractPainter for better performance.

Reimplements: touchgfx::AbstractPainterBW::render

setColor

void setColor(colortypecolor)

Sets color to use when drawing the CanvasWidget.

Parameters:
colorThe color

Protected Functions Documentation

renderNext

virtual bool renderNext(uint8_t &color)

Get the color of the next pixel in the scan line to blend into the framebuffer.

Parameters:
colorThe color (0 or 1).
Returns:

true if the pixel should be painted, false otherwise.

Reimplements: touchgfx::AbstractPainterBW::renderNext

Protected Attributes Documentation

painterBW

uint8_t painterBW

The color to use when painting.

painterColor

colortype painterColor

The painter color.