🔁 Rotation Animation Namespace — r(...)

This module defines compact animation syntax for rotating SVG objects in Oscilla.

🧩 Base Format

r(<mode>)_[modifiers...]

🎛️ Modes

Syntax Description
r(1) Continuous clockwise
r(-1) Continuous anticlockwise
r(0) No rotation
r(deg[...]) Stepped rotation (manual values)
r(alt[min,max]) Ping-pong rotation between two angles
r(rnd[n]) Fixed slice of n random angles
r(rnd[nx,min,max]) Looping random slice from range
r(seq[...]) Sequential rotation steps

⚙️ Modifiers

Modifier Values Description
_rpm(...) number Rotations per minute (for continuous)
_bpm(...) number[,subdiv] Tempo-based speed (1 rotation per note)
_speed(...) seconds Step duration (applies to deg, rnd, alt)
_dur[...] list Per-step durations (for deg, rnd, seq)
_seqdur(...) seconds Total time for full sequence
_mode(...) loop, bounce For seq[...] direction control
_osc(1) boolean Enable OSC output of current angle
_throttle(...) Hz OSC message rate cap (default: 20Hz)
_quant(1) boolean Quantize animation start to global BPM grid
_t(1) boolean Defer animation until cue triggered

🛠️ Examples

r(1)_rpm(30)
r(-1)_bpm(120)
r(deg[0,90,180,270])_speed(1.5)
r(alt[45,135])_bpm(60)_osc(1)
r(rnd[6])_speed(2)
r(rnd[6x,0,360])_speed(0.5)_osc(1)
r(seq[0,120,240])_bpm(90)_mode(bounce)_quant(1)

🧠 Notes


Tip: use ← → or ↑ ↓ to navigate the docs