2#include "platforms/is_platform.h"
39 u32
id = ++sUniqueName;
82 for (
int i = 0; i <
steps; ++i) {
85 if (optional_alpha_gen) {
87 u8 a8 = (*optional_alpha_gen)(alpha);
101 tx.set_scale_x((
width - 1.0f) * 0.5f);
104 tx.set_offset_x(
width * 0.5f);
113 tx.set_scale_y((
height - 1.0f) * 0.5f);
114 tx.set_offset_y(
height * 0.5f);
248 if (!drawbounds.empty()) {
249 path->setDrawBounds(drawbounds);
256 if (path->hasDrawBounds(&bounds)) {
257 if (!bounds.
mMin.is_zero()) {
259 FL_WARN(
"Bounds with an origin other than 0,0 is not supported yet");
261 auto w = bounds.
width();
263 out->setDrawBounds(w, h);
fl::UISlider scale("Scale", 4,.1, 4,.1)
static T & instance() FL_NO_EXCEPT
void scale(u8 scale) FL_NO_EXCEPT
vec2f at(float alpha) FL_NO_EXCEPT
static XYPathPtr NewGielisCurvePath(u16 width=0, u16 height=0, const fl::shared_ptr< GielisCurveParams > ¶ms=fl::make_shared< GielisCurveParams >()) FL_NO_EXCEPT
bool hasDrawBounds() const FL_NO_EXCEPT
string name() const FL_NO_EXCEPT
int calculateSteps(float from, float to) FL_NO_EXCEPT
static XYPathPtr NewCustomPath(const fl::function< vec2f(float)> &path, const rect< i16 > &drawbounds=rect< i16 >(), const TransformFloat &transform=TransformFloat(), const char *name=nullptr) FL_NO_EXCEPT
Tile2x2_u8 at_subpixel(float alpha) FL_NO_EXCEPT
void setTransform(const TransformFloat &transform) FL_NO_EXCEPT
void drawGradient(const Gradient &gradient, float from, float to, Leds *leds, int steps=-1) FL_NO_EXCEPT
static XYPathPtr NewRosePath(u16 width=0, u16 height=0, const fl::shared_ptr< RosePathParams > ¶ms=fl::make_shared< RosePathParams >()) FL_NO_EXCEPT
static XYPathPtr NewCatmullRomPath(u16 width=0, u16 height=0, const fl::shared_ptr< CatmullRomParams > ¶ms=fl::make_shared< CatmullRomParams >()) FL_NO_EXCEPT
TransformFloat & transform() FL_NO_EXCEPT
static XYPathPtr NewPhyllotaxisPath(u16 width=0, u16 height=0, const fl::shared_ptr< PhyllotaxisParams > &args=fl::make_shared< PhyllotaxisParams >()) FL_NO_EXCEPT
void rasterize(float from, float to, int steps, XYRasterU8Sparse &raster, AlphaFunction *optional_alpha_gen=nullptr) FL_NO_EXCEPT
XYPath(XYPathGeneratorPtr path, TransformFloat transform=TransformFloat()) FL_NO_EXCEPT
static XYPathPtr NewArchimedeanSpiralPath() FL_NO_EXCEPT
static XYPathPtr NewHeartPath() FL_NO_EXCEPT
static XYPathPtr NewPointPath(float x, float y) FL_NO_EXCEPT
virtual ~XYPath() FL_NO_EXCEPT
void setScale(float scale) FL_NO_EXCEPT
XYPathRendererPtr mPathRenderer
fl::function< u8(float)> AlphaFunction
static XYPathPtr NewCirclePath() FL_NO_EXCEPT
void drawColor(const CRGB &color, float from, float to, Leds *leds, int steps=-1) FL_NO_EXCEPT
void setDrawBounds(u16 width, u16 height) FL_NO_EXCEPT
static XYPathPtr NewLinePath(float x0, float y0, float x1, float y1) FL_NO_EXCEPT
void setScale(float scale) FL_NO_EXCEPT
TransformFloat & transform() FL_NO_EXCEPT
TransformFloat mTransform
TransformFloat mGridTransform
void rasterize(float from, float to, int steps, XYRasterU8Sparse &raster, fl::function< u8(float)> *optional_alpha_gen=nullptr) FL_NO_EXCEPT
vec2f compute_float(float alpha, const TransformFloat &tx) FL_NO_EXCEPT
Tile2x2_u8 at_subpixel(float alpha) FL_NO_EXCEPT
void onTransformFloatChanged() FL_NO_EXCEPT
vec2f at(float alpha) FL_NO_EXCEPT
void setDrawBounds(u16 width, u16 height) FL_NO_EXCEPT
vec2f compute(float alpha) FL_NO_EXCEPT
fl::UISlider steps("Steps", 100.0f, 1.0f, 200.0f, 1.0f)
fl::XYRaster raster(WIDTH, HEIGHT)
shared_ptr< T > make_shared(Args &&... args) FL_NO_EXCEPT
XYRasterU8Sparse & get_tls_raster() FL_NO_EXCEPT
fl::string unique_missing_name(const char *prefix) FL_NO_EXCEPT
constexpr common_type_t< T, U > max(T a, U b) FL_NO_EXCEPT
u8 u8 fract8 blur_amount FL_NO_EXCEPT
XYRasterU8Sparse XYRaster
constexpr enable_if< is_fixed_point< T >::value, T >::type clamp(T x, T lo, T hi) FL_NO_EXCEPT
FASTLED_FORCE_INLINE U map_range(T value, T in_min, T in_max, U out_min, U out_max) FL_NO_EXCEPT
constexpr enable_if< is_fixed_point< T >::value, T >::type abs(T x) FL_NO_EXCEPT
Base definition for an LED controller.
Representation of an 8-bit RGB pixel (Red, Green, Blue)
u16 width() const FL_NO_EXCEPT
u16 height() const FL_NO_EXCEPT