Berry animation rename animation classes (#24302)
This commit is contained in:
parent
950eccbd33
commit
18943139f8
@ -10,7 +10,7 @@ Writing LED animations in pure Berry code requires understanding the animation e
|
||||
|
||||
- **Declarative, not imperative** - Just specify *what* you want and *how long* it should take; the framework handles all intermediate states and timing
|
||||
- **No state machines** - Forget about tracking animation phases, transitions, and timing manually
|
||||
- **Readable syntax** - Write `animation pulse = pulsating_animation(color=red, period=2s)` instead of dozens of lines of Berry code
|
||||
- **Readable syntax** - Write `animation pulse = breathe(color=red, period=2s)` instead of dozens of lines of Berry code
|
||||
- **Automatic engine management** - No need to create engines, manage frame buffers, or handle timing
|
||||
- **Built-in effects** - Access to pulse, breathe, fire, comet, sparkle, wave, and many more effects
|
||||
- **Dynamic parameters** - Oscillating values (sine, triangle, smooth) without manual math
|
||||
@ -49,22 +49,22 @@ Without `USE_BERRY_ANIMATION_DSL`, use the online emulator to create animations
|
||||
### Simple Breathing Animation
|
||||
|
||||
```berry
|
||||
animation pulse = breathe_animation(color=red, period=2s)
|
||||
animation pulse = breathe(color=red, period=2s)
|
||||
run pulse
|
||||
```
|
||||
|
||||
### Rainbow Smooth Color Cycling
|
||||
|
||||
```berry
|
||||
animation rainbow = rich_palette_animation(colors=PALETTE_RAINBOW)
|
||||
animation rainbow = rich_palette(colors=PALETTE_RAINBOW)
|
||||
run rainbow
|
||||
```
|
||||
|
||||
### Animation Sequence
|
||||
|
||||
```berry
|
||||
animation red_pulse = breathe_animation(color=red, period=2s)
|
||||
animation blue_pulse = breathe_animation(color=blue, period=1.5s)
|
||||
animation red_pulse = breathe(color=red, period=2s)
|
||||
animation blue_pulse = breathe(color=blue, period=1.5s)
|
||||
|
||||
sequence show repeat forever {
|
||||
play red_pulse for 4s
|
||||
@ -136,7 +136,7 @@ template animation pulse_effect {
|
||||
param pulse_color type color
|
||||
param speed
|
||||
|
||||
animation pulse = pulsating_animation(color=pulse_color, period=speed)
|
||||
animation pulse = breathe(color=pulse_color, period=speed)
|
||||
run pulse
|
||||
}
|
||||
|
||||
@ -155,19 +155,17 @@ run show
|
||||
Animation|Description
|
||||
:---|:---
|
||||
`solid`|Solid color fill
|
||||
`pulsating_animation`|Breathing/pulsing effect with smooth transitions
|
||||
`breathe_animation`|Natural breathing effect with customizable curve
|
||||
`beacon_animation`|Pulse/highlight at specific position with optional slew
|
||||
`crenel_animation`|Crenel/square wave pattern
|
||||
`comet_animation`|Moving comet with fading tail
|
||||
`breathe`|Natural breathing effect with customizable curve
|
||||
`beacon`|Pulse/highlight at specific position with optional slew
|
||||
`crenel`|Crenel/square wave pattern
|
||||
`comet`|Moving comet with fading tail
|
||||
`twinkle`|Twinkling stars effect
|
||||
`fire_animation`|Realistic fire simulation
|
||||
`fire`|Realistic fire simulation
|
||||
`rich_palette_color`|Smooth palette color transitions
|
||||
`gradient_animation`|Linear or radial color gradients
|
||||
`palette_gradient_animation`|Gradient patterns with palette colors
|
||||
`palette_meter_animation`|Meter/bar patterns
|
||||
`gradient_meter_animation`|VU meter with gradient and peak hold
|
||||
`wave_animation`|Wave motion effects
|
||||
`gradient`|Linear or radial color gradients
|
||||
`palette_gradient`|Gradient patterns with palette colors
|
||||
`palette_meter`|VU meter with gradient and peak hold
|
||||
`wave`|Wave motion effects
|
||||
|
||||
## Documentation
|
||||
|
||||
|
||||
@ -27,7 +27,7 @@ color palette_pattern = rich_palette_color(
|
||||
)
|
||||
|
||||
# Create breathing animation using the palette
|
||||
animation breathing = breathe_animation(
|
||||
animation breathing = breathe(
|
||||
color=palette_pattern # base animation
|
||||
min_brightness=100 # min brightness
|
||||
max_brightness=255 # max brightness
|
||||
|
||||
@ -9,16 +9,16 @@ color candy_white = 0xFFFFFF
|
||||
|
||||
# Create alternating red and white animation
|
||||
# Using multiple pulse positions to create stripes
|
||||
animation stripe1 = beacon_animation(color=candy_red, pos=3, beacon_size=4, slew_size=1)
|
||||
animation stripe2 = beacon_animation(color=candy_white, pos=9, beacon_size=4, slew_size=1)
|
||||
animation stripe3 = beacon_animation(color=candy_red, pos=15, beacon_size=4, slew_size=1)
|
||||
animation stripe4 = beacon_animation(color=candy_white, pos=21, beacon_size=4, slew_size=1)
|
||||
animation stripe5 = beacon_animation(color=candy_red, pos=27, beacon_size=4, slew_size=1)
|
||||
animation stripe6 = beacon_animation(color=candy_white, pos=33, beacon_size=4, slew_size=1)
|
||||
animation stripe7 = beacon_animation(color=candy_red, pos=39, beacon_size=4, slew_size=1)
|
||||
animation stripe8 = beacon_animation(color=candy_white, pos=45, beacon_size=4, slew_size=1)
|
||||
animation stripe9 = beacon_animation(color=candy_red, pos=51, beacon_size=4, slew_size=1)
|
||||
animation stripe10 = beacon_animation(color=candy_white, pos=57, beacon_size=4, slew_size=1)
|
||||
animation stripe1 = beacon(color=candy_red, pos=3, beacon_size=4, slew_size=1)
|
||||
animation stripe2 = beacon(color=candy_white, pos=9, beacon_size=4, slew_size=1)
|
||||
animation stripe3 = beacon(color=candy_red, pos=15, beacon_size=4, slew_size=1)
|
||||
animation stripe4 = beacon(color=candy_white, pos=21, beacon_size=4, slew_size=1)
|
||||
animation stripe5 = beacon(color=candy_red, pos=27, beacon_size=4, slew_size=1)
|
||||
animation stripe6 = beacon(color=candy_white, pos=33, beacon_size=4, slew_size=1)
|
||||
animation stripe7 = beacon(color=candy_red, pos=39, beacon_size=4, slew_size=1)
|
||||
animation stripe8 = beacon(color=candy_white, pos=45, beacon_size=4, slew_size=1)
|
||||
animation stripe9 = beacon(color=candy_red, pos=51, beacon_size=4, slew_size=1)
|
||||
animation stripe10 = beacon(color=candy_white, pos=57, beacon_size=4, slew_size=1)
|
||||
|
||||
# Add gentle movement to make it more dynamic
|
||||
set move_speed = 8s
|
||||
|
||||
@ -26,7 +26,7 @@ animation ornaments = twinkle(
|
||||
ornaments.priority = 10
|
||||
|
||||
# Star on top (bright yellow pulse)
|
||||
animation tree_star = beacon_animation(
|
||||
animation tree_star = beacon(
|
||||
color=0xFFFF00 # Bright yellow
|
||||
pos=58 # position (near the top)
|
||||
beacon_size=3 # star size
|
||||
@ -45,7 +45,7 @@ snow_sparkles.priority = 15
|
||||
|
||||
# Garland effect - moving colored lights
|
||||
color garland_pattern = rich_palette_color(colors=ornament_colors, period=2s, transition_type=LINEAR, brightness=200)
|
||||
animation garland = comet_animation(
|
||||
animation garland = comet(
|
||||
color=garland_pattern # color source
|
||||
tail_length=6 # garland length (tail length)
|
||||
speed=4s # slow movement (speed)
|
||||
|
||||
@ -8,7 +8,7 @@ color space_blue = 0x000066 # Note: opaque 0xFF alpha channel is implicitly a
|
||||
animation background = solid(color=space_blue)
|
||||
|
||||
# Main comet with bright white head
|
||||
animation comet_main = comet_animation(
|
||||
animation comet_main = comet(
|
||||
color=0xFFFFFF # White head
|
||||
tail_length=10 # tail length
|
||||
speed=2s # speed
|
||||
@ -16,7 +16,7 @@ animation comet_main = comet_animation(
|
||||
)
|
||||
|
||||
# Secondary comet in different color, opposite direction
|
||||
animation comet_secondary = comet_animation(
|
||||
animation comet_secondary = comet(
|
||||
color=0xFF4500 # Orange head
|
||||
tail_length=8 # shorter tail
|
||||
speed=3s # slower speed
|
||||
|
||||
@ -32,7 +32,7 @@ var palette_pattern_ = animation.rich_palette_color(engine)
|
||||
palette_pattern_.colors = breathe_palette_ # palette
|
||||
palette_pattern_.period = 15000 # cycle period (defaults: smooth transition, 255 brightness)
|
||||
# Create breathing animation using the palette
|
||||
var breathing_ = animation.breathe_animation(engine)
|
||||
var breathing_ = animation.breathe(engine)
|
||||
breathing_.color = palette_pattern_ # base animation
|
||||
breathing_.min_brightness = 100 # min brightness
|
||||
breathing_.max_brightness = 255 # max brightness
|
||||
@ -80,7 +80,7 @@ color palette_pattern = rich_palette_color(
|
||||
)
|
||||
|
||||
# Create breathing animation using the palette
|
||||
animation breathing = breathe_animation(
|
||||
animation breathing = breathe(
|
||||
color=palette_pattern # base animation
|
||||
min_brightness=100 # min brightness
|
||||
max_brightness=255 # max brightness
|
||||
|
||||
@ -17,52 +17,52 @@ var candy_red_ = 0xFFFF0000
|
||||
var candy_white_ = 0xFFFFFFFF
|
||||
# Create alternating red and white animation
|
||||
# Using multiple pulse positions to create stripes
|
||||
var stripe1_ = animation.beacon_animation(engine)
|
||||
var stripe1_ = animation.beacon(engine)
|
||||
stripe1_.color = candy_red_
|
||||
stripe1_.pos = 3
|
||||
stripe1_.beacon_size = 4
|
||||
stripe1_.slew_size = 1
|
||||
var stripe2_ = animation.beacon_animation(engine)
|
||||
var stripe2_ = animation.beacon(engine)
|
||||
stripe2_.color = candy_white_
|
||||
stripe2_.pos = 9
|
||||
stripe2_.beacon_size = 4
|
||||
stripe2_.slew_size = 1
|
||||
var stripe3_ = animation.beacon_animation(engine)
|
||||
var stripe3_ = animation.beacon(engine)
|
||||
stripe3_.color = candy_red_
|
||||
stripe3_.pos = 15
|
||||
stripe3_.beacon_size = 4
|
||||
stripe3_.slew_size = 1
|
||||
var stripe4_ = animation.beacon_animation(engine)
|
||||
var stripe4_ = animation.beacon(engine)
|
||||
stripe4_.color = candy_white_
|
||||
stripe4_.pos = 21
|
||||
stripe4_.beacon_size = 4
|
||||
stripe4_.slew_size = 1
|
||||
var stripe5_ = animation.beacon_animation(engine)
|
||||
var stripe5_ = animation.beacon(engine)
|
||||
stripe5_.color = candy_red_
|
||||
stripe5_.pos = 27
|
||||
stripe5_.beacon_size = 4
|
||||
stripe5_.slew_size = 1
|
||||
var stripe6_ = animation.beacon_animation(engine)
|
||||
var stripe6_ = animation.beacon(engine)
|
||||
stripe6_.color = candy_white_
|
||||
stripe6_.pos = 33
|
||||
stripe6_.beacon_size = 4
|
||||
stripe6_.slew_size = 1
|
||||
var stripe7_ = animation.beacon_animation(engine)
|
||||
var stripe7_ = animation.beacon(engine)
|
||||
stripe7_.color = candy_red_
|
||||
stripe7_.pos = 39
|
||||
stripe7_.beacon_size = 4
|
||||
stripe7_.slew_size = 1
|
||||
var stripe8_ = animation.beacon_animation(engine)
|
||||
var stripe8_ = animation.beacon(engine)
|
||||
stripe8_.color = candy_white_
|
||||
stripe8_.pos = 45
|
||||
stripe8_.beacon_size = 4
|
||||
stripe8_.slew_size = 1
|
||||
var stripe9_ = animation.beacon_animation(engine)
|
||||
var stripe9_ = animation.beacon(engine)
|
||||
stripe9_.color = candy_red_
|
||||
stripe9_.pos = 51
|
||||
stripe9_.beacon_size = 4
|
||||
stripe9_.slew_size = 1
|
||||
var stripe10_ = animation.beacon_animation(engine)
|
||||
var stripe10_ = animation.beacon(engine)
|
||||
stripe10_.color = candy_white_
|
||||
stripe10_.pos = 57
|
||||
stripe10_.beacon_size = 4
|
||||
@ -165,16 +165,16 @@ color candy_white = 0xFFFFFF
|
||||
|
||||
# Create alternating red and white animation
|
||||
# Using multiple pulse positions to create stripes
|
||||
animation stripe1 = beacon_animation(color=candy_red, pos=3, beacon_size=4, slew_size=1)
|
||||
animation stripe2 = beacon_animation(color=candy_white, pos=9, beacon_size=4, slew_size=1)
|
||||
animation stripe3 = beacon_animation(color=candy_red, pos=15, beacon_size=4, slew_size=1)
|
||||
animation stripe4 = beacon_animation(color=candy_white, pos=21, beacon_size=4, slew_size=1)
|
||||
animation stripe5 = beacon_animation(color=candy_red, pos=27, beacon_size=4, slew_size=1)
|
||||
animation stripe6 = beacon_animation(color=candy_white, pos=33, beacon_size=4, slew_size=1)
|
||||
animation stripe7 = beacon_animation(color=candy_red, pos=39, beacon_size=4, slew_size=1)
|
||||
animation stripe8 = beacon_animation(color=candy_white, pos=45, beacon_size=4, slew_size=1)
|
||||
animation stripe9 = beacon_animation(color=candy_red, pos=51, beacon_size=4, slew_size=1)
|
||||
animation stripe10 = beacon_animation(color=candy_white, pos=57, beacon_size=4, slew_size=1)
|
||||
animation stripe1 = beacon(color=candy_red, pos=3, beacon_size=4, slew_size=1)
|
||||
animation stripe2 = beacon(color=candy_white, pos=9, beacon_size=4, slew_size=1)
|
||||
animation stripe3 = beacon(color=candy_red, pos=15, beacon_size=4, slew_size=1)
|
||||
animation stripe4 = beacon(color=candy_white, pos=21, beacon_size=4, slew_size=1)
|
||||
animation stripe5 = beacon(color=candy_red, pos=27, beacon_size=4, slew_size=1)
|
||||
animation stripe6 = beacon(color=candy_white, pos=33, beacon_size=4, slew_size=1)
|
||||
animation stripe7 = beacon(color=candy_red, pos=39, beacon_size=4, slew_size=1)
|
||||
animation stripe8 = beacon(color=candy_white, pos=45, beacon_size=4, slew_size=1)
|
||||
animation stripe9 = beacon(color=candy_red, pos=51, beacon_size=4, slew_size=1)
|
||||
animation stripe10 = beacon(color=candy_white, pos=57, beacon_size=4, slew_size=1)
|
||||
|
||||
# Add gentle movement to make it more dynamic
|
||||
set move_speed = 8s
|
||||
|
||||
@ -36,7 +36,7 @@ ornaments_.density = 15 # density (many ornaments)
|
||||
ornaments_.twinkle_speed = 800 # twinkle speed (slow twinkle)
|
||||
ornaments_.priority = 10
|
||||
# Star on top (bright yellow pulse)
|
||||
var tree_star_ = animation.beacon_animation(engine)
|
||||
var tree_star_ = animation.beacon(engine)
|
||||
tree_star_.color = 0xFFFFFF00 # Bright yellow
|
||||
tree_star_.pos = 58 # position (near the top)
|
||||
tree_star_.beacon_size = 3 # star size
|
||||
@ -61,7 +61,7 @@ garland_pattern_.colors = ornament_colors_
|
||||
garland_pattern_.period = 2000
|
||||
garland_pattern_.transition_type = animation.LINEAR
|
||||
garland_pattern_.brightness = 200
|
||||
var garland_ = animation.comet_animation(engine)
|
||||
var garland_ = animation.comet(engine)
|
||||
garland_.color = garland_pattern_ # color source
|
||||
garland_.tail_length = 6 # garland length (tail length)
|
||||
garland_.speed = 4000 # slow movement (speed)
|
||||
@ -104,7 +104,7 @@ animation ornaments = twinkle(
|
||||
ornaments.priority = 10
|
||||
|
||||
# Star on top (bright yellow pulse)
|
||||
animation tree_star = beacon_animation(
|
||||
animation tree_star = beacon(
|
||||
color=0xFFFF00 # Bright yellow
|
||||
pos=58 # position (near the top)
|
||||
beacon_size=3 # star size
|
||||
@ -123,7 +123,7 @@ snow_sparkles.priority = 15
|
||||
|
||||
# Garland effect - moving colored lights
|
||||
color garland_pattern = rich_palette_color(colors=ornament_colors, period=2s, transition_type=LINEAR, brightness=200)
|
||||
animation garland = comet_animation(
|
||||
animation garland = comet(
|
||||
color=garland_pattern # color source
|
||||
tail_length=6 # garland length (tail length)
|
||||
speed=4s # slow movement (speed)
|
||||
|
||||
@ -17,13 +17,13 @@ var space_blue_ = 0xFF000066 # Note: opaque 0xFF alpha channel is implicitly ad
|
||||
var background_ = animation.solid(engine)
|
||||
background_.color = space_blue_
|
||||
# Main comet with bright white head
|
||||
var comet_main_ = animation.comet_animation(engine)
|
||||
var comet_main_ = animation.comet(engine)
|
||||
comet_main_.color = 0xFFFFFFFF # White head
|
||||
comet_main_.tail_length = 10 # tail length
|
||||
comet_main_.speed = 2000 # speed
|
||||
comet_main_.priority = 7
|
||||
# Secondary comet in different color, opposite direction
|
||||
var comet_secondary_ = animation.comet_animation(engine)
|
||||
var comet_secondary_ = animation.comet(engine)
|
||||
comet_secondary_.color = 0xFFFF4500 # Orange head
|
||||
comet_secondary_.tail_length = 8 # shorter tail
|
||||
comet_secondary_.speed = 3000 # slower speed
|
||||
@ -54,7 +54,7 @@ color space_blue = 0x000066 # Note: opaque 0xFF alpha channel is implicitly a
|
||||
animation background = solid(color=space_blue)
|
||||
|
||||
# Main comet with bright white head
|
||||
animation comet_main = comet_animation(
|
||||
animation comet_main = comet(
|
||||
color=0xFFFFFF # White head
|
||||
tail_length=10 # tail length
|
||||
speed=2s # speed
|
||||
@ -62,7 +62,7 @@ animation comet_main = comet_animation(
|
||||
)
|
||||
|
||||
# Secondary comet in different color, opposite direction
|
||||
animation comet_secondary = comet_animation(
|
||||
animation comet_secondary = comet(
|
||||
color=0xFF4500 # Orange head
|
||||
tail_length=8 # shorter tail
|
||||
speed=3s # slower speed
|
||||
|
||||
@ -12,13 +12,13 @@ This document contains a summary of the DSL compilation process, including symbo
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|----------------------|----------------------------|---------|-----------|------------|
|
||||
| `breathe_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `breathe_blue` | color | | | |
|
||||
| `breathe_green` | color | | | |
|
||||
| `breathe_orange` | color | | | |
|
||||
| `breathe_palette` | palette | | | |
|
||||
| `breathe_purple` | color | | | |
|
||||
| `breathe_red` | color | | | |
|
||||
| `breathe` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `breathing` | animation | | | |
|
||||
| `palette_pattern` | color | | | |
|
||||
| `rich_palette_color` | color_constructor | ✓ | ⚠️ | ✓ |
|
||||
@ -37,8 +37,8 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
|-----------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `candy_red` | color | | | |
|
||||
| `candy_white` | color | | | |
|
||||
| `closure_value` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
@ -70,8 +70,8 @@ SUCCESS
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|----------------------|----------------------------|---------|-----------|------------|
|
||||
| `LINEAR` | constant | ✓ | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `comet_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `comet` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `garland_pattern` | color | | | |
|
||||
| `garland` | animation | | | |
|
||||
| `ornament_colors` | palette | | | |
|
||||
@ -101,10 +101,10 @@ SUCCESS
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|-------------------|-----------------------|---------|-----------|------------|
|
||||
| `background` | animation | | | |
|
||||
| `comet_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `comet_main` | animation | | | |
|
||||
| `comet_secondary` | animation | | | |
|
||||
| `comet_sparkles` | animation | | | |
|
||||
| `comet` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `solid` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `space_blue` | color | | | |
|
||||
| `twinkle` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
@ -122,12 +122,12 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|-------------------|----------------------------|---------|-----------|------------|
|
||||
|-----------------|----------------------------|---------|-----------|------------|
|
||||
| `abs` | math_function | ✓ | | ✓ |
|
||||
| `base_speed` | variable | | | |
|
||||
| `blue` | color | ✓ | | |
|
||||
| `closure_value` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `comet_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `comet` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `red` | color | ✓ | | |
|
||||
| `stream1` | animation | | | |
|
||||
| `stream2` | animation | | | |
|
||||
@ -166,8 +166,8 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
|-----------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `closure_value` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `color_cycle` | color_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `cosine_osc` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
@ -199,8 +199,8 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
|-----------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `closure_value` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `cosine_osc` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `red_eye` | animation | | | |
|
||||
@ -221,9 +221,9 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|------------------------------|----------------------------|---------|-----------|------------|
|
||||
|----------------------|----------------------------|---------|-----------|------------|
|
||||
| `background` | animation | | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `closure_value` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `cosine_osc` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `eye_mask` | animation | | | |
|
||||
@ -231,7 +231,7 @@ SUCCESS
|
||||
| `fire_color` | color | | | |
|
||||
| `fire_colors` | palette | | | |
|
||||
| `fire_pattern` | animation | | | |
|
||||
| `palette_gradient_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `palette_gradient` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette_color` | color_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `solid` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `strip_len` | value_provider | | | |
|
||||
@ -322,7 +322,7 @@ SUCCESS
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|---------------------|----------------------------|---------|-----------|------------|
|
||||
| `PALETTE_RAINBOW` | palette_constant | ✓ | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `closure_value` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `col1` | color | | | |
|
||||
| `col2` | color | | | |
|
||||
@ -348,10 +348,10 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|---------------------------|----------------------------|---------|-----------|------------|
|
||||
|----------------------|----------------------------|---------|-----------|------------|
|
||||
| `back_pattern` | animation | | | |
|
||||
| `closure_value` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `palette_meter_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `palette_meter` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rainbow_with_white` | palette | | | |
|
||||
| `rand_meter` | user_function | | | ✓ |
|
||||
|
||||
@ -370,7 +370,7 @@ SUCCESS
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|----------------------|----------------------------|---------|-----------|------------|
|
||||
| `LINEAR` | constant | ✓ | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `disco_base` | animation | | | |
|
||||
| `disco_colors` | palette | | | |
|
||||
| `disco_pulse` | animation | | | |
|
||||
@ -467,9 +467,9 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------|----------------------------|---------|-----------|------------|
|
||||
|----------------|----------------------------|---------|-----------|------------|
|
||||
| `background` | animation | | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `center_pulse` | animation | | | |
|
||||
| `heart_bg` | color | | | |
|
||||
| `heart_glow` | animation | | | |
|
||||
@ -520,9 +520,9 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------------|----------------------------|---------|-----------|------------|
|
||||
|----------------------|----------------------------|---------|-----------|------------|
|
||||
| `SINE` | constant | ✓ | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `blob1_pattern` | color | | | |
|
||||
| `blob2_pattern` | color | | | |
|
||||
| `blob3_pattern` | color | | | |
|
||||
@ -532,8 +532,8 @@ SUCCESS
|
||||
| `lava_blob2` | animation | | | |
|
||||
| `lava_blob3` | animation | | | |
|
||||
| `lava_colors` | palette | | | |
|
||||
| `rich_palette_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette_color` | color_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `shimmer_pattern` | color | | | |
|
||||
| `smooth` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `twinkle` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
@ -551,14 +551,14 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------------|----------------------------|---------|-----------|------------|
|
||||
|---------------------|----------------------------|---------|-----------|------------|
|
||||
| `SINE` | constant | ✓ | | |
|
||||
| `afterglow` | animation | | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `distant_flash` | animation | | | |
|
||||
| `lightning_main` | animation | | | |
|
||||
| `lightning_partial` | animation | | | |
|
||||
| `rich_palette_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `solid` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `square` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `storm_bg` | animation | | | |
|
||||
@ -582,7 +582,7 @@ SUCCESS
|
||||
| `LINEAR` | constant | ✓ | | |
|
||||
| `background` | animation | | | |
|
||||
| `code_flash` | animation | | | |
|
||||
| `comet_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `comet` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `matrix_bg` | color | | | |
|
||||
| `matrix_greens` | palette | | | |
|
||||
| `rich_palette_color` | color_constructor | ✓ | ⚠️ | ✓ |
|
||||
@ -608,9 +608,9 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|-------------------|-----------------------|---------|-----------|------------|
|
||||
|----------------|-----------------------|---------|-----------|------------|
|
||||
| `background` | animation | | | |
|
||||
| `comet_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `comet` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `meteor1` | animation | | | |
|
||||
| `meteor2` | animation | | | |
|
||||
| `meteor3` | animation | | | |
|
||||
@ -634,15 +634,15 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------------|----------------------------|---------|-----------|------------|
|
||||
|----------------------|----------------------------|---------|-----------|------------|
|
||||
| `LINEAR` | constant | ✓ | | |
|
||||
| `arc_sparkles` | animation | | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `neon_colors` | palette | | | |
|
||||
| `neon_main` | animation | | | |
|
||||
| `neon_surge` | animation | | | |
|
||||
| `rich_palette_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette_color` | color_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `segment1` | animation | | | |
|
||||
| `segment2` | animation | | | |
|
||||
| `segment3` | animation | | | |
|
||||
@ -665,14 +665,14 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------------|----------------------------|---------|-----------|------------|
|
||||
|----------------------|----------------------------|---------|-----------|------------|
|
||||
| `SINE` | constant | ✓ | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `foam` | animation | | | |
|
||||
| `ocean_base` | animation | | | |
|
||||
| `ocean_colors` | palette | | | |
|
||||
| `rich_palette_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette_color` | color_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `sawtooth` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `twinkle` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `wave1_pattern` | color | | | |
|
||||
@ -693,13 +693,13 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------------|-----------------------|---------|-----------|------------|
|
||||
|----------------|-----------------------|---------|-----------|------------|
|
||||
| `fire_anim` | animation | | | |
|
||||
| `fire_colors` | palette | | | |
|
||||
| `ocean_anim` | animation | | | |
|
||||
| `ocean_colors` | palette | | | |
|
||||
| `palette_demo` | sequence | | | |
|
||||
| `rich_palette_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
|
||||
### Compilation Output
|
||||
|
||||
@ -714,7 +714,7 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------------|-----------------------|---------|-----------|------------|
|
||||
|----------------------|-----------------------|---------|-----------|------------|
|
||||
| `SINE` | constant | ✓ | | |
|
||||
| `aurora_borealis` | palette | | | |
|
||||
| `aurora_lights` | animation | | | |
|
||||
@ -729,8 +729,8 @@ SUCCESS
|
||||
| `orange` | color | ✓ | | |
|
||||
| `palette_showcase` | sequence | | | |
|
||||
| `purple` | color | ✓ | | |
|
||||
| `rich_palette_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette_color` | color_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `solid` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `sunset_glow` | animation | | | |
|
||||
| `sunset_sky` | palette | | | |
|
||||
@ -750,16 +750,16 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------------|----------------------------|---------|-----------|------------|
|
||||
|----------------------|----------------------------|---------|-----------|------------|
|
||||
| `SINE` | constant | ✓ | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `plasma_base` | animation | | | |
|
||||
| `plasma_colors` | palette | | | |
|
||||
| `plasma_wave1` | animation | | | |
|
||||
| `plasma_wave2` | animation | | | |
|
||||
| `plasma_wave3` | animation | | | |
|
||||
| `rich_palette_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette_color` | color_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `smooth` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `wave1_pattern` | color | | | |
|
||||
| `wave2_pattern` | color | | | |
|
||||
@ -778,8 +778,8 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
|----------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `half_length` | variable | | | |
|
||||
| `left_red` | animation | | | |
|
||||
| `right_blue` | animation | | | |
|
||||
@ -800,8 +800,8 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------|-----------------------|---------|-----------|------------|
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
|----------------|-----------------------|---------|-----------|------------|
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `blue_custom` | color | | | |
|
||||
| `center_pulse` | animation | | | |
|
||||
| `demo` | sequence | | | |
|
||||
@ -843,9 +843,9 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------|----------------------------|---------|-----------|------------|
|
||||
|-----------------|----------------------------|---------|-----------|------------|
|
||||
| `background` | animation | | | |
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `closure_value` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `pos_test` | value_provider | | | |
|
||||
| `scanner_bg` | color | | | |
|
||||
@ -867,9 +867,10 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|-----------------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
|-------------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `blue` | color | ✓ | | |
|
||||
| `breathe` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `brightness_demo` | sequence | | | |
|
||||
| `brightness_high` | variable | | | |
|
||||
| `brightness_low` | variable | | | |
|
||||
@ -883,7 +884,6 @@ SUCCESS
|
||||
| `green` | color | ✓ | | |
|
||||
| `main_demo` | sequence | | | |
|
||||
| `multi_change` | sequence | | | |
|
||||
| `pulsating_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `pulse_demo` | animation | | | |
|
||||
| `red_eye` | animation | | | |
|
||||
| `red` | color | ✓ | | |
|
||||
@ -908,7 +908,7 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------------|-----------------------|---------|-----------|------------|
|
||||
|-----------------|-----------------------|---------|-----------|------------|
|
||||
| `blue` | color | ✓ | | |
|
||||
| `demo` | sequence | | | |
|
||||
| `green` | color | ✓ | | |
|
||||
@ -916,7 +916,7 @@ SUCCESS
|
||||
| `rainbow_cycle` | animation | | | |
|
||||
| `rainbow` | palette | | | |
|
||||
| `red` | color | ✓ | | |
|
||||
| `rich_palette_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `yellow` | color | ✓ | | |
|
||||
|
||||
### Compilation Output
|
||||
@ -932,11 +932,11 @@ SUCCESS
|
||||
## Symbol Table
|
||||
|
||||
| Symbol | Type | Builtin | Dangerous | Takes Args |
|
||||
|--------------------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
|-------------------|----------------------------|---------|-----------|------------|
|
||||
| `beacon` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `daylight_colors` | palette | | | |
|
||||
| `daylight_cycle` | animation | | | |
|
||||
| `rich_palette_animation` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `rich_palette` | animation_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `smooth` | value_provider_constructor | ✓ | ⚠️ | ✓ |
|
||||
| `stars` | animation | | | |
|
||||
| `sun_glow` | animation | | | |
|
||||
|
||||
@ -14,14 +14,14 @@ var engine = animation.init_strip()
|
||||
|
||||
var strip_len_ = animation.strip_length(engine)
|
||||
# Create animation with computed values
|
||||
var stream1_ = animation.comet_animation(engine)
|
||||
var stream1_ = animation.comet(engine)
|
||||
stream1_.color = 0xFFFF0000
|
||||
stream1_.tail_length = animation.create_closure_value(engine, def (engine) return animation._math.abs(animation.resolve(strip_len_) / 4) end) # computed value
|
||||
stream1_.speed = 1.5
|
||||
stream1_.priority = 10
|
||||
# More complex computed values
|
||||
var base_speed_ = 2.0
|
||||
var stream2_ = animation.comet_animation(engine)
|
||||
var stream2_ = animation.comet(engine)
|
||||
stream2_.color = 0xFF0000FF
|
||||
stream2_.tail_length = animation.create_closure_value(engine, def (engine) return animation.resolve(strip_len_) / 8 + (2 * animation.resolve(strip_len_)) - 10 end) # computed with addition
|
||||
stream2_.speed = animation.create_closure_value(engine, def (engine) return animation.resolve(base_speed_) * 1.5 end) # computed with multiplication
|
||||
@ -44,7 +44,7 @@ engine.run()
|
||||
set strip_len = strip_length()
|
||||
|
||||
# Create animation with computed values
|
||||
animation stream1 = comet_animation(
|
||||
animation stream1 = comet(
|
||||
color=red
|
||||
tail_length=abs(strip_len / 4) # computed value
|
||||
speed=1.5
|
||||
@ -53,7 +53,7 @@ animation stream1 = comet_animation(
|
||||
|
||||
# More complex computed values
|
||||
set base_speed = 2.0
|
||||
animation stream2 = comet_animation(
|
||||
animation stream2 = comet(
|
||||
color=blue
|
||||
tail_length=strip_len / 8 + (2 * strip_len) -10 # computed with addition
|
||||
speed=base_speed * 1.5 # computed with multiplication
|
||||
|
||||
@ -21,7 +21,7 @@ class cylon_animation : animation.engine_proxy
|
||||
var engine = self # using 'self' as a proxy to engine object (instead of 'self.engine')
|
||||
|
||||
var strip_len_ = animation.strip_length(engine)
|
||||
var eye_animation_ = animation.beacon_animation(engine)
|
||||
var eye_animation_ = animation.beacon(engine)
|
||||
eye_animation_.color = animation.create_closure_value(engine, def (engine) return self.eye_color end)
|
||||
eye_animation_.back_color = animation.create_closure_value(engine, def (engine) return self.back_color end)
|
||||
eye_animation_.pos = (def (engine)
|
||||
@ -60,7 +60,7 @@ template animation cylon {
|
||||
|
||||
set strip_len = strip_length()
|
||||
|
||||
animation eye_animation = beacon_animation(
|
||||
animation eye_animation = beacon(
|
||||
color = eye_color
|
||||
back_color = back_color
|
||||
pos = cosine_osc(min_value = -1, max_value = strip_len - 2, duration = period)
|
||||
|
||||
@ -31,7 +31,7 @@ var triangle_val_ = (def (engine)
|
||||
provider.duration = eye_duration_
|
||||
return provider
|
||||
end)(engine)
|
||||
var red_eye_ = animation.beacon_animation(engine)
|
||||
var red_eye_ = animation.beacon(engine)
|
||||
red_eye_.color = eye_color_ # palette that will advance when we do `eye_color.next = 1`
|
||||
red_eye_.pos = cosine_val_ # oscillator for position
|
||||
red_eye_.beacon_size = 3 # small 3 pixels eye
|
||||
@ -63,7 +63,7 @@ color eye_color = color_cycle(colors=eye_palette, period=0)
|
||||
set cosine_val = cosine_osc(min_value = 0, max_value = strip_len - 2, duration = eye_duration)
|
||||
set triangle_val = triangle(min_value = 0, max_value = strip_len - 2, duration = eye_duration)
|
||||
|
||||
animation red_eye = beacon_animation(
|
||||
animation red_eye = beacon(
|
||||
color = eye_color # palette that will advance when we do `eye_color.next = 1`
|
||||
pos = cosine_val # oscillator for position
|
||||
beacon_size = 3 # small 3 pixels eye
|
||||
|
||||
@ -13,7 +13,7 @@ var engine = animation.init_strip()
|
||||
|
||||
var strip_len_ = animation.strip_length(engine)
|
||||
# Base aurora animation with slow flowing colors
|
||||
var red_eye_ = animation.beacon_animation(engine)
|
||||
var red_eye_ = animation.beacon(engine)
|
||||
red_eye_.color = 0xFFFF0000
|
||||
red_eye_.pos = (def (engine)
|
||||
var provider = animation.cosine_osc(engine)
|
||||
@ -35,7 +35,7 @@ engine.run()
|
||||
set strip_len = strip_length()
|
||||
|
||||
# Base aurora animation with slow flowing colors
|
||||
animation red_eye = beacon_animation(
|
||||
animation red_eye = beacon(
|
||||
color = red
|
||||
pos = cosine_osc(min_value = 0, max_value = strip_len - 2, duration = 5s)
|
||||
beacon_size = 3 # small 3 pixels eye
|
||||
|
||||
@ -30,14 +30,14 @@ var eye_pos_ = (def (engine)
|
||||
provider.duration = 6000
|
||||
return provider
|
||||
end)(engine)
|
||||
var eye_mask_ = animation.beacon_animation(engine)
|
||||
var eye_mask_ = animation.beacon(engine)
|
||||
eye_mask_.color = 0xFFFFFFFF
|
||||
eye_mask_.back_color = 0x00000000
|
||||
eye_mask_.pos = eye_pos_
|
||||
eye_mask_.beacon_size = 4 # small 3 pixels eye
|
||||
eye_mask_.slew_size = 2 # with 2 pixel shading around
|
||||
eye_mask_.priority = 5
|
||||
var fire_pattern_ = animation.palette_gradient_animation(engine)
|
||||
var fire_pattern_ = animation.palette_gradient(engine)
|
||||
fire_pattern_.color_source = fire_color_
|
||||
fire_pattern_.spatial_period = animation.create_closure_value(engine, def (engine) return animation.resolve(strip_len_) / 4 end)
|
||||
fire_pattern_.opacity = eye_mask_
|
||||
@ -64,7 +64,7 @@ animation background = solid(color=0x000088, priority=20)
|
||||
run background
|
||||
|
||||
set eye_pos = cosine_osc(min_value = -1, max_value = strip_len - 2, duration = 6s)
|
||||
animation eye_mask = beacon_animation(
|
||||
animation eye_mask = beacon(
|
||||
color = white
|
||||
back_color = transparent
|
||||
pos = eye_pos
|
||||
@ -73,7 +73,7 @@ animation eye_mask = beacon_animation(
|
||||
priority = 5
|
||||
)
|
||||
|
||||
animation fire_pattern = palette_gradient_animation(
|
||||
animation fire_pattern = palette_gradient(
|
||||
color_source = fire_color
|
||||
spatial_period = strip_len / 4
|
||||
opacity = eye_mask
|
||||
|
||||
@ -28,7 +28,7 @@ var col2_ = animation.color_cycle(engine)
|
||||
col2_.colors = animation.PALETTE_RAINBOW
|
||||
col2_.period = 0
|
||||
col2_.next = 1
|
||||
var shutter_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_animation_ = animation.beacon(engine)
|
||||
shutter_animation_.color = col1_
|
||||
shutter_animation_.back_color = col2_
|
||||
shutter_animation_.pos = 0
|
||||
@ -61,7 +61,7 @@ set duration = 3s
|
||||
color col2 = color_cycle(colors=PALETTE_RAINBOW, period=0)
|
||||
col2.next = 1
|
||||
|
||||
animation shutter_animation = beacon_animation(
|
||||
animation shutter_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = 0
|
||||
|
||||
@ -36,7 +36,7 @@ class shutter_bidir_animation : animation.engine_proxy
|
||||
col2_.period = 0
|
||||
col2_.next = 1
|
||||
# shutter moving from left to right
|
||||
var shutter_lr_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_lr_animation_ = animation.beacon(engine)
|
||||
shutter_lr_animation_.color = col2_
|
||||
shutter_lr_animation_.back_color = col1_
|
||||
shutter_lr_animation_.pos = 0
|
||||
@ -44,7 +44,7 @@ class shutter_bidir_animation : animation.engine_proxy
|
||||
shutter_lr_animation_.slew_size = 0
|
||||
shutter_lr_animation_.priority = 5
|
||||
# shutter moving from right to left
|
||||
var shutter_rl_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_rl_animation_ = animation.beacon(engine)
|
||||
shutter_rl_animation_.color = col1_
|
||||
shutter_rl_animation_.back_color = col2_
|
||||
shutter_rl_animation_.pos = 0
|
||||
@ -105,7 +105,7 @@ template animation shutter_bidir {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving from left to right
|
||||
animation shutter_lr_animation = beacon_animation(
|
||||
animation shutter_lr_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = 0
|
||||
@ -115,7 +115,7 @@ template animation shutter_bidir {
|
||||
)
|
||||
|
||||
# shutter moving from right to left
|
||||
animation shutter_rl_animation = beacon_animation(
|
||||
animation shutter_rl_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = 0
|
||||
|
||||
@ -37,7 +37,7 @@ class shutter_central_animation : animation.engine_proxy
|
||||
col2_.period = 0
|
||||
col2_.next = 1
|
||||
# shutter moving in to out
|
||||
var shutter_inout_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_inout_animation_ = animation.beacon(engine)
|
||||
shutter_inout_animation_.color = col2_
|
||||
shutter_inout_animation_.back_color = col1_
|
||||
shutter_inout_animation_.pos = animation.create_closure_value(engine, def (engine) return animation.resolve(strip_len2_) - (animation.resolve(shutter_size_) + 1) / 2 end)
|
||||
@ -45,7 +45,7 @@ class shutter_central_animation : animation.engine_proxy
|
||||
shutter_inout_animation_.slew_size = 0
|
||||
shutter_inout_animation_.priority = 5
|
||||
# shutter moving out to in
|
||||
var shutter_outin_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_outin_animation_ = animation.beacon(engine)
|
||||
shutter_outin_animation_.color = col1_
|
||||
shutter_outin_animation_.back_color = col2_
|
||||
shutter_outin_animation_.pos = animation.create_closure_value(engine, def (engine) return animation.resolve(strip_len2_) - (animation.resolve(strip_len_) - animation.resolve(shutter_size_) + 1) / 2 end)
|
||||
@ -106,7 +106,7 @@ template animation shutter_central {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving in to out
|
||||
animation shutter_inout_animation = beacon_animation(
|
||||
animation shutter_inout_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = strip_len2 - (shutter_size + 1) / 2
|
||||
@ -116,7 +116,7 @@ template animation shutter_central {
|
||||
)
|
||||
|
||||
# shutter moving out to in
|
||||
animation shutter_outin_animation = beacon_animation(
|
||||
animation shutter_outin_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = strip_len2 - (strip_len - shutter_size + 1) / 2
|
||||
|
||||
@ -36,7 +36,7 @@ class shutter_lr_animation : animation.engine_proxy
|
||||
col2_.period = 0
|
||||
col2_.next = 1
|
||||
# shutter moving from left to right
|
||||
var shutter_lr_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_lr_animation_ = animation.beacon(engine)
|
||||
shutter_lr_animation_.color = col2_
|
||||
shutter_lr_animation_.back_color = col1_
|
||||
shutter_lr_animation_.pos = 0
|
||||
@ -88,7 +88,7 @@ template animation shutter_lr {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving from left to right
|
||||
animation shutter_lr_animation = beacon_animation(
|
||||
animation shutter_lr_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = 0
|
||||
|
||||
@ -34,7 +34,7 @@ var rainbow_with_white_ = bytes(
|
||||
"FFFC0000" # Red - need to add the first color at last position to ensure roll-over
|
||||
)
|
||||
# define a gradient across the whole strip
|
||||
var back_pattern_ = animation.palette_meter_animation(engine)
|
||||
var back_pattern_ = animation.palette_meter(engine)
|
||||
back_pattern_.level = animation.create_closure_value(engine, def (engine) return animation.get_user_function('rand_meter')(engine) end)
|
||||
engine.add(back_pattern_)
|
||||
engine.run()
|
||||
@ -67,7 +67,7 @@ palette rainbow_with_white = [
|
||||
]
|
||||
|
||||
# define a gradient across the whole strip
|
||||
animation back_pattern = palette_meter_animation(level = rand_meter())
|
||||
animation back_pattern = palette_meter(level = rand_meter())
|
||||
|
||||
run back_pattern
|
||||
|
||||
|
||||
@ -68,7 +68,7 @@ pulse_pattern_.colors = disco_colors_
|
||||
pulse_pattern_.period = 800
|
||||
pulse_pattern_.transition_type = animation.LINEAR
|
||||
pulse_pattern_.brightness = 255
|
||||
var disco_pulse_ = animation.beacon_animation(engine)
|
||||
var disco_pulse_ = animation.beacon(engine)
|
||||
disco_pulse_.color = pulse_pattern_ # color source
|
||||
disco_pulse_.pos = 4 # initial position
|
||||
disco_pulse_.beacon_size = 8 # pulse width
|
||||
@ -129,7 +129,7 @@ disco_sparkles.priority = 15
|
||||
|
||||
# Add moving pulse for extra effect
|
||||
color pulse_pattern = rich_palette_color(colors=disco_colors, period=800ms, transition_type=LINEAR, brightness=255)
|
||||
animation disco_pulse = beacon_animation(
|
||||
animation disco_pulse = beacon(
|
||||
color=pulse_pattern # color source
|
||||
pos=4 # initial position
|
||||
beacon_size=8 # pulse width
|
||||
|
||||
@ -57,7 +57,7 @@ heart_glow_.opacity = (def (engine)
|
||||
end)(engine) # Gentle breathing glow
|
||||
heart_glow_.priority = 5
|
||||
# Add center pulse for emphasis
|
||||
var center_pulse_ = animation.beacon_animation(engine)
|
||||
var center_pulse_ = animation.beacon(engine)
|
||||
center_pulse_.color = 0xFFFFFFFF # White center
|
||||
center_pulse_.pos = 30 # center of strip
|
||||
center_pulse_.beacon_size = 4 # small center
|
||||
@ -108,7 +108,7 @@ heart_glow.opacity = smooth(min_value=30, max_value=100, duration=1s) # Gentle
|
||||
heart_glow.priority = 5
|
||||
|
||||
# Add center pulse for emphasis
|
||||
animation center_pulse = beacon_animation(
|
||||
animation center_pulse = beacon(
|
||||
color=0xFFFFFF # White center
|
||||
pos=30 # center of strip
|
||||
beacon_size=4 # small center
|
||||
|
||||
@ -21,7 +21,7 @@ var lava_colors_ = bytes(
|
||||
"FFFFAA00" # Yellow-orange
|
||||
)
|
||||
# Base lava animation - very slow color changes
|
||||
var lava_base_ = animation.rich_palette_animation(engine)
|
||||
var lava_base_ = animation.rich_palette(engine)
|
||||
lava_base_.colors = lava_colors_
|
||||
lava_base_.period = 15000
|
||||
lava_base_.transition_type = animation.SINE
|
||||
@ -32,7 +32,7 @@ blob1_pattern_.colors = lava_colors_
|
||||
blob1_pattern_.period = 12000
|
||||
blob1_pattern_.transition_type = animation.SINE
|
||||
blob1_pattern_.brightness = 255
|
||||
var lava_blob1_ = animation.beacon_animation(engine)
|
||||
var lava_blob1_ = animation.beacon(engine)
|
||||
lava_blob1_.color = blob1_pattern_ # color source
|
||||
lava_blob1_.pos = 9 # initial position
|
||||
lava_blob1_.beacon_size = 18 # large blob
|
||||
@ -50,7 +50,7 @@ blob2_pattern_.colors = lava_colors_
|
||||
blob2_pattern_.period = 10000
|
||||
blob2_pattern_.transition_type = animation.SINE
|
||||
blob2_pattern_.brightness = 220
|
||||
var lava_blob2_ = animation.beacon_animation(engine)
|
||||
var lava_blob2_ = animation.beacon(engine)
|
||||
lava_blob2_.color = blob2_pattern_ # color source
|
||||
lava_blob2_.pos = 46 # initial position
|
||||
lava_blob2_.beacon_size = 14 # medium blob
|
||||
@ -68,7 +68,7 @@ blob3_pattern_.colors = lava_colors_
|
||||
blob3_pattern_.period = 8000
|
||||
blob3_pattern_.transition_type = animation.SINE
|
||||
blob3_pattern_.brightness = 200
|
||||
var lava_blob3_ = animation.beacon_animation(engine)
|
||||
var lava_blob3_ = animation.beacon(engine)
|
||||
lava_blob3_.color = blob3_pattern_ # color source
|
||||
lava_blob3_.pos = 25 # initial position
|
||||
lava_blob3_.beacon_size = 10 # smaller blob
|
||||
@ -117,11 +117,11 @@ palette lava_colors = [
|
||||
]
|
||||
|
||||
# Base lava animation - very slow color changes
|
||||
animation lava_base = rich_palette_animation(colors=lava_colors, period=15s, transition_type=SINE, brightness=180)
|
||||
animation lava_base = rich_palette(colors=lava_colors, period=15s, transition_type=SINE, brightness=180)
|
||||
|
||||
# Add slow-moving lava blobs
|
||||
color blob1_pattern = rich_palette_color(colors=lava_colors, period=12s, transition_type=SINE, brightness=255)
|
||||
animation lava_blob1 = beacon_animation(
|
||||
animation lava_blob1 = beacon(
|
||||
color=blob1_pattern # color source
|
||||
pos=9 # initial position
|
||||
beacon_size=18 # large blob
|
||||
@ -131,7 +131,7 @@ lava_blob1.priority = 10
|
||||
lava_blob1.pos = smooth(min_value=9, max_value=51, duration=20s) # Very slow movement
|
||||
|
||||
color blob2_pattern = rich_palette_color(colors=lava_colors, period=10s, transition_type=SINE, brightness=220)
|
||||
animation lava_blob2 = beacon_animation(
|
||||
animation lava_blob2 = beacon(
|
||||
color=blob2_pattern # color source
|
||||
pos=46 # initial position
|
||||
beacon_size=14 # medium blob
|
||||
@ -141,7 +141,7 @@ lava_blob2.priority = 8
|
||||
lava_blob2.pos = smooth(min_value=46, max_value=14, duration=25s) # Opposite direction, slower
|
||||
|
||||
color blob3_pattern = rich_palette_color(colors=lava_colors, period=8s, transition_type=SINE, brightness=200)
|
||||
animation lava_blob3 = beacon_animation(
|
||||
animation lava_blob3 = beacon(
|
||||
color=blob3_pattern # color source
|
||||
pos=25 # initial position
|
||||
beacon_size=10 # smaller blob
|
||||
|
||||
@ -18,7 +18,7 @@ var storm_colors_ = bytes(
|
||||
"80110022" # Dark purple
|
||||
"FF220033" # Slightly lighter purple
|
||||
)
|
||||
var storm_bg_ = animation.rich_palette_animation(engine)
|
||||
var storm_bg_ = animation.rich_palette(engine)
|
||||
storm_bg_.colors = storm_colors_
|
||||
storm_bg_.period = 12000
|
||||
storm_bg_.transition_type = animation.SINE
|
||||
@ -37,7 +37,7 @@ lightning_main_.opacity = (def (engine)
|
||||
end)(engine) # Quick bright flashes
|
||||
lightning_main_.priority = 20
|
||||
# Secondary lightning - partial strip
|
||||
var lightning_partial_ = animation.beacon_animation(engine)
|
||||
var lightning_partial_ = animation.beacon(engine)
|
||||
lightning_partial_.color = 0xFFFFFFAA # Slightly yellow white
|
||||
lightning_partial_.pos = 30 # center position
|
||||
lightning_partial_.beacon_size = 20 # covers part of strip
|
||||
@ -92,7 +92,7 @@ palette storm_colors = [
|
||||
(255, 0x220033) # Slightly lighter purple
|
||||
]
|
||||
|
||||
animation storm_bg = rich_palette_animation(colors=storm_colors, period=12s, transition_type=SINE, brightness=100)
|
||||
animation storm_bg = rich_palette(colors=storm_colors, period=12s, transition_type=SINE, brightness=100)
|
||||
|
||||
# Random lightning flashes - full strip
|
||||
animation lightning_main = solid(color=0xFFFFFF) # Bright white
|
||||
@ -100,7 +100,7 @@ lightning_main.opacity = square(min_value=0, max_value=255, duration=80ms, duty_
|
||||
lightning_main.priority = 20
|
||||
|
||||
# Secondary lightning - partial strip
|
||||
animation lightning_partial = beacon_animation(
|
||||
animation lightning_partial = beacon(
|
||||
color=0xFFFFAA # Slightly yellow white
|
||||
pos=30 # center position
|
||||
beacon_size=20 # covers part of strip
|
||||
|
||||
@ -31,7 +31,7 @@ stream1_pattern_.colors = matrix_greens_
|
||||
stream1_pattern_.period = 2000
|
||||
stream1_pattern_.transition_type = animation.LINEAR
|
||||
stream1_pattern_.brightness = 255
|
||||
var stream1_ = animation.comet_animation(engine)
|
||||
var stream1_ = animation.comet(engine)
|
||||
stream1_.color = stream1_pattern_ # color source
|
||||
stream1_.tail_length = 15 # long tail
|
||||
stream1_.speed = 1500 # speed
|
||||
@ -41,7 +41,7 @@ stream2_pattern_.colors = matrix_greens_
|
||||
stream2_pattern_.period = 1800
|
||||
stream2_pattern_.transition_type = animation.LINEAR
|
||||
stream2_pattern_.brightness = 200
|
||||
var stream2_ = animation.comet_animation(engine)
|
||||
var stream2_ = animation.comet(engine)
|
||||
stream2_.color = stream2_pattern_ # color source
|
||||
stream2_.tail_length = 12 # medium tail
|
||||
stream2_.speed = 2200 # different speed
|
||||
@ -51,7 +51,7 @@ stream3_pattern_.colors = matrix_greens_
|
||||
stream3_pattern_.period = 2500
|
||||
stream3_pattern_.transition_type = animation.LINEAR
|
||||
stream3_pattern_.brightness = 180
|
||||
var stream3_ = animation.comet_animation(engine)
|
||||
var stream3_ = animation.comet(engine)
|
||||
stream3_.color = stream3_pattern_ # color source
|
||||
stream3_.tail_length = 10 # shorter tail
|
||||
stream3_.speed = 1800 # another speed
|
||||
@ -92,7 +92,7 @@ palette matrix_greens = [
|
||||
|
||||
# Create multiple cascading streams
|
||||
color stream1_pattern = rich_palette_color(colors=matrix_greens, period=2s, transition_type=LINEAR, brightness=255)
|
||||
animation stream1 = comet_animation(
|
||||
animation stream1 = comet(
|
||||
color=stream1_pattern # color source
|
||||
tail_length=15 # long tail
|
||||
speed=1.5s # speed
|
||||
@ -101,7 +101,7 @@ animation stream1 = comet_animation(
|
||||
|
||||
|
||||
color stream2_pattern = rich_palette_color(colors=matrix_greens, period=1.8s, transition_type=LINEAR, brightness=200)
|
||||
animation stream2 = comet_animation(
|
||||
animation stream2 = comet(
|
||||
color=stream2_pattern # color source
|
||||
tail_length=12 # medium tail
|
||||
speed=2.2s # different speed
|
||||
@ -109,7 +109,7 @@ animation stream2 = comet_animation(
|
||||
)
|
||||
|
||||
color stream3_pattern = rich_palette_color(colors=matrix_greens, period=2.5s, transition_type=LINEAR, brightness=180)
|
||||
animation stream3 = comet_animation(
|
||||
animation stream3 = comet(
|
||||
color=stream3_pattern # color source
|
||||
tail_length=10 # shorter tail
|
||||
speed=1.8s # another speed
|
||||
|
||||
@ -17,22 +17,22 @@ var space_bg_ = 0xFF000011
|
||||
var background_ = animation.solid(engine)
|
||||
background_.color = space_bg_
|
||||
# Multiple meteors with different speeds and colors
|
||||
var meteor1_ = animation.comet_animation(engine)
|
||||
var meteor1_ = animation.comet(engine)
|
||||
meteor1_.color = 0xFFFFFFFF # Bright white
|
||||
meteor1_.tail_length = 12 # long trail
|
||||
meteor1_.speed = 1500 # fast speed
|
||||
meteor1_.priority = 15
|
||||
var meteor2_ = animation.comet_animation(engine)
|
||||
var meteor2_ = animation.comet(engine)
|
||||
meteor2_.color = 0xFFFFAA00 # Orange
|
||||
meteor2_.tail_length = 10 # medium trail
|
||||
meteor2_.speed = 2000 # medium speed
|
||||
meteor2_.priority = 12
|
||||
var meteor3_ = animation.comet_animation(engine)
|
||||
var meteor3_ = animation.comet(engine)
|
||||
meteor3_.color = 0xFFAAAAFF # Blue-white
|
||||
meteor3_.tail_length = 8 # shorter trail
|
||||
meteor3_.speed = 1800 # fast speed
|
||||
meteor3_.priority = 10
|
||||
var meteor4_ = animation.comet_animation(engine)
|
||||
var meteor4_ = animation.comet(engine)
|
||||
meteor4_.color = 0xFFFFAAAA # Pink-white
|
||||
meteor4_.tail_length = 14 # long trail
|
||||
meteor4_.speed = 2500 # slower speed
|
||||
@ -71,28 +71,28 @@ color space_bg = 0x000011
|
||||
animation background = solid(color=space_bg)
|
||||
|
||||
# Multiple meteors with different speeds and colors
|
||||
animation meteor1 = comet_animation(
|
||||
animation meteor1 = comet(
|
||||
color=0xFFFFFF # Bright white
|
||||
tail_length=12 # long trail
|
||||
speed=1.5s # fast speed
|
||||
)
|
||||
meteor1.priority = 15
|
||||
|
||||
animation meteor2 = comet_animation(
|
||||
animation meteor2 = comet(
|
||||
color=0xFFAA00 # Orange
|
||||
tail_length=10 # medium trail
|
||||
speed=2s # medium speed
|
||||
)
|
||||
meteor2.priority = 12
|
||||
|
||||
animation meteor3 = comet_animation(
|
||||
animation meteor3 = comet(
|
||||
color=0xAAAAFF # Blue-white
|
||||
tail_length=8 # shorter trail
|
||||
speed=1.8s # fast speed
|
||||
)
|
||||
meteor3.priority = 10
|
||||
|
||||
animation meteor4 = comet_animation(
|
||||
animation meteor4 = comet(
|
||||
color=0xFFAAAA # Pink-white
|
||||
tail_length=14 # long trail
|
||||
speed=2.5s # slower speed
|
||||
|
||||
@ -20,7 +20,7 @@ var neon_colors_ = bytes(
|
||||
"FFFF8000" # Neon orange
|
||||
)
|
||||
# Main neon glow with color cycling
|
||||
var neon_main_ = animation.rich_palette_animation(engine)
|
||||
var neon_main_ = animation.rich_palette(engine)
|
||||
neon_main_.colors = neon_colors_
|
||||
neon_main_.period = 4000
|
||||
neon_main_.transition_type = animation.LINEAR
|
||||
@ -52,19 +52,19 @@ segment_pattern_.colors = neon_colors_
|
||||
segment_pattern_.period = 4000
|
||||
segment_pattern_.transition_type = animation.LINEAR
|
||||
segment_pattern_.brightness = 255
|
||||
var segment1_ = animation.beacon_animation(engine)
|
||||
var segment1_ = animation.beacon(engine)
|
||||
segment1_.color = segment_pattern_ # color source
|
||||
segment1_.pos = 6 # position
|
||||
segment1_.beacon_size = 12 # segment length
|
||||
segment1_.slew_size = 1 # sharp edges
|
||||
segment1_.priority = 10
|
||||
var segment2_ = animation.beacon_animation(engine)
|
||||
var segment2_ = animation.beacon(engine)
|
||||
segment2_.color = segment_pattern_ # color source
|
||||
segment2_.pos = 24 # position
|
||||
segment2_.beacon_size = 12 # segment length
|
||||
segment2_.slew_size = 1 # sharp edges
|
||||
segment2_.priority = 10
|
||||
var segment3_ = animation.beacon_animation(engine)
|
||||
var segment3_ = animation.beacon(engine)
|
||||
segment3_.color = segment_pattern_ # color source
|
||||
segment3_.pos = 42 # position
|
||||
segment3_.beacon_size = 12 # segment length
|
||||
@ -101,7 +101,7 @@ palette neon_colors = [
|
||||
]
|
||||
|
||||
# Main neon glow with color cycling
|
||||
animation neon_main = rich_palette_animation(colors=neon_colors, period=4s, transition_type=LINEAR, brightness=255)
|
||||
animation neon_main = rich_palette(colors=neon_colors, period=4s, transition_type=LINEAR, brightness=255)
|
||||
|
||||
# Add electrical flickering
|
||||
neon_main.opacity = smooth(min_value=220, max_value=255, duration=200ms)
|
||||
@ -113,7 +113,7 @@ neon_surge.priority = 20
|
||||
|
||||
# Add neon tube segments with gaps
|
||||
color segment_pattern = rich_palette_color(colors=neon_colors, period=4s, transition_type=LINEAR, brightness=255)
|
||||
animation segment1 = beacon_animation(
|
||||
animation segment1 = beacon(
|
||||
color=segment_pattern # color source
|
||||
pos=6 # position
|
||||
beacon_size=12 # segment length
|
||||
@ -121,7 +121,7 @@ animation segment1 = beacon_animation(
|
||||
)
|
||||
segment1.priority = 10
|
||||
|
||||
animation segment2 = beacon_animation(
|
||||
animation segment2 = beacon(
|
||||
color=segment_pattern # color source
|
||||
pos=24 # position
|
||||
beacon_size=12 # segment length
|
||||
@ -129,7 +129,7 @@ animation segment2 = beacon_animation(
|
||||
)
|
||||
segment2.priority = 10
|
||||
|
||||
animation segment3 = beacon_animation(
|
||||
animation segment3 = beacon(
|
||||
color=segment_pattern # color source
|
||||
pos=42 # position
|
||||
beacon_size=12 # segment length
|
||||
|
||||
@ -21,7 +21,7 @@ var ocean_colors_ = bytes(
|
||||
"FF80FFFF" # Light cyan
|
||||
)
|
||||
# Base ocean animation with slow color cycling
|
||||
var ocean_base_ = animation.rich_palette_animation(engine)
|
||||
var ocean_base_ = animation.rich_palette(engine)
|
||||
ocean_base_.colors = ocean_colors_
|
||||
ocean_base_.period = 8000
|
||||
ocean_base_.transition_type = animation.SINE
|
||||
@ -32,7 +32,7 @@ wave1_pattern_.colors = ocean_colors_
|
||||
wave1_pattern_.period = 6000
|
||||
wave1_pattern_.transition_type = animation.SINE
|
||||
wave1_pattern_.brightness = 255
|
||||
var wave1_ = animation.beacon_animation(engine)
|
||||
var wave1_ = animation.beacon(engine)
|
||||
wave1_.color = wave1_pattern_ # color source
|
||||
wave1_.pos = 0 # initial position
|
||||
wave1_.beacon_size = 12 # wave width
|
||||
@ -50,7 +50,7 @@ wave2_pattern_.colors = ocean_colors_
|
||||
wave2_pattern_.period = 4000
|
||||
wave2_pattern_.transition_type = animation.SINE
|
||||
wave2_pattern_.brightness = 180
|
||||
var wave2_ = animation.beacon_animation(engine)
|
||||
var wave2_ = animation.beacon(engine)
|
||||
wave2_.color = wave2_pattern_ # color source
|
||||
wave2_.pos = 52 # initial position
|
||||
wave2_.beacon_size = 8 # smaller wave
|
||||
@ -93,11 +93,11 @@ palette ocean_colors = [
|
||||
]
|
||||
|
||||
# Base ocean animation with slow color cycling
|
||||
animation ocean_base = rich_palette_animation(colors=ocean_colors, period=8s, transition_type=SINE, brightness=200)
|
||||
animation ocean_base = rich_palette(colors=ocean_colors, period=8s, transition_type=SINE, brightness=200)
|
||||
|
||||
# Add wave motion with moving pulses
|
||||
color wave1_pattern = rich_palette_color(colors=ocean_colors, period=6s, transition_type=SINE, brightness=255)
|
||||
animation wave1 = beacon_animation(
|
||||
animation wave1 = beacon(
|
||||
color=wave1_pattern # color source
|
||||
pos=0 # initial position
|
||||
beacon_size=12 # wave width
|
||||
@ -107,7 +107,7 @@ wave1.priority = 10
|
||||
wave1.pos = sawtooth(min_value=0, max_value=48, duration=5s) # 60-12 = 48
|
||||
|
||||
color wave2_pattern = rich_palette_color(colors=ocean_colors, period=4s, transition_type=SINE, brightness=180)
|
||||
animation wave2 = beacon_animation(
|
||||
animation wave2 = beacon(
|
||||
color=wave2_pattern # color source
|
||||
pos=52 # initial position
|
||||
beacon_size=8 # smaller wave
|
||||
|
||||
@ -23,10 +23,10 @@ var ocean_colors_ = bytes(
|
||||
"FF008000" # Green
|
||||
)
|
||||
# Create animations using the palettes
|
||||
var fire_anim_ = animation.rich_palette_animation(engine)
|
||||
var fire_anim_ = animation.rich_palette(engine)
|
||||
fire_anim_.colors = fire_colors_
|
||||
fire_anim_.period = 5000
|
||||
var ocean_anim_ = animation.rich_palette_animation(engine)
|
||||
var ocean_anim_ = animation.rich_palette(engine)
|
||||
ocean_anim_.colors = ocean_colors_
|
||||
ocean_anim_.period = 8000
|
||||
# Sequence to show both palettes
|
||||
@ -62,9 +62,9 @@ palette ocean_colors = [
|
||||
]
|
||||
|
||||
# Create animations using the palettes
|
||||
animation fire_anim = rich_palette_animation(colors=fire_colors, period=5s)
|
||||
animation fire_anim = rich_palette(colors=fire_colors, period=5s)
|
||||
|
||||
animation ocean_anim = rich_palette_animation(colors=ocean_colors, period=8s)
|
||||
animation ocean_anim = rich_palette(colors=ocean_colors, period=8s)
|
||||
|
||||
# Sequence to show both palettes
|
||||
sequence palette_demo {
|
||||
|
||||
@ -56,17 +56,17 @@ fire_effect_.color = (def (engine)
|
||||
provider.period = 3000
|
||||
return provider
|
||||
end)(engine)
|
||||
var ocean_waves_ = animation.rich_palette_animation(engine)
|
||||
var ocean_waves_ = animation.rich_palette(engine)
|
||||
ocean_waves_.colors = ocean_depths_
|
||||
ocean_waves_.period = 8000
|
||||
ocean_waves_.transition_type = animation.SINE
|
||||
ocean_waves_.brightness = 200
|
||||
var aurora_lights_ = animation.rich_palette_animation(engine)
|
||||
var aurora_lights_ = animation.rich_palette(engine)
|
||||
aurora_lights_.colors = aurora_borealis_
|
||||
aurora_lights_.period = 12000
|
||||
aurora_lights_.transition_type = animation.SINE
|
||||
aurora_lights_.brightness = 180
|
||||
var sunset_glow_ = animation.rich_palette_animation(engine)
|
||||
var sunset_glow_ = animation.rich_palette(engine)
|
||||
sunset_glow_.colors = sunset_sky_
|
||||
sunset_glow_.period = 6000
|
||||
sunset_glow_.transition_type = animation.SINE
|
||||
@ -145,11 +145,11 @@ palette sunset_sky = [
|
||||
# Create animations using each palette
|
||||
animation fire_effect = solid(color=rich_palette_color(colors=fire_gradient, period=3s))
|
||||
|
||||
animation ocean_waves = rich_palette_animation(colors=ocean_depths, period=8s, transition_type=SINE, brightness=200)
|
||||
animation ocean_waves = rich_palette(colors=ocean_depths, period=8s, transition_type=SINE, brightness=200)
|
||||
|
||||
animation aurora_lights = rich_palette_animation(colors=aurora_borealis, period=12s, transition_type=SINE, brightness=180)
|
||||
animation aurora_lights = rich_palette(colors=aurora_borealis, period=12s, transition_type=SINE, brightness=180)
|
||||
|
||||
animation sunset_glow = rich_palette_animation(colors=sunset_sky, period=6s, transition_type=SINE, brightness=220)
|
||||
animation sunset_glow = rich_palette(colors=sunset_sky, period=6s, transition_type=SINE, brightness=220)
|
||||
|
||||
# Sequence to showcase all palettes
|
||||
sequence palette_showcase {
|
||||
|
||||
@ -22,7 +22,7 @@ var plasma_colors_ = bytes(
|
||||
"FF0080FF" # Blue
|
||||
)
|
||||
# Base plasma animation with medium speed
|
||||
var plasma_base_ = animation.rich_palette_animation(engine)
|
||||
var plasma_base_ = animation.rich_palette(engine)
|
||||
plasma_base_.colors = plasma_colors_
|
||||
plasma_base_.period = 6000
|
||||
plasma_base_.transition_type = animation.SINE
|
||||
@ -33,7 +33,7 @@ wave1_pattern_.colors = plasma_colors_
|
||||
wave1_pattern_.period = 4000
|
||||
wave1_pattern_.transition_type = animation.SINE
|
||||
wave1_pattern_.brightness = 255
|
||||
var plasma_wave1_ = animation.beacon_animation(engine)
|
||||
var plasma_wave1_ = animation.beacon(engine)
|
||||
plasma_wave1_.color = wave1_pattern_ # color source
|
||||
plasma_wave1_.pos = 0 # initial position
|
||||
plasma_wave1_.beacon_size = 20 # wide wave
|
||||
@ -51,7 +51,7 @@ wave2_pattern_.colors = plasma_colors_
|
||||
wave2_pattern_.period = 5000
|
||||
wave2_pattern_.transition_type = animation.SINE
|
||||
wave2_pattern_.brightness = 180
|
||||
var plasma_wave2_ = animation.beacon_animation(engine)
|
||||
var plasma_wave2_ = animation.beacon(engine)
|
||||
plasma_wave2_.color = wave2_pattern_ # color source
|
||||
plasma_wave2_.pos = 45 # initial position
|
||||
plasma_wave2_.beacon_size = 15 # medium wave
|
||||
@ -69,7 +69,7 @@ wave3_pattern_.colors = plasma_colors_
|
||||
wave3_pattern_.period = 3000
|
||||
wave3_pattern_.transition_type = animation.SINE
|
||||
wave3_pattern_.brightness = 220
|
||||
var plasma_wave3_ = animation.beacon_animation(engine)
|
||||
var plasma_wave3_ = animation.beacon(engine)
|
||||
plasma_wave3_.color = wave3_pattern_ # color source
|
||||
plasma_wave3_.pos = 20 # initial position
|
||||
plasma_wave3_.beacon_size = 12 # smaller wave
|
||||
@ -115,11 +115,11 @@ palette plasma_colors = [
|
||||
]
|
||||
|
||||
# Base plasma animation with medium speed
|
||||
animation plasma_base = rich_palette_animation(colors=plasma_colors, period=6s, transition_type=SINE, brightness=200)
|
||||
animation plasma_base = rich_palette(colors=plasma_colors, period=6s, transition_type=SINE, brightness=200)
|
||||
|
||||
# Add multiple wave layers for complexity
|
||||
color wave1_pattern = rich_palette_color(colors=plasma_colors, period=4s, transition_type=SINE, brightness=255)
|
||||
animation plasma_wave1 = beacon_animation(
|
||||
animation plasma_wave1 = beacon(
|
||||
color=wave1_pattern # color source
|
||||
pos=0 # initial position
|
||||
beacon_size=20 # wide wave
|
||||
@ -129,7 +129,7 @@ plasma_wave1.priority = 10
|
||||
plasma_wave1.pos = smooth(min_value=0, max_value=40, duration=8s)
|
||||
|
||||
color wave2_pattern = rich_palette_color(colors=plasma_colors, period=5s, transition_type=SINE, brightness=180)
|
||||
animation plasma_wave2 = beacon_animation(
|
||||
animation plasma_wave2 = beacon(
|
||||
color=wave2_pattern # color source
|
||||
pos=45 # initial position
|
||||
beacon_size=15 # medium wave
|
||||
@ -139,7 +139,7 @@ plasma_wave2.priority = 8
|
||||
plasma_wave2.pos = smooth(min_value=45, max_value=15, duration=10s) # Opposite direction
|
||||
|
||||
color wave3_pattern = rich_palette_color(colors=plasma_colors, period=3s, transition_type=SINE, brightness=220)
|
||||
animation plasma_wave3 = beacon_animation(
|
||||
animation plasma_wave3 = beacon(
|
||||
color=wave3_pattern # color source
|
||||
pos=20 # initial position
|
||||
beacon_size=12 # smaller wave
|
||||
|
||||
@ -15,7 +15,7 @@ var engine = animation.init_strip()
|
||||
|
||||
var half_length_ = 30
|
||||
# Left side red flashing
|
||||
var left_red_ = animation.beacon_animation(engine)
|
||||
var left_red_ = animation.beacon(engine)
|
||||
left_red_.color = 0xFFFF0000 # Bright red
|
||||
left_red_.pos = 15 # center of left half
|
||||
left_red_.beacon_size = 15 # half the strip
|
||||
@ -30,7 +30,7 @@ left_red_.opacity = (def (engine)
|
||||
return provider
|
||||
end)(engine) # 50% duty cycle
|
||||
# Right side blue flashing (opposite phase)
|
||||
var right_blue_ = animation.beacon_animation(engine)
|
||||
var right_blue_ = animation.beacon(engine)
|
||||
right_blue_.color = 0xFF0000FF # Bright blue
|
||||
right_blue_.pos = 45 # center of right half
|
||||
right_blue_.beacon_size = 15 # half the strip
|
||||
@ -73,7 +73,7 @@ engine.run()
|
||||
set half_length = 30
|
||||
|
||||
# Left side red flashing
|
||||
animation left_red = beacon_animation(
|
||||
animation left_red = beacon(
|
||||
color=0xFF0000 # Bright red
|
||||
pos=15 # center of left half
|
||||
beacon_size=15 # half the strip
|
||||
@ -83,7 +83,7 @@ left_red.priority = 10
|
||||
left_red.opacity = square(min_value=0, max_value=255, duration=400ms, duty_cycle=50) # 50% duty cycle
|
||||
|
||||
# Right side blue flashing (opposite phase)
|
||||
animation right_blue = beacon_animation(
|
||||
animation right_blue = beacon(
|
||||
color=0x0000FF # Bright blue
|
||||
pos=45 # center of right half
|
||||
beacon_size=15 # half the strip
|
||||
|
||||
@ -17,17 +17,17 @@ var red_custom_ = 0xFFFF0000
|
||||
var blue_custom_ = 0xFF0000FF
|
||||
var green_custom_ = 0xFF00FF00
|
||||
# Create animations
|
||||
var left_pulse_ = animation.beacon_animation(engine)
|
||||
var left_pulse_ = animation.beacon(engine)
|
||||
left_pulse_.color = red_custom_
|
||||
left_pulse_.pos = 15
|
||||
left_pulse_.beacon_size = 15
|
||||
left_pulse_.slew_size = 3
|
||||
var center_pulse_ = animation.beacon_animation(engine)
|
||||
var center_pulse_ = animation.beacon(engine)
|
||||
center_pulse_.color = blue_custom_
|
||||
center_pulse_.pos = 30
|
||||
center_pulse_.beacon_size = 15
|
||||
center_pulse_.slew_size = 3
|
||||
var right_pulse_ = animation.beacon_animation(engine)
|
||||
var right_pulse_ = animation.beacon(engine)
|
||||
right_pulse_.color = green_custom_
|
||||
right_pulse_.pos = 45
|
||||
right_pulse_.beacon_size = 15
|
||||
@ -71,9 +71,9 @@ color blue_custom = 0x0000FF
|
||||
color green_custom = 0x00FF00
|
||||
|
||||
# Create animations
|
||||
animation left_pulse = beacon_animation(color=red_custom, pos=15, beacon_size=15, slew_size=3)
|
||||
animation center_pulse = beacon_animation(color=blue_custom, pos=30, beacon_size=15, slew_size=3)
|
||||
animation right_pulse = beacon_animation(color=green_custom, pos=45, beacon_size=15, slew_size=3)
|
||||
animation left_pulse = beacon(color=red_custom, pos=15, beacon_size=15, slew_size=3)
|
||||
animation center_pulse = beacon(color=blue_custom, pos=30, beacon_size=15, slew_size=3)
|
||||
animation right_pulse = beacon(color=green_custom, pos=45, beacon_size=15, slew_size=3)
|
||||
|
||||
# Set different opacities
|
||||
left_pulse.opacity = 255 # Full slew_size
|
||||
|
||||
@ -17,7 +17,7 @@ var scanner_bg_ = 0xFF110000
|
||||
var background_ = animation.solid(engine)
|
||||
background_.color = scanner_bg_
|
||||
# Main scanner pulse that bounces
|
||||
var scanner_ = animation.beacon_animation(engine)
|
||||
var scanner_ = animation.beacon(engine)
|
||||
scanner_.color = 0xFFFF0000 # Bright red
|
||||
scanner_.pos = 2 # initial position
|
||||
scanner_.beacon_size = 3 # pulse width
|
||||
@ -32,7 +32,7 @@ scanner_.pos = (def (engine)
|
||||
return provider
|
||||
end)(engine)
|
||||
# Add trailing glow effect
|
||||
var scanner_trail_ = animation.beacon_animation(engine)
|
||||
var scanner_trail_ = animation.beacon(engine)
|
||||
scanner_trail_.color = 0xFF660000 # Dim red trail
|
||||
scanner_trail_.pos = 2 # initial position
|
||||
scanner_trail_.beacon_size = 6 # wider trail
|
||||
@ -65,7 +65,7 @@ color scanner_bg = 0x110000
|
||||
animation background = solid(color=scanner_bg)
|
||||
|
||||
# Main scanner pulse that bounces
|
||||
animation scanner = beacon_animation(
|
||||
animation scanner = beacon(
|
||||
color=0xFF0000 # Bright red
|
||||
pos=2 # initial position
|
||||
beacon_size=3 # pulse width
|
||||
@ -77,7 +77,7 @@ scanner.priority = 10
|
||||
scanner.pos = triangle(min_value=2, max_value=57, duration=2s)
|
||||
|
||||
# Add trailing glow effect
|
||||
animation scanner_trail = beacon_animation(
|
||||
animation scanner_trail = beacon(
|
||||
color=0x660000 # Dim red trail
|
||||
pos=2 # initial position
|
||||
beacon_size=6 # wider trail
|
||||
|
||||
@ -35,13 +35,13 @@ var eye_color_ = animation.color_cycle(engine)
|
||||
eye_color_.colors = eye_palette_
|
||||
eye_color_.period = 0
|
||||
# Create animations
|
||||
var red_eye_ = animation.beacon_animation(engine)
|
||||
var red_eye_ = animation.beacon(engine)
|
||||
red_eye_.color = eye_color_
|
||||
red_eye_.pos = cosine_val_
|
||||
red_eye_.beacon_size = 3
|
||||
red_eye_.slew_size = 2
|
||||
red_eye_.priority = 10
|
||||
var pulse_demo_ = animation.pulsating_animation(engine)
|
||||
var pulse_demo_ = animation.breathe(engine)
|
||||
pulse_demo_.color = 0xFF0000FF
|
||||
pulse_demo_.period = 2000
|
||||
pulse_demo_.priority = 5
|
||||
@ -129,7 +129,7 @@ palette eye_palette = [red, yellow, green, violet]
|
||||
color eye_color = color_cycle(colors=eye_palette, period=0)
|
||||
|
||||
# Create animations
|
||||
animation red_eye = beacon_animation(
|
||||
animation red_eye = beacon(
|
||||
color=eye_color
|
||||
pos=cosine_val
|
||||
beacon_size=3
|
||||
@ -137,7 +137,7 @@ animation red_eye = beacon_animation(
|
||||
priority=10
|
||||
)
|
||||
|
||||
animation pulse_demo = pulsating_animation(
|
||||
animation pulse_demo = breathe(
|
||||
color=blue
|
||||
period=2s
|
||||
priority=5
|
||||
|
||||
@ -15,7 +15,7 @@ var engine = animation.init_strip()
|
||||
|
||||
var rainbow_ = bytes("00FF0000" "40FFA500" "80FFFF00" "C0008000" "FF0000FF")
|
||||
# Create an animation using the palette
|
||||
var rainbow_cycle_ = animation.rich_palette_animation(engine)
|
||||
var rainbow_cycle_ = animation.rich_palette(engine)
|
||||
rainbow_cycle_.colors = rainbow_
|
||||
rainbow_cycle_.period = 3000
|
||||
# Simple sequence
|
||||
@ -41,7 +41,7 @@ palette rainbow = [
|
||||
]
|
||||
|
||||
# Create an animation using the palette
|
||||
animation rainbow_cycle = rich_palette_animation(colors=rainbow, period=3s)
|
||||
animation rainbow_cycle = rich_palette(colors=rainbow, period=3s)
|
||||
|
||||
# Simple sequence
|
||||
sequence demo {
|
||||
|
||||
@ -25,11 +25,11 @@ var daylight_colors_ = bytes(
|
||||
"FF220011" # Night - dark red
|
||||
)
|
||||
# Main daylight cycle - very slow transition
|
||||
var daylight_cycle_ = animation.rich_palette_animation(engine)
|
||||
var daylight_cycle_ = animation.rich_palette(engine)
|
||||
daylight_cycle_.colors = daylight_colors_
|
||||
daylight_cycle_.period = 60000
|
||||
# Add sun position effect - bright spot that moves
|
||||
var sun_position_ = animation.beacon_animation(engine)
|
||||
var sun_position_ = animation.beacon(engine)
|
||||
sun_position_.color = 0xFFFFFFAA # Bright yellow sun
|
||||
sun_position_.pos = 5 # initial position
|
||||
sun_position_.beacon_size = 8 # sun size
|
||||
@ -50,7 +50,7 @@ sun_position_.opacity = (def (engine)
|
||||
return provider
|
||||
end)(engine) # Fade in and out
|
||||
# Add atmospheric glow around sun
|
||||
var sun_glow_ = animation.beacon_animation(engine)
|
||||
var sun_glow_ = animation.beacon(engine)
|
||||
sun_glow_.color = 0xFFFFCC88 # Warm glow
|
||||
sun_glow_.pos = 5 # initial position
|
||||
sun_glow_.beacon_size = 16 # larger glow
|
||||
@ -111,10 +111,10 @@ palette daylight_colors = [
|
||||
]
|
||||
|
||||
# Main daylight cycle - very slow transition
|
||||
animation daylight_cycle = rich_palette_animation(colors=daylight_colors, period=60s)
|
||||
animation daylight_cycle = rich_palette(colors=daylight_colors, period=60s)
|
||||
|
||||
# Add sun position effect - bright spot that moves
|
||||
animation sun_position = beacon_animation(
|
||||
animation sun_position = beacon(
|
||||
color=0xFFFFAA # Bright yellow sun
|
||||
pos=5 # initial position
|
||||
beacon_size=8 # sun size
|
||||
@ -125,7 +125,7 @@ sun_position.pos = smooth(min_value=5, max_value=55, duration=30s) # Sun arc ac
|
||||
sun_position.opacity = smooth(min_value=0, max_value=255, duration=30s) # Fade in and out
|
||||
|
||||
# Add atmospheric glow around sun
|
||||
animation sun_glow = beacon_animation(
|
||||
animation sun_glow = beacon(
|
||||
color=0xFFCC88 # Warm glow
|
||||
pos=5 # initial position
|
||||
beacon_size=16 # larger glow
|
||||
|
||||
@ -21,7 +21,7 @@ class cylon_effect_animation : animation.engine_proxy
|
||||
var engine = self # using 'self' as a proxy to engine object (instead of 'self.engine')
|
||||
|
||||
var strip_len_ = animation.strip_length(engine)
|
||||
var eye_animation_ = animation.beacon_animation(engine)
|
||||
var eye_animation_ = animation.beacon(engine)
|
||||
eye_animation_.color = animation.create_closure_value(engine, def (engine) return self.eye_color end)
|
||||
eye_animation_.back_color = animation.create_closure_value(engine, def (engine) return self.back_color end)
|
||||
eye_animation_.pos = (def (engine)
|
||||
@ -51,7 +51,7 @@ template animation cylon_effect {
|
||||
|
||||
set strip_len = strip_length()
|
||||
|
||||
animation eye_animation = beacon_animation(
|
||||
animation eye_animation = beacon(
|
||||
color = eye_color
|
||||
back_color = back_color
|
||||
pos = cosine_osc(min_value = -1, max_value = strip_len - 2, duration = period)
|
||||
|
||||
@ -24,7 +24,7 @@ class rainbow_pulse_animation : animation.engine_proxy
|
||||
cycle_color_.colors = animation.create_closure_value(engine, def (engine) return self.pal1 end)
|
||||
cycle_color_.period = animation.create_closure_value(engine, def (engine) return self.period end)
|
||||
# Create pulsing animation
|
||||
var pulse_ = animation.pulsating_animation(engine)
|
||||
var pulse_ = animation.breathe(engine)
|
||||
pulse_.color = cycle_color_
|
||||
pulse_.period = animation.create_closure_value(engine, def (engine) return self.period end)
|
||||
# Create background
|
||||
@ -71,7 +71,7 @@ template animation rainbow_pulse {
|
||||
color cycle_color = color_cycle(colors=pal1, period=period)
|
||||
|
||||
# Create pulsing animation
|
||||
animation pulse = pulsating_animation(
|
||||
animation pulse = breathe(
|
||||
color=cycle_color
|
||||
period=period
|
||||
)
|
||||
|
||||
@ -36,7 +36,7 @@ class shutter_bidir_animation : animation.engine_proxy
|
||||
col2_.period = 0
|
||||
col2_.next = 1
|
||||
# shutter moving from left to right
|
||||
var shutter_lr_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_lr_animation_ = animation.beacon(engine)
|
||||
shutter_lr_animation_.color = col2_
|
||||
shutter_lr_animation_.back_color = col1_
|
||||
shutter_lr_animation_.pos = 0
|
||||
@ -44,7 +44,7 @@ class shutter_bidir_animation : animation.engine_proxy
|
||||
shutter_lr_animation_.slew_size = 0
|
||||
shutter_lr_animation_.priority = 5
|
||||
# shutter moving from right to left
|
||||
var shutter_rl_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_rl_animation_ = animation.beacon(engine)
|
||||
shutter_rl_animation_.color = col1_
|
||||
shutter_rl_animation_.back_color = col2_
|
||||
shutter_rl_animation_.pos = 0
|
||||
@ -106,7 +106,7 @@ template animation shutter_bidir {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving from left to right
|
||||
animation shutter_lr_animation = beacon_animation(
|
||||
animation shutter_lr_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = 0
|
||||
@ -116,7 +116,7 @@ template animation shutter_bidir {
|
||||
)
|
||||
|
||||
# shutter moving from right to left
|
||||
animation shutter_rl_animation = beacon_animation(
|
||||
animation shutter_rl_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = 0
|
||||
|
||||
@ -36,7 +36,7 @@ class shutter_central_animation : animation.engine_proxy
|
||||
col2_.period = 0
|
||||
col2_.next = 1
|
||||
# shutter moving from left to right
|
||||
var shutter_central_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_central_animation_ = animation.beacon(engine)
|
||||
shutter_central_animation_.color = col2_
|
||||
shutter_central_animation_.back_color = col1_
|
||||
shutter_central_animation_.pos = animation.create_closure_value(engine, def (engine) return animation.resolve(strip_len_) - animation.resolve(shutter_size_) / 2 end)
|
||||
@ -88,7 +88,7 @@ template animation shutter_central {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving from left to right
|
||||
animation shutter_central_animation = beacon_animation(
|
||||
animation shutter_central_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = strip_len - shutter_size / 2
|
||||
|
||||
@ -36,7 +36,7 @@ class shutter_central_animation : animation.engine_proxy
|
||||
col2_.period = 0
|
||||
col2_.next = 1
|
||||
# shutter moving in to out
|
||||
var shutter_inout_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_inout_animation_ = animation.beacon(engine)
|
||||
shutter_inout_animation_.color = col2_
|
||||
shutter_inout_animation_.back_color = col1_
|
||||
shutter_inout_animation_.pos = animation.create_closure_value(engine, def (engine) return animation.resolve(strip_len2_) - (animation.resolve(shutter_size_) + 1) / 2 end)
|
||||
@ -44,7 +44,7 @@ class shutter_central_animation : animation.engine_proxy
|
||||
shutter_inout_animation_.slew_size = 0
|
||||
shutter_inout_animation_.priority = 5
|
||||
# shutter moving out to in
|
||||
var shutter_outin_animation_ = animation.beacon_animation(engine)
|
||||
var shutter_outin_animation_ = animation.beacon(engine)
|
||||
shutter_outin_animation_.color = col1_
|
||||
shutter_outin_animation_.back_color = col2_
|
||||
shutter_outin_animation_.pos = animation.create_closure_value(engine, def (engine) return animation.resolve(strip_len2_) - (animation.resolve(strip_len_) - animation.resolve(shutter_size_) + 1) / 2 end)
|
||||
@ -96,7 +96,7 @@ template animation shutter_central {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving in to out
|
||||
animation shutter_inout_animation = beacon_animation(
|
||||
animation shutter_inout_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = strip_len2 - (shutter_size + 1) / 2
|
||||
@ -106,7 +106,7 @@ template animation shutter_central {
|
||||
)
|
||||
|
||||
# shutter moving out to in
|
||||
animation shutter_outin_animation = beacon_animation(
|
||||
animation shutter_outin_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = strip_len2 - (strip_len - shutter_size + 1) / 2
|
||||
|
||||
@ -20,7 +20,7 @@ class pulse_effect_animation : animation.engine_proxy
|
||||
def setup_template()
|
||||
var engine = self # using 'self' as a proxy to engine object (instead of 'self.engine')
|
||||
|
||||
var pulse_ = animation.pulsating_animation(engine)
|
||||
var pulse_ = animation.breathe(engine)
|
||||
pulse_.color = animation.create_closure_value(engine, def (engine) return self.base_color end)
|
||||
pulse_.period = animation.create_closure_value(engine, def (engine) return self.period end)
|
||||
pulse_.opacity = animation.create_closure_value(engine, def (engine) return self.brightness end)
|
||||
@ -49,7 +49,7 @@ template animation pulse_effect {
|
||||
param period type time
|
||||
param brightness type percentage
|
||||
|
||||
animation pulse = pulsating_animation(
|
||||
animation pulse = breathe(
|
||||
color=base_color
|
||||
period=period
|
||||
)
|
||||
|
||||
@ -20,7 +20,7 @@ class pulse_effect_animation : animation.engine_proxy
|
||||
def setup_template()
|
||||
var engine = self # using 'self' as a proxy to engine object (instead of 'self.engine')
|
||||
|
||||
var pulse_ = animation.pulsating_animation(engine)
|
||||
var pulse_ = animation.breathe(engine)
|
||||
pulse_.color = animation.create_closure_value(engine, def (engine) return self.base_color end)
|
||||
pulse_.period = animation.create_closure_value(engine, def (engine) return self.period end)
|
||||
pulse_.opacity = animation.create_closure_value(engine, def (engine) return self.brightness end)
|
||||
@ -49,7 +49,7 @@ template animation pulse_effect {
|
||||
param period type time
|
||||
param brightness type percentage
|
||||
|
||||
animation pulse = pulsating_animation(
|
||||
animation pulse = breathe(
|
||||
color=base_color
|
||||
period=period
|
||||
)
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
set strip_len = strip_length()
|
||||
|
||||
# Create animation with computed values
|
||||
animation stream1 = comet_animation(
|
||||
animation stream1 = comet(
|
||||
color=red
|
||||
tail_length=abs(strip_len / 4) # computed value
|
||||
speed=1.5
|
||||
@ -14,7 +14,7 @@ animation stream1 = comet_animation(
|
||||
|
||||
# More complex computed values
|
||||
set base_speed = 2.0
|
||||
animation stream2 = comet_animation(
|
||||
animation stream2 = comet(
|
||||
color=blue
|
||||
tail_length=strip_len / 8 + (2 * strip_len) -10 # computed with addition
|
||||
speed=base_speed * 1.5 # computed with multiplication
|
||||
|
||||
@ -8,7 +8,7 @@ template animation cylon {
|
||||
|
||||
set strip_len = strip_length()
|
||||
|
||||
animation eye_animation = beacon_animation(
|
||||
animation eye_animation = beacon(
|
||||
color = eye_color
|
||||
back_color = back_color
|
||||
pos = cosine_osc(min_value = -1, max_value = strip_len - 2, duration = period)
|
||||
|
||||
@ -12,7 +12,7 @@ color eye_color = color_cycle(colors=eye_palette, period=0)
|
||||
set cosine_val = cosine_osc(min_value = 0, max_value = strip_len - 2, duration = eye_duration)
|
||||
set triangle_val = triangle(min_value = 0, max_value = strip_len - 2, duration = eye_duration)
|
||||
|
||||
animation red_eye = beacon_animation(
|
||||
animation red_eye = beacon(
|
||||
color = eye_color # palette that will advance when we do `eye_color.next = 1`
|
||||
pos = cosine_val # oscillator for position
|
||||
beacon_size = 3 # small 3 pixels eye
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
set strip_len = strip_length()
|
||||
|
||||
# Base aurora animation with slow flowing colors
|
||||
animation red_eye = beacon_animation(
|
||||
animation red_eye = beacon(
|
||||
color = red
|
||||
pos = cosine_osc(min_value = 0, max_value = strip_len - 2, duration = 5s)
|
||||
beacon_size = 3 # small 3 pixels eye
|
||||
|
||||
@ -15,7 +15,7 @@ animation background = solid(color=0x000088, priority=20)
|
||||
run background
|
||||
|
||||
set eye_pos = cosine_osc(min_value = -1, max_value = strip_len - 2, duration = 6s)
|
||||
animation eye_mask = beacon_animation(
|
||||
animation eye_mask = beacon(
|
||||
color = white
|
||||
back_color = transparent
|
||||
pos = eye_pos
|
||||
@ -24,7 +24,7 @@ animation eye_mask = beacon_animation(
|
||||
priority = 5
|
||||
)
|
||||
|
||||
animation fire_pattern = palette_gradient_animation(
|
||||
animation fire_pattern = palette_gradient(
|
||||
color_source = fire_color
|
||||
spatial_period = strip_len / 4
|
||||
opacity = eye_mask
|
||||
|
||||
@ -11,7 +11,7 @@ set duration = 3s
|
||||
color col2 = color_cycle(colors=PALETTE_RAINBOW, period=0)
|
||||
col2.next = 1
|
||||
|
||||
animation shutter_animation = beacon_animation(
|
||||
animation shutter_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = 0
|
||||
|
||||
@ -14,7 +14,7 @@ template animation shutter_bidir {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving from left to right
|
||||
animation shutter_lr_animation = beacon_animation(
|
||||
animation shutter_lr_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = 0
|
||||
@ -24,7 +24,7 @@ template animation shutter_bidir {
|
||||
)
|
||||
|
||||
# shutter moving from right to left
|
||||
animation shutter_rl_animation = beacon_animation(
|
||||
animation shutter_rl_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = 0
|
||||
|
||||
@ -15,7 +15,7 @@ template animation shutter_central {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving in to out
|
||||
animation shutter_inout_animation = beacon_animation(
|
||||
animation shutter_inout_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = strip_len2 - (shutter_size + 1) / 2
|
||||
@ -25,7 +25,7 @@ template animation shutter_central {
|
||||
)
|
||||
|
||||
# shutter moving out to in
|
||||
animation shutter_outin_animation = beacon_animation(
|
||||
animation shutter_outin_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = strip_len2 - (strip_len - shutter_size + 1) / 2
|
||||
|
||||
@ -14,7 +14,7 @@ template animation shutter_lr {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving from left to right
|
||||
animation shutter_lr_animation = beacon_animation(
|
||||
animation shutter_lr_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = 0
|
||||
|
||||
@ -24,6 +24,6 @@ palette rainbow_with_white = [
|
||||
]
|
||||
|
||||
# define a gradient across the whole strip
|
||||
animation back_pattern = palette_meter_animation(level = rand_meter())
|
||||
animation back_pattern = palette_meter(level = rand_meter())
|
||||
|
||||
run back_pattern
|
||||
|
||||
@ -37,7 +37,7 @@ disco_sparkles.priority = 15
|
||||
|
||||
# Add moving pulse for extra effect
|
||||
color pulse_pattern = rich_palette_color(colors=disco_colors, period=800ms, transition_type=LINEAR, brightness=255)
|
||||
animation disco_pulse = beacon_animation(
|
||||
animation disco_pulse = beacon(
|
||||
color=pulse_pattern # color source
|
||||
pos=4 # initial position
|
||||
beacon_size=8 # pulse width
|
||||
|
||||
@ -25,7 +25,7 @@ heart_glow.opacity = smooth(min_value=30, max_value=100, duration=1s) # Gentle
|
||||
heart_glow.priority = 5
|
||||
|
||||
# Add center pulse for emphasis
|
||||
animation center_pulse = beacon_animation(
|
||||
animation center_pulse = beacon(
|
||||
color=0xFFFFFF # White center
|
||||
pos=30 # center of strip
|
||||
beacon_size=4 # small center
|
||||
|
||||
@ -13,11 +13,11 @@ palette lava_colors = [
|
||||
]
|
||||
|
||||
# Base lava animation - very slow color changes
|
||||
animation lava_base = rich_palette_animation(colors=lava_colors, period=15s, transition_type=SINE, brightness=180)
|
||||
animation lava_base = rich_palette(colors=lava_colors, period=15s, transition_type=SINE, brightness=180)
|
||||
|
||||
# Add slow-moving lava blobs
|
||||
color blob1_pattern = rich_palette_color(colors=lava_colors, period=12s, transition_type=SINE, brightness=255)
|
||||
animation lava_blob1 = beacon_animation(
|
||||
animation lava_blob1 = beacon(
|
||||
color=blob1_pattern # color source
|
||||
pos=9 # initial position
|
||||
beacon_size=18 # large blob
|
||||
@ -27,7 +27,7 @@ lava_blob1.priority = 10
|
||||
lava_blob1.pos = smooth(min_value=9, max_value=51, duration=20s) # Very slow movement
|
||||
|
||||
color blob2_pattern = rich_palette_color(colors=lava_colors, period=10s, transition_type=SINE, brightness=220)
|
||||
animation lava_blob2 = beacon_animation(
|
||||
animation lava_blob2 = beacon(
|
||||
color=blob2_pattern # color source
|
||||
pos=46 # initial position
|
||||
beacon_size=14 # medium blob
|
||||
@ -37,7 +37,7 @@ lava_blob2.priority = 8
|
||||
lava_blob2.pos = smooth(min_value=46, max_value=14, duration=25s) # Opposite direction, slower
|
||||
|
||||
color blob3_pattern = rich_palette_color(colors=lava_colors, period=8s, transition_type=SINE, brightness=200)
|
||||
animation lava_blob3 = beacon_animation(
|
||||
animation lava_blob3 = beacon(
|
||||
color=blob3_pattern # color source
|
||||
pos=25 # initial position
|
||||
beacon_size=10 # smaller blob
|
||||
|
||||
@ -10,7 +10,7 @@ palette storm_colors = [
|
||||
(255, 0x220033) # Slightly lighter purple
|
||||
]
|
||||
|
||||
animation storm_bg = rich_palette_animation(colors=storm_colors, period=12s, transition_type=SINE, brightness=100)
|
||||
animation storm_bg = rich_palette(colors=storm_colors, period=12s, transition_type=SINE, brightness=100)
|
||||
|
||||
# Random lightning flashes - full strip
|
||||
animation lightning_main = solid(color=0xFFFFFF) # Bright white
|
||||
@ -18,7 +18,7 @@ lightning_main.opacity = square(min_value=0, max_value=255, duration=80ms, duty_
|
||||
lightning_main.priority = 20
|
||||
|
||||
# Secondary lightning - partial strip
|
||||
animation lightning_partial = beacon_animation(
|
||||
animation lightning_partial = beacon(
|
||||
color=0xFFFFAA # Slightly yellow white
|
||||
pos=30 # center position
|
||||
beacon_size=20 # covers part of strip
|
||||
|
||||
@ -18,7 +18,7 @@ palette matrix_greens = [
|
||||
|
||||
# Create multiple cascading streams
|
||||
color stream1_pattern = rich_palette_color(colors=matrix_greens, period=2s, transition_type=LINEAR, brightness=255)
|
||||
animation stream1 = comet_animation(
|
||||
animation stream1 = comet(
|
||||
color=stream1_pattern # color source
|
||||
tail_length=15 # long tail
|
||||
speed=1.5s # speed
|
||||
@ -27,7 +27,7 @@ animation stream1 = comet_animation(
|
||||
|
||||
|
||||
color stream2_pattern = rich_palette_color(colors=matrix_greens, period=1.8s, transition_type=LINEAR, brightness=200)
|
||||
animation stream2 = comet_animation(
|
||||
animation stream2 = comet(
|
||||
color=stream2_pattern # color source
|
||||
tail_length=12 # medium tail
|
||||
speed=2.2s # different speed
|
||||
@ -35,7 +35,7 @@ animation stream2 = comet_animation(
|
||||
)
|
||||
|
||||
color stream3_pattern = rich_palette_color(colors=matrix_greens, period=2.5s, transition_type=LINEAR, brightness=180)
|
||||
animation stream3 = comet_animation(
|
||||
animation stream3 = comet(
|
||||
color=stream3_pattern # color source
|
||||
tail_length=10 # shorter tail
|
||||
speed=1.8s # another speed
|
||||
|
||||
@ -8,28 +8,28 @@ color space_bg = 0x000011
|
||||
animation background = solid(color=space_bg)
|
||||
|
||||
# Multiple meteors with different speeds and colors
|
||||
animation meteor1 = comet_animation(
|
||||
animation meteor1 = comet(
|
||||
color=0xFFFFFF # Bright white
|
||||
tail_length=12 # long trail
|
||||
speed=1.5s # fast speed
|
||||
)
|
||||
meteor1.priority = 15
|
||||
|
||||
animation meteor2 = comet_animation(
|
||||
animation meteor2 = comet(
|
||||
color=0xFFAA00 # Orange
|
||||
tail_length=10 # medium trail
|
||||
speed=2s # medium speed
|
||||
)
|
||||
meteor2.priority = 12
|
||||
|
||||
animation meteor3 = comet_animation(
|
||||
animation meteor3 = comet(
|
||||
color=0xAAAAFF # Blue-white
|
||||
tail_length=8 # shorter trail
|
||||
speed=1.8s # fast speed
|
||||
)
|
||||
meteor3.priority = 10
|
||||
|
||||
animation meteor4 = comet_animation(
|
||||
animation meteor4 = comet(
|
||||
color=0xFFAAAA # Pink-white
|
||||
tail_length=14 # long trail
|
||||
speed=2.5s # slower speed
|
||||
|
||||
@ -12,7 +12,7 @@ palette neon_colors = [
|
||||
]
|
||||
|
||||
# Main neon glow with color cycling
|
||||
animation neon_main = rich_palette_animation(colors=neon_colors, period=4s, transition_type=LINEAR, brightness=255)
|
||||
animation neon_main = rich_palette(colors=neon_colors, period=4s, transition_type=LINEAR, brightness=255)
|
||||
|
||||
# Add electrical flickering
|
||||
neon_main.opacity = smooth(min_value=220, max_value=255, duration=200ms)
|
||||
@ -24,7 +24,7 @@ neon_surge.priority = 20
|
||||
|
||||
# Add neon tube segments with gaps
|
||||
color segment_pattern = rich_palette_color(colors=neon_colors, period=4s, transition_type=LINEAR, brightness=255)
|
||||
animation segment1 = beacon_animation(
|
||||
animation segment1 = beacon(
|
||||
color=segment_pattern # color source
|
||||
pos=6 # position
|
||||
beacon_size=12 # segment length
|
||||
@ -32,7 +32,7 @@ animation segment1 = beacon_animation(
|
||||
)
|
||||
segment1.priority = 10
|
||||
|
||||
animation segment2 = beacon_animation(
|
||||
animation segment2 = beacon(
|
||||
color=segment_pattern # color source
|
||||
pos=24 # position
|
||||
beacon_size=12 # segment length
|
||||
@ -40,7 +40,7 @@ animation segment2 = beacon_animation(
|
||||
)
|
||||
segment2.priority = 10
|
||||
|
||||
animation segment3 = beacon_animation(
|
||||
animation segment3 = beacon(
|
||||
color=segment_pattern # color source
|
||||
pos=42 # position
|
||||
beacon_size=12 # segment length
|
||||
|
||||
@ -13,11 +13,11 @@ palette ocean_colors = [
|
||||
]
|
||||
|
||||
# Base ocean animation with slow color cycling
|
||||
animation ocean_base = rich_palette_animation(colors=ocean_colors, period=8s, transition_type=SINE, brightness=200)
|
||||
animation ocean_base = rich_palette(colors=ocean_colors, period=8s, transition_type=SINE, brightness=200)
|
||||
|
||||
# Add wave motion with moving pulses
|
||||
color wave1_pattern = rich_palette_color(colors=ocean_colors, period=6s, transition_type=SINE, brightness=255)
|
||||
animation wave1 = beacon_animation(
|
||||
animation wave1 = beacon(
|
||||
color=wave1_pattern # color source
|
||||
pos=0 # initial position
|
||||
beacon_size=12 # wave width
|
||||
@ -27,7 +27,7 @@ wave1.priority = 10
|
||||
wave1.pos = sawtooth(min_value=0, max_value=48, duration=5s) # 60-12 = 48
|
||||
|
||||
color wave2_pattern = rich_palette_color(colors=ocean_colors, period=4s, transition_type=SINE, brightness=180)
|
||||
animation wave2 = beacon_animation(
|
||||
animation wave2 = beacon(
|
||||
color=wave2_pattern # color source
|
||||
pos=52 # initial position
|
||||
beacon_size=8 # smaller wave
|
||||
|
||||
@ -16,9 +16,9 @@ palette ocean_colors = [
|
||||
]
|
||||
|
||||
# Create animations using the palettes
|
||||
animation fire_anim = rich_palette_animation(colors=fire_colors, period=5s)
|
||||
animation fire_anim = rich_palette(colors=fire_colors, period=5s)
|
||||
|
||||
animation ocean_anim = rich_palette_animation(colors=ocean_colors, period=8s)
|
||||
animation ocean_anim = rich_palette(colors=ocean_colors, period=8s)
|
||||
|
||||
# Sequence to show both palettes
|
||||
sequence palette_demo {
|
||||
|
||||
@ -46,11 +46,11 @@ palette sunset_sky = [
|
||||
# Create animations using each palette
|
||||
animation fire_effect = solid(color=rich_palette_color(colors=fire_gradient, period=3s))
|
||||
|
||||
animation ocean_waves = rich_palette_animation(colors=ocean_depths, period=8s, transition_type=SINE, brightness=200)
|
||||
animation ocean_waves = rich_palette(colors=ocean_depths, period=8s, transition_type=SINE, brightness=200)
|
||||
|
||||
animation aurora_lights = rich_palette_animation(colors=aurora_borealis, period=12s, transition_type=SINE, brightness=180)
|
||||
animation aurora_lights = rich_palette(colors=aurora_borealis, period=12s, transition_type=SINE, brightness=180)
|
||||
|
||||
animation sunset_glow = rich_palette_animation(colors=sunset_sky, period=6s, transition_type=SINE, brightness=220)
|
||||
animation sunset_glow = rich_palette(colors=sunset_sky, period=6s, transition_type=SINE, brightness=220)
|
||||
|
||||
# Sequence to showcase all palettes
|
||||
sequence palette_showcase {
|
||||
|
||||
@ -14,11 +14,11 @@ palette plasma_colors = [
|
||||
]
|
||||
|
||||
# Base plasma animation with medium speed
|
||||
animation plasma_base = rich_palette_animation(colors=plasma_colors, period=6s, transition_type=SINE, brightness=200)
|
||||
animation plasma_base = rich_palette(colors=plasma_colors, period=6s, transition_type=SINE, brightness=200)
|
||||
|
||||
# Add multiple wave layers for complexity
|
||||
color wave1_pattern = rich_palette_color(colors=plasma_colors, period=4s, transition_type=SINE, brightness=255)
|
||||
animation plasma_wave1 = beacon_animation(
|
||||
animation plasma_wave1 = beacon(
|
||||
color=wave1_pattern # color source
|
||||
pos=0 # initial position
|
||||
beacon_size=20 # wide wave
|
||||
@ -28,7 +28,7 @@ plasma_wave1.priority = 10
|
||||
plasma_wave1.pos = smooth(min_value=0, max_value=40, duration=8s)
|
||||
|
||||
color wave2_pattern = rich_palette_color(colors=plasma_colors, period=5s, transition_type=SINE, brightness=180)
|
||||
animation plasma_wave2 = beacon_animation(
|
||||
animation plasma_wave2 = beacon(
|
||||
color=wave2_pattern # color source
|
||||
pos=45 # initial position
|
||||
beacon_size=15 # medium wave
|
||||
@ -38,7 +38,7 @@ plasma_wave2.priority = 8
|
||||
plasma_wave2.pos = smooth(min_value=45, max_value=15, duration=10s) # Opposite direction
|
||||
|
||||
color wave3_pattern = rich_palette_color(colors=plasma_colors, period=3s, transition_type=SINE, brightness=220)
|
||||
animation plasma_wave3 = beacon_animation(
|
||||
animation plasma_wave3 = beacon(
|
||||
color=wave3_pattern # color source
|
||||
pos=20 # initial position
|
||||
beacon_size=12 # smaller wave
|
||||
|
||||
@ -7,7 +7,7 @@
|
||||
set half_length = 30
|
||||
|
||||
# Left side red flashing
|
||||
animation left_red = beacon_animation(
|
||||
animation left_red = beacon(
|
||||
color=0xFF0000 # Bright red
|
||||
pos=15 # center of left half
|
||||
beacon_size=15 # half the strip
|
||||
@ -17,7 +17,7 @@ left_red.priority = 10
|
||||
left_red.opacity = square(min_value=0, max_value=255, duration=400ms, duty_cycle=50) # 50% duty cycle
|
||||
|
||||
# Right side blue flashing (opposite phase)
|
||||
animation right_blue = beacon_animation(
|
||||
animation right_blue = beacon(
|
||||
color=0x0000FF # Bright blue
|
||||
pos=45 # center of right half
|
||||
beacon_size=15 # half the strip
|
||||
|
||||
@ -9,9 +9,9 @@ color blue_custom = 0x0000FF
|
||||
color green_custom = 0x00FF00
|
||||
|
||||
# Create animations
|
||||
animation left_pulse = beacon_animation(color=red_custom, pos=15, beacon_size=15, slew_size=3)
|
||||
animation center_pulse = beacon_animation(color=blue_custom, pos=30, beacon_size=15, slew_size=3)
|
||||
animation right_pulse = beacon_animation(color=green_custom, pos=45, beacon_size=15, slew_size=3)
|
||||
animation left_pulse = beacon(color=red_custom, pos=15, beacon_size=15, slew_size=3)
|
||||
animation center_pulse = beacon(color=blue_custom, pos=30, beacon_size=15, slew_size=3)
|
||||
animation right_pulse = beacon(color=green_custom, pos=45, beacon_size=15, slew_size=3)
|
||||
|
||||
# Set different opacities
|
||||
left_pulse.opacity = 255 # Full slew_size
|
||||
|
||||
@ -8,7 +8,7 @@ color scanner_bg = 0x110000
|
||||
animation background = solid(color=scanner_bg)
|
||||
|
||||
# Main scanner pulse that bounces
|
||||
animation scanner = beacon_animation(
|
||||
animation scanner = beacon(
|
||||
color=0xFF0000 # Bright red
|
||||
pos=2 # initial position
|
||||
beacon_size=3 # pulse width
|
||||
@ -20,7 +20,7 @@ scanner.priority = 10
|
||||
scanner.pos = triangle(min_value=2, max_value=57, duration=2s)
|
||||
|
||||
# Add trailing glow effect
|
||||
animation scanner_trail = beacon_animation(
|
||||
animation scanner_trail = beacon(
|
||||
color=0x660000 # Dim red trail
|
||||
pos=2 # initial position
|
||||
beacon_size=6 # wider trail
|
||||
|
||||
@ -13,7 +13,7 @@ palette eye_palette = [red, yellow, green, violet]
|
||||
color eye_color = color_cycle(colors=eye_palette, period=0)
|
||||
|
||||
# Create animations
|
||||
animation red_eye = beacon_animation(
|
||||
animation red_eye = beacon(
|
||||
color=eye_color
|
||||
pos=cosine_val
|
||||
beacon_size=3
|
||||
@ -21,7 +21,7 @@ animation red_eye = beacon_animation(
|
||||
priority=10
|
||||
)
|
||||
|
||||
animation pulse_demo = pulsating_animation(
|
||||
animation pulse_demo = breathe(
|
||||
color=blue
|
||||
period=2s
|
||||
priority=5
|
||||
|
||||
@ -13,7 +13,7 @@ palette rainbow = [
|
||||
]
|
||||
|
||||
# Create an animation using the palette
|
||||
animation rainbow_cycle = rich_palette_animation(colors=rainbow, period=3s)
|
||||
animation rainbow_cycle = rich_palette(colors=rainbow, period=3s)
|
||||
|
||||
# Simple sequence
|
||||
sequence demo {
|
||||
|
||||
@ -17,10 +17,10 @@ palette daylight_colors = [
|
||||
]
|
||||
|
||||
# Main daylight cycle - very slow transition
|
||||
animation daylight_cycle = rich_palette_animation(colors=daylight_colors, period=60s)
|
||||
animation daylight_cycle = rich_palette(colors=daylight_colors, period=60s)
|
||||
|
||||
# Add sun position effect - bright spot that moves
|
||||
animation sun_position = beacon_animation(
|
||||
animation sun_position = beacon(
|
||||
color=0xFFFFAA # Bright yellow sun
|
||||
pos=5 # initial position
|
||||
beacon_size=8 # sun size
|
||||
@ -31,7 +31,7 @@ sun_position.pos = smooth(min_value=5, max_value=55, duration=30s) # Sun arc ac
|
||||
sun_position.opacity = smooth(min_value=0, max_value=255, duration=30s) # Fade in and out
|
||||
|
||||
# Add atmospheric glow around sun
|
||||
animation sun_glow = beacon_animation(
|
||||
animation sun_glow = beacon(
|
||||
color=0xFFCC88 # Warm glow
|
||||
pos=5 # initial position
|
||||
beacon_size=16 # larger glow
|
||||
|
||||
@ -8,7 +8,7 @@ template animation cylon_effect {
|
||||
|
||||
set strip_len = strip_length()
|
||||
|
||||
animation eye_animation = beacon_animation(
|
||||
animation eye_animation = beacon(
|
||||
color = eye_color
|
||||
back_color = back_color
|
||||
pos = cosine_osc(min_value = -1, max_value = strip_len - 2, duration = period)
|
||||
|
||||
@ -10,7 +10,7 @@ template animation rainbow_pulse {
|
||||
color cycle_color = color_cycle(colors=pal1, period=period)
|
||||
|
||||
# Create pulsing animation
|
||||
animation pulse = pulsating_animation(
|
||||
animation pulse = breathe(
|
||||
color=cycle_color
|
||||
period=period
|
||||
)
|
||||
|
||||
@ -14,7 +14,7 @@ template animation shutter_bidir {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving from left to right
|
||||
animation shutter_lr_animation = beacon_animation(
|
||||
animation shutter_lr_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = 0
|
||||
@ -24,7 +24,7 @@ template animation shutter_bidir {
|
||||
)
|
||||
|
||||
# shutter moving from right to left
|
||||
animation shutter_rl_animation = beacon_animation(
|
||||
animation shutter_rl_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = 0
|
||||
|
||||
@ -14,7 +14,7 @@ template animation shutter_central {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving from left to right
|
||||
animation shutter_central_animation = beacon_animation(
|
||||
animation shutter_central_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = strip_len - shutter_size / 2
|
||||
|
||||
@ -14,7 +14,7 @@ template animation shutter_central {
|
||||
col2.next = 1
|
||||
|
||||
# shutter moving in to out
|
||||
animation shutter_inout_animation = beacon_animation(
|
||||
animation shutter_inout_animation = beacon(
|
||||
color = col2
|
||||
back_color = col1
|
||||
pos = strip_len2 - (shutter_size + 1) / 2
|
||||
@ -24,7 +24,7 @@ template animation shutter_central {
|
||||
)
|
||||
|
||||
# shutter moving out to in
|
||||
animation shutter_outin_animation = beacon_animation(
|
||||
animation shutter_outin_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = strip_len2 - (strip_len - shutter_size + 1) / 2
|
||||
|
||||
@ -6,7 +6,7 @@ template animation pulse_effect {
|
||||
param period type time
|
||||
param brightness type percentage
|
||||
|
||||
animation pulse = pulsating_animation(
|
||||
animation pulse = breathe(
|
||||
color=base_color
|
||||
period=period
|
||||
)
|
||||
|
||||
@ -6,7 +6,7 @@ template animation pulse_effect {
|
||||
param period type time
|
||||
param brightness type percentage
|
||||
|
||||
animation pulse = pulsating_animation(
|
||||
animation pulse = breathe(
|
||||
color=base_color
|
||||
period=period
|
||||
)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# @desc Smooth cycling through rainbow colors with custom palette
|
||||
|
||||
animation back = rich_palette_animation()
|
||||
animation back = rich_palette()
|
||||
# Equivalent to
|
||||
# animation back = rich_palette_animation(colors=PALETTE_PALETTE_RAINBOW, period=5s,
|
||||
# animation back = rich_palette(colors=PALETTE_PALETTE_RAINBOW, period=5s,
|
||||
# transition_type=SINE, brightness=100%)
|
||||
run back
|
||||
@ -5,5 +5,5 @@
|
||||
color rainbow_rich_color = rich_palette_color(colors=PALETTE_RAINBOW_W, period=0)
|
||||
|
||||
# Define a gradient across the whole strip
|
||||
animation back_pattern = palette_gradient_animation(color_source = rainbow_rich_color)
|
||||
animation back_pattern = palette_gradient(color_source = rainbow_rich_color)
|
||||
run back_pattern
|
||||
@ -9,6 +9,6 @@ color rainbow_rich_color = rich_palette_color(colors=PALETTE_RAINBOW_W, period=0
|
||||
set strip_len = strip_length()
|
||||
|
||||
# define a gradient across the whole strip
|
||||
animation back_pattern = palette_gradient_animation(color_source = rainbow_rich_color,
|
||||
animation back_pattern = palette_gradient(color_source = rainbow_rich_color,
|
||||
spatial_period = strip_len / 2)
|
||||
run back_pattern
|
||||
@ -11,5 +11,5 @@ set strip_len = strip_length()
|
||||
set period = sine_osc(min_value = (strip_len - 1) / 2, max_value = (3 * strip_len) / 2, duration = 5s)
|
||||
|
||||
# Define a gradient across the whole strip with variable spatial_period
|
||||
animation back = palette_gradient_animation(color_source = rainbow_rich_color, spatial_period = period)
|
||||
animation back = palette_gradient(color_source = rainbow_rich_color, spatial_period = period)
|
||||
run back
|
||||
@ -5,5 +5,5 @@
|
||||
color rainbow_rich_color = rich_palette_color(colors=PALETTE_RAINBOW_W, period=0)
|
||||
|
||||
# define a gradient across the whole strip
|
||||
animation back = palette_gradient_animation(color_source = rainbow_rich_color, shift_period = 5s)
|
||||
animation back = palette_gradient(color_source = rainbow_rich_color, shift_period = 5s)
|
||||
run back
|
||||
@ -19,5 +19,5 @@ color rainbow_rich_color = rich_palette_color(colors=vue_meter_palette, period=0
|
||||
set level = sawtooth(min_value = 0%, max_value=100%, duration = 2s)
|
||||
|
||||
# Define a vue-meter based on all elements above
|
||||
animation back = palette_meter_animation(color_source = rainbow_rich_color, level = level)
|
||||
animation back = palette_meter(color_source = rainbow_rich_color, level = level)
|
||||
run back
|
||||
@ -27,5 +27,5 @@ palette vue_meter_palette = [
|
||||
color rainbow_rich_color = rich_palette_color(colors=vue_meter_palette, period=0, transition_type=LINEAR)
|
||||
|
||||
# Define a vue-meter based on all elements above
|
||||
animation back = palette_meter_animation(color_source = rainbow_rich_color, level = rand_meter())
|
||||
animation back = palette_meter(color_source = rainbow_rich_color, level = rand_meter())
|
||||
run back
|
||||
@ -1,6 +1,6 @@
|
||||
# @desc Static beacon
|
||||
|
||||
# Simple beacon starting at pixel 6 with size of 7 pixels, no border
|
||||
animation back = beacon_animation(back_color = blue, color = red,
|
||||
animation back = beacon(back_color = blue, color = red,
|
||||
pos = 5, beacon_size = 7)
|
||||
run back
|
||||
@ -1,6 +1,6 @@
|
||||
# @desc Static beacon with slew
|
||||
|
||||
# Simple beacon starting at pixel 6 with size of 7 pixels, no border
|
||||
animation back = beacon_animation(back_color = blue, color = red,
|
||||
animation back = beacon(back_color = blue, color = red,
|
||||
pos = 5, beacon_size = 7, slew_size = 3)
|
||||
run back
|
||||
@ -4,6 +4,6 @@
|
||||
set slew = cosine_osc(min_value = 0, max_value = 4, duration = 2s)
|
||||
|
||||
# Simple beacon starting at pixel 6 with size of 7 pixels, no border
|
||||
animation back = beacon_animation(back_color = blue, color = red,
|
||||
animation back = beacon(back_color = blue, color = red,
|
||||
pos = 5, beacon_size = 7, slew_size = slew)
|
||||
run back
|
||||
@ -4,7 +4,7 @@
|
||||
set strip_len = strip_length()
|
||||
|
||||
# In this example, the 'cosine_osc' is created within the call
|
||||
animation back = beacon_animation(
|
||||
animation back = beacon(
|
||||
color = red
|
||||
pos = cosine_osc(min_value = -1, max_value = strip_len - 2, duration = 5s)
|
||||
beacon_size = 3 # small 3 pixels eye
|
||||
|
||||
@ -15,7 +15,7 @@ animation stars = twinkle(
|
||||
run stars
|
||||
|
||||
# We can combine a dynamic 'pos' value with a dynamic 'color'
|
||||
animation back = beacon_animation(
|
||||
animation back = beacon(
|
||||
color = rich_palette_color(colors=PALETTE_RAINBOW_W2, period=5s)
|
||||
pos = cosine_osc(min_value = -1, max_value = strip_len - 2, duration = 5s)
|
||||
beacon_size = 3 # small 3 pixels eye
|
||||
|
||||
@ -11,7 +11,7 @@ palette red_blue_red_palette = [ red, 0x3333FF, red ]
|
||||
color red_blue_red_color = rich_palette_color(colors=red_blue_red_palette)
|
||||
|
||||
# Define a moving beacon to be used as an opacity mask
|
||||
animation moving_eye = beacon_animation(
|
||||
animation moving_eye = beacon(
|
||||
color = white # the color is not important, only the opacity counts here
|
||||
pos = cosine_osc(min_value = -1, max_value = strip_len - 2, duration = 5s)
|
||||
beacon_size = 3 # small 3 pixels eye
|
||||
@ -19,7 +19,7 @@ animation moving_eye = beacon_animation(
|
||||
)
|
||||
|
||||
# The palette gradient animation is used with an animation as opacity
|
||||
animation eye_pattern = palette_gradient_animation(
|
||||
animation eye_pattern = palette_gradient(
|
||||
color_source = red_blue_red_color # the beacon animation used as opacity
|
||||
# spatial_period = strip_len # implicit
|
||||
opacity = moving_eye
|
||||
|
||||
@ -7,8 +7,8 @@ set strip_len = strip_length()
|
||||
set shutter_size = sawtooth(min_value = 0, max_value = strip_len,
|
||||
duration = 1.5s)
|
||||
|
||||
# Using beacon_animation to move a shutter from left to right
|
||||
animation shutter_lr_animation = beacon_animation(
|
||||
# Using beacon to move a shutter from left to right
|
||||
animation shutter_lr_animation = beacon(
|
||||
color = red
|
||||
back_color = blue
|
||||
pos = 0 # Start from position 0 (left)
|
||||
|
||||
@ -16,8 +16,8 @@ color col1 = color_cycle(colors=PALETTE_RAINBOW_W, period=0)
|
||||
color col2 = color_cycle(colors=PALETTE_RAINBOW_W, period=0)
|
||||
col2.next = 1 # Writing 1 to 'next' actually advances the color
|
||||
|
||||
# Using beacon_animation to move a shutter from left to right
|
||||
animation shutter_lr_animation = beacon_animation(
|
||||
# Using beacon to move a shutter from left to right
|
||||
animation shutter_lr_animation = beacon(
|
||||
color = col2 # Use two rotating colors
|
||||
back_color = col1 # Use two rotating colors
|
||||
pos = 0 # Start from position 0 (left)
|
||||
|
||||
@ -17,8 +17,8 @@ color col1 = color_cycle(colors=PALETTE_RAINBOW_W, period=0)
|
||||
color col2 = color_cycle(colors=PALETTE_RAINBOW_W, period=0)
|
||||
col2.next = 1 # Writing 1 to 'next' actually advances the color
|
||||
|
||||
# Using beacon_animation to move a shutter from in to out
|
||||
animation shutter_inout_animation = beacon_animation(
|
||||
# Using beacon to move a shutter from in to out
|
||||
animation shutter_inout_animation = beacon(
|
||||
color = col2 # Use two rotating colors
|
||||
back_color = col1 # Use two rotating colors
|
||||
pos = strip_len_2 - (shutter_size + 1) / 2
|
||||
|
||||
@ -17,8 +17,8 @@ color col1 = color_cycle(colors=PALETTE_RAINBOW_W, period=0)
|
||||
color col2 = color_cycle(colors=PALETTE_RAINBOW_W, period=0)
|
||||
col2.next = 1 # Writing 1 to 'next' actually advances the color
|
||||
|
||||
# Using beacon_animation to move a shutter from in to out
|
||||
animation shutter_inout_animation = beacon_animation(
|
||||
# Using beacon to move a shutter from in to out
|
||||
animation shutter_inout_animation = beacon(
|
||||
color = col2 # Use two rotating colors
|
||||
back_color = col1 # Use two rotating colors
|
||||
pos = strip_len_2 - (shutter_size + 1) / 2
|
||||
@ -26,7 +26,7 @@ animation shutter_inout_animation = beacon_animation(
|
||||
)
|
||||
|
||||
# Similar but out to in
|
||||
animation shutter_outin_animation = beacon_animation(
|
||||
animation shutter_outin_animation = beacon(
|
||||
color = col1
|
||||
back_color = col2
|
||||
pos = strip_len_2 - (strip_len - shutter_size + 1) / 2
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# @desc Crenel static
|
||||
|
||||
# Define a simple crenel 2+2 red/blue
|
||||
animation back = crenel_animation(
|
||||
animation back = crenel(
|
||||
color = red
|
||||
back_color = blue
|
||||
pulse_size = 2
|
||||
|
||||
@ -6,7 +6,7 @@ set max_pulses = (strip_len + period - 1) / period
|
||||
|
||||
set nb_pulse = triangle(min_value = 0, max_value = max_pulses, duration = 2s)
|
||||
|
||||
animation back = crenel_animation(
|
||||
animation back = crenel(
|
||||
color = red
|
||||
back_color = blue
|
||||
pulse_size = 2
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
set pulse_size = triangle(min_value = 0, max_value = 4, duration = 2s)
|
||||
|
||||
# Define a simple crenel 2+2 red/blue
|
||||
animation back = crenel_animation(
|
||||
animation back = crenel(
|
||||
color = red
|
||||
back_color = blue
|
||||
pulse_size = pulse_size
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
color rainbow_color = rich_palette_color(colors=PALETTE_RAINBOW_W2, period=5s)
|
||||
|
||||
# Define a simple crenel 2+2
|
||||
animation back = crenel_animation(
|
||||
animation back = crenel(
|
||||
color = rainbow_color
|
||||
back_color = blue
|
||||
pulse_size = 2
|
||||
|
||||
@ -5,7 +5,7 @@ animation back = solid(color = blue, priority = 20)
|
||||
run back
|
||||
|
||||
# Define a simple crenel 2+2 opaque/transparent
|
||||
animation mask = crenel_animation(
|
||||
animation mask = crenel(
|
||||
color = white # plain color since it's used as opacity mask
|
||||
back_color = transparent # background is transparent
|
||||
pulse_size = 2
|
||||
@ -15,7 +15,7 @@ animation mask = crenel_animation(
|
||||
# Define a smooth palette using PALETTE_RAINBOW_W (7 colors + white)
|
||||
color rainbow_rich_color = rich_palette_color(colors=PALETTE_RAINBOW_W, period=0)
|
||||
# Define a gradient across the whole strip and use crenel as opacity mask
|
||||
animation pattern = palette_gradient_animation(
|
||||
animation pattern = palette_gradient(
|
||||
color_source = rainbow_rich_color # use the rainow pattern
|
||||
shift_period = 2s # shifting over 2s
|
||||
opacity = mask # mask it with crenel pattern
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user