MCPcopy Create free account
hub / github.com/FastLED/FastLED / easeOutCubic16

Function easeOutCubic16

src/fl/math/ease.cpp.hpp:261–272  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

259}
260
261u16 easeOutCubic16(u16 i) {
262 // ease-out cubic: 1 - (1-t)³
263 // For 16-bit: y = MAX - (MAX-i)³ / MAX²
264 constexpr u32 MAX = 0xFFFF; // 65535
265 constexpr fl::u64 DENOM = (fl::u64)MAX * MAX; // 65535²
266 constexpr fl::u64 ROUND = DENOM >> 1; // for rounding
267
268 fl::u64 d = MAX - i; // (MAX - i)
269 fl::u64 cube = d * d * d; // (MAX-i)³
270 fl::u64 num = cube + ROUND;
271 return u16(MAX - (num / DENOM));
272}
273
274u16 easeInSine16(u16 i) {
275 // ease-in sine: 1 - cos(t * π/2)

Callers 1

ease16Function · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected