45 static XYPathPtr
NewLinePath(
float x0,
float y0,
float x1,
float y1);
51 u16 width = 0, u16 height = 0,
59 const char *
name =
nullptr);
73 u16 width = 0, u16 height = 0,
77 u16 width = 0, u16 height = 0,
92 XYPath(XYPathGeneratorPtr path,
static XYPathPtr NewCustomPath(const fl::function< vec2f(float)> &path, const rect< i16 > &drawbounds=rect< i16 >(), const TransformFloat &transform=TransformFloat(), const char *name=nullptr)
int calculateSteps(float from, float to)
static XYPathPtr NewPhyllotaxisPath(u16 width=0, u16 height=0, const fl::shared_ptr< PhyllotaxisParams > &args=fl::make_shared< PhyllotaxisParams >())
void drawColor(const CRGB &color, float from, float to, Leds *leds, int steps=-1)
static XYPathPtr NewHeartPath()
static XYPathPtr NewArchimedeanSpiralPath()
xy_brightness at_brightness(float alpha)
Tile2x2_u8 at_subpixel(float alpha)
void setScale(float scale)
scoped_ptr< XYRasterU8Sparse > mOptionalRaster
fl::pair< vec2f, u8 > xy_brightness
static XYPathPtr NewPointPath(float x, float y)
bool hasDrawBounds() const
static XYPathPtr NewGielisCurvePath(u16 width=0, u16 height=0, const fl::shared_ptr< GielisCurveParams > ¶ms=fl::make_shared< GielisCurveParams >())
void drawGradient(const Gradient &gradient, float from, float to, Leds *leds, int steps=-1)
void setTransform(const TransformFloat &transform)
static XYPathPtr NewCatmullRomPath(u16 width=0, u16 height=0, const fl::shared_ptr< CatmullRomParams > ¶ms=fl::make_shared< CatmullRomParams >())
static XYPathPtr NewLinePath(float x0, float y0, float x1, float y1)
XYPathRendererPtr mPathRenderer
fl::function< u8(float)> AlphaFunction
static XYPathPtr NewRosePath(u16 width=0, u16 height=0, const fl::shared_ptr< RosePathParams > ¶ms=fl::make_shared< RosePathParams >())
XYPath(XYPathGeneratorPtr path, TransformFloat transform=TransformFloat())
void setDrawBounds(u16 width, u16 height)
void rasterize(float from, float to, int steps, XYRasterU8Sparse &raster, AlphaFunction *optional_alpha_gen=nullptr)
static XYPathPtr NewCirclePath()
TransformFloat & transform()
fl::function< vec2f(float)> mFunction
vec2f compute(float alpha) override
bool hasDrawBounds(fl::rect< i16 > *bounds) override
fl::rect< i16 > mDrawBounds
XYPathFunction(fl::function< vec2f(float)> f)
fl::rect< i16 > drawBounds() const
const string name() const override
void setName(const string &name)
void setDrawBounds(const fl::rect< i16 > &bounds)
UISlider steps("Steps", 100.0f, 1.0f, 200.0f, 1.0f)
XYRaster raster(WIDTH, HEIGHT)
fl::string unique_missing_name(const char *prefix)
unique_ptr< T, Deleter > scoped_ptr
shared_ptr< T > make_shared(Args &&... args)
#define FASTLED_SMART_PTR(type)
Representation of an RGB pixel (Red, Green, Blue)