На моей форме находится элемент управления. То, что я хотел бы сделать, - это анимировать этот элемент управления, используя синусоидальную волну, чтобы сам контроль мог выглядеть как плавающий вверх, как воздушный шар. Я ужасен с математикой, которая, вероятно, не очень хороша в программировании, но задавалась вопросом, сможет ли кто-нибудь помочь мне разобраться, как я должен справиться с этим. Спасибо.Анимация элемента управления с использованием синусоидальной волны
-1
A
ответ
1
В основном вы хотите использовать Греческую волну, чтобы генерировать приятные текущие значения для вас.
for(var i = 0 ; i <= 180 ; i ++){
Console.WriteLine(Math.Sin(Math.PI * i/180));
}
Вы можете настроить выше, чтобы удовлетворить ваши потребности ...
Если вам нужно только идти вверх (как воздушный шар), то вы можете остановиться на 90, а не 180.
for(var i = 0 ; i <= 90 ; i ++){
Console.WriteLine(Math.Sin(Math.PI * i/180));
}
Если вам нужно больше шагов (меньший приращение), вы можете сделать i в два раза и увеличить на половину или четверть.
for(double i = 0 ; i <= 90 ; i += .5){
Console.WriteLine(Math.Sin(Math.PI * i/180));
}
Все вышеперечисленное даст вам диапазон значений от 0 до 1. Вы можете умножить это значение на 100, если элемент управления требует целое ..