FastLED 3.9.15
Loading...
Searching...
No Matches
gfx.h File Reference

Detailed Description

2D antialiased graphics for LED matrices

#include "fl/gfx/gfx.h"

Quick start: CRGB leds[256]; fl::CanvasRGB canvas(leds, 16, 16);

// Antialiased line canvas.drawLine(CRGB::White, 0.0f, 0.0f, 15.0f, 10.0f);

// Filled circle with soft edges canvas.drawDisc(CRGB::Red, 8.0f, 8.0f, 4.5f);

// Ring (hollow circle) canvas.drawRing(CRGB::Blue, 8.0f, 8.0f, 5.0f, 1.5f);

// Thick line with round end caps canvas.drawStrokeLine(CRGB::Green, 2.0f, 8.0f, 14.0f, 8.0f, 3.0f, fl::LineCap::ROUND);

Coordinates can be float, int, or fixed-point (fl::s16x16, etc.). Default draw mode is additive (DRAW_MODE_BLEND) — overlapping shapes blend naturally. Use DRAW_MODE_OVERWRITE to replace pixels instead of blending.

Line cap styles: fl::LineCap::FLAT — no extension beyond endpoints (default) fl::LineCap::ROUND — hemispherical caps at each end fl::LineCap::SQUARE — rectangular extension by half-thickness

Definition in file gfx.h.

#include "fl/stl/compiler_control.h"
#include "fl/gfx/crgb.h"
#include "fl/gfx/draw_mode.h"
#include "fl/gfx/canvas.h"
#include "fl/gfx/primitives.h"
+ Include dependency graph for gfx.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  fl::Canvas< RGB_T >
 Generic canvas for any pixel type (e.g. More...
 
class  fl::CanvasRGB
 Convenience alias for CRGB canvas — use fl::CanvasRGB for no-template syntax. More...
 

Namespaces

namespace  fl
 Base definition for an LED controller.
 

Typedefs

using fl::LineCap = gfx::LineCap
 Line cap style.