Multi step animations

This commit is contained in:
2023-03-04 23:37:45 +01:00
parent 78430ebb6f
commit 588f5e1d39
8 changed files with 60 additions and 28 deletions

View File

@ -174,7 +174,7 @@ void DmxController::setSliderStates(const sliders_state_t &sliderStates)
void DmxController::sendDmxBuffer()
{
const auto now = QDateTime::currentDateTime();
const auto secsSinceEpoch = now.toSecsSinceEpoch();
const auto msecsSinceEpoch = now.toMSecsSinceEpoch();
char buf[513] {0};
@ -252,7 +252,11 @@ void DmxController::sendDmxBuffer()
continue;
}
const auto &sliders = preset.steps[secsSinceEpoch % preset.steps.size()].sliders;
const auto &steps = preset.steps;
const auto &sliders = (steps.size() == 1 ?
steps.front() :
steps[msecsSinceEpoch / (preset.msecsPerStep ? preset.msecsPerStep : 100) % steps.size()]
).sliders;
apply(sliders, *iter);
iter++;
}