forked from Makuna/NeoPixelBus
@@ -146,24 +146,31 @@ setTimeScale KEYWORD2
|
||||
QuadraticIn KEYWORD2
|
||||
QuadraticOut KEYWORD2
|
||||
QuadraticInOut KEYWORD2
|
||||
QuadraticCenter KEYWORD2
|
||||
CubicIn KEYWORD2
|
||||
CubicOut KEYWORD2
|
||||
CubicInOut KEYWORD2
|
||||
CubicCenter KEYWORD2
|
||||
QuarticIn KEYWORD2
|
||||
QuarticOut KEYWORD2
|
||||
QuarticInOut KEYWORD2
|
||||
QuarticCenter KEYWORD2
|
||||
QuinticIn KEYWORD2
|
||||
QuinticOut KEYWORD2
|
||||
QuinticInOut KEYWORD2
|
||||
QuinticCenter KEYWORD2
|
||||
SinusoidalIn KEYWORD2
|
||||
SinusoidalOut KEYWORD2
|
||||
SinusoidalInOut KEYWORD2
|
||||
SinusoidalCenter KEYWORD2
|
||||
ExponentialIn KEYWORD2
|
||||
ExponentialOut KEYWORD2
|
||||
ExponentialInOut KEYWORD2
|
||||
ExponentialCenter KEYWORD2
|
||||
CircularIn KEYWORD2
|
||||
CircularOut KEYWORD2
|
||||
CircularInOut KEYWORD2
|
||||
CircularCenter KEYWORD2
|
||||
Gamma KEYWORD2
|
||||
Map KEYWORD2
|
||||
MapProbe KEYWORD2
|
||||
|
@@ -8,7 +8,7 @@
|
||||
"type": "git",
|
||||
"url": "https://github.com/Makuna/NeoPixelBus"
|
||||
},
|
||||
"version": "2.3.4",
|
||||
"version": "2.3.5",
|
||||
"frameworks": "arduino",
|
||||
"platforms": "*"
|
||||
}
|
||||
|
@@ -1,5 +1,5 @@
|
||||
name=NeoPixelBus by Makuna
|
||||
version=2.3.4
|
||||
version=2.3.5
|
||||
author=Michael C. Miller (makuna@live.com)
|
||||
maintainer=Michael C. Miller (makuna@live.com)
|
||||
sentence=A library that makes controlling NeoPixels (WS2811, WS2812, WS2813 & SK6812) and DotStars (APA102) easy.
|
||||
|
@@ -71,6 +71,20 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
static float QuadraticCenter(float unitValue)
|
||||
{
|
||||
unitValue *= 2.0f;
|
||||
if (unitValue < 1.0f)
|
||||
{
|
||||
return (-0.5f * (unitValue * unitValue - 2.0f));
|
||||
}
|
||||
else
|
||||
{
|
||||
unitValue -= 1.0f;
|
||||
return (0.5f * (unitValue * unitValue + 1.0f));
|
||||
}
|
||||
}
|
||||
|
||||
static float CubicIn(float unitValue)
|
||||
{
|
||||
return (unitValue * unitValue * unitValue);
|
||||
@@ -96,6 +110,13 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
static float CubicCenter(float unitValue)
|
||||
{
|
||||
unitValue *= 2.0f;
|
||||
unitValue -= 1.0f;
|
||||
return (0.5f * (unitValue * unitValue * unitValue) + 1);
|
||||
}
|
||||
|
||||
static float QuarticIn(float unitValue)
|
||||
{
|
||||
return (unitValue * unitValue * unitValue * unitValue);
|
||||
@@ -121,6 +142,20 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
static float QuarticCenter(float unitValue)
|
||||
{
|
||||
unitValue *= 2.0f;
|
||||
unitValue -= 1.0f;
|
||||
if (unitValue < 0.0f)
|
||||
{
|
||||
return (-0.5f * (unitValue * unitValue * unitValue * unitValue - 1.0f));
|
||||
}
|
||||
else
|
||||
{
|
||||
return (0.5f * (unitValue * unitValue * unitValue * unitValue + 1.0f));
|
||||
}
|
||||
}
|
||||
|
||||
static float QuinticIn(float unitValue)
|
||||
{
|
||||
return (unitValue * unitValue * unitValue * unitValue * unitValue);
|
||||
@@ -146,6 +181,13 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
static float QuinticCenter(float unitValue)
|
||||
{
|
||||
unitValue *= 2.0f;
|
||||
unitValue -= 1.0f;
|
||||
return (0.5f * (unitValue * unitValue * unitValue * unitValue * unitValue + 1.0f));
|
||||
}
|
||||
|
||||
static float SinusoidalIn(float unitValue)
|
||||
{
|
||||
return (-cos(unitValue * HALF_PI) + 1.0f);
|
||||
@@ -161,6 +203,19 @@ public:
|
||||
return -0.5 * (cos(PI * unitValue) - 1.0f);
|
||||
}
|
||||
|
||||
static float SinusoidalCenter(float unitValue)
|
||||
{
|
||||
if (unitValue < 0.5f)
|
||||
{
|
||||
return (0.5 * sin(PI * unitValue));
|
||||
}
|
||||
else
|
||||
{
|
||||
return (-0.5 * (cos(PI * (unitValue-0.5f)) + 1.0f));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static float ExponentialIn(float unitValue)
|
||||
{
|
||||
return (pow(2, 10.0f * (unitValue - 1.0f)));
|
||||
@@ -185,6 +240,20 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
static float ExponentialCenter(float unitValue)
|
||||
{
|
||||
unitValue *= 2.0f;
|
||||
if (unitValue < 1.0f)
|
||||
{
|
||||
return (0.5f * (-pow(2, -10.0f * unitValue) + 1.0f));
|
||||
}
|
||||
else
|
||||
{
|
||||
unitValue -= 2.0f;
|
||||
return (0.5f * (pow(2, 10.0f * unitValue) + 1.0f));
|
||||
}
|
||||
}
|
||||
|
||||
static float CircularIn(float unitValue)
|
||||
{
|
||||
if (unitValue == 1.0f)
|
||||
@@ -217,6 +286,25 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
static float CircularCenter(float unitValue)
|
||||
{
|
||||
unitValue *= 2.0f;
|
||||
unitValue -= 1.0f;
|
||||
if (unitValue == 0.0f)
|
||||
{
|
||||
return 1.0f;
|
||||
}
|
||||
else if (unitValue < 0.0f)
|
||||
{
|
||||
return (0.5f * sqrt(1.0f - unitValue * unitValue));
|
||||
}
|
||||
else
|
||||
{
|
||||
unitValue -= 2.0f;
|
||||
return (-0.5f * (sqrt(1.0f - unitValue * unitValue) - 1.0f ) + 0.5f);
|
||||
}
|
||||
}
|
||||
|
||||
static float Gamma(float unitValue)
|
||||
{
|
||||
return pow(unitValue, 1.0f / 0.45f);
|
||||
|
Reference in New Issue
Block a user