Files
Tasmota/lib/libesp32/berry_animation/anim_examples/compiled/scanner_larson.be
2025-08-01 19:34:23 +02:00

86 lines
2.6 KiB
Plaintext

# Generated Berry code from Animation DSL
# Source: scanner_larson.anim
# Generated automatically
#
# This file was automatically generated by compile_all_dsl_examples.sh
# Do not edit manually - changes will be overwritten
# Original DSL source:
# # Scanner (Larson) - Knight Rider style scanner
# # Red dot bouncing back and forth
#
# strip length 60
#
# # Dark background
# color scanner_bg = 0x110000
# animation background = solid(scanner_bg)
#
# # Main scanner pulse that bounces
# animation scanner = pulse_position_animation(
# 0xFF0000, # Bright red
# 2, # initial position
# 3, # pulse width
# 2 # fade region
# )
# scanner.priority = 10
#
# # Bouncing position from left to right and back
# scanner.pos = triangle(2, 57, 2s)
#
# # Add trailing glow effect
# animation scanner_trail = pulse_position_animation(
# 0x660000, # Dim red trail
# 2, # initial position
# 6, # wider trail
# 4 # more fade
# )
# scanner_trail.priority = 5
# scanner_trail.pos = triangle(2, 57, 2s)
# scanner_trail.opacity = 128 # Half brightness
#
# # Start all animations
# run background
# run scanner_trail
# run scanner
import animation
# Scanner (Larson) - Knight Rider style scanner
# Red dot bouncing back and forth
var strip = global.Leds(60)
var engine = animation.create_engine(strip)
# Dark background
var scanner_bg_ = 0xFF110000
var background_ = animation.solid(animation.global('scanner_bg_', 'scanner_bg'))
# Main scanner pulse that bounces
var scanner_ = animation.pulse_position_animation(0xFFFF0000, 2, 3, 2)
animation.global('scanner_').priority = 10
# Bouncing position from left to right and back
animation.global('scanner_').pos = animation.triangle(2, 57, 2000)
# Add trailing glow effect
var scanner_trail_ = animation.pulse_position_animation(0xFF660000, 2, 6, 4)
animation.global('scanner_trail_').priority = 5
animation.global('scanner_trail_').pos = animation.triangle(2, 57, 2000)
animation.global('scanner_trail_').opacity = 128 # Half brightness
# Start all animations
# Start all animations/sequences
if global.contains('sequence_background')
var seq_manager = global.sequence_background()
engine.add_sequence_manager(seq_manager)
else
engine.add_animation(animation.global('background_'))
end
if global.contains('sequence_scanner_trail')
var seq_manager = global.sequence_scanner_trail()
engine.add_sequence_manager(seq_manager)
else
engine.add_animation(animation.global('scanner_trail_'))
end
if global.contains('sequence_scanner')
var seq_manager = global.sequence_scanner()
engine.add_sequence_manager(seq_manager)
else
engine.add_animation(animation.global('scanner_'))
end
engine.start()