32 const bool has_rotation = (
rotation != 0.0f);
38 float x_rotated =
x * cos_theta -
y * sin_theta;
39 float y_rotated =
x * sin_theta +
y * cos_theta;
40 return vec2f(x_rotated, y_rotated);
52 u32 numer =
static_cast<u32
>(max_value) << 16;
54 u32 scale32 = numer / 0xFFFF;
55 scale16 =
static_cast<alpha16
>(scale32);
66 const vec2<alpha16> &
max, alpha16 rotation) {
73 u32 numer =
static_cast<u32
>(
max.x -
min.x) << 16;
75 u32 scale32 = numer / 0xFFFF;
76 scale16 =
static_cast<alpha16
>(scale32);
81 u32 numer =
static_cast<u32
>(
max.y -
min.y) << 16;
83 u32 scale32 = numer / 0xFFFF;
84 scale16 =
static_cast<alpha16
>(scale32);
94 vec2<alpha16> out =
xy;
98 constexpr i32 MID = 0x7FFF;
101 i32
x = i32(out.x) - MID;
102 i32
y = i32(out.y) - MID;
109 i32 xr = (
x * c -
y * s) >> 15;
110 i32 yr = (
x * s +
y * c) >> 15;
113 out.x = alpha16(xr + MID);
114 out.y = alpha16(yr + MID);
FL_DISABLE_WARNING_PUSH U constexpr common_type_t< T, U > min(T a, U b) FL_NOEXCEPT
Memory functions are available in fl:: namespace via fl/stl/cstring.h Using declarations cannot work ...
constexpr common_type_t< T, U > max(T a, U b) FL_NOEXCEPT
constexpr T radians(T deg) FL_NOEXCEPT
uint32_t scale_y[NUM_LAYERS]
uint32_t scale_x[NUM_LAYERS]
fl::UISlider scale("Scale", 4,.1, 4,.1)
unsigned int xy(unsigned int x, unsigned int y)
Integer mapping functions between different integer sizes.
Legacy compatibility header for trigonometry functions.
u16 map32_to_16(u32 x) FL_NOEXCEPT
FL_DISABLE_WARNING_PUSH U constexpr common_type_t< T, U > min(T a, U b) FL_NOEXCEPT
float sinf(float value) FL_NOEXCEPT
float cosf(float value) FL_NOEXCEPT
Base definition for an LED controller.
#define FL_DISABLE_WARNING(warning)
#define FL_DISABLE_WARNING_PUSH
#define FL_DISABLE_WARNING_POP