Как остановить вращение в нужном месте?

91
24 сентября 2021, 10:30

Всем привет, делаю колесо фортуны, вращение примитивно:

angle += 10 * speed;

Замедление или ускорение тоже обычное:

if(play){
  speed += 0.1;
}
if(stop) speed -= 0.1;

speed = Math.min(1,Math.max(0, speed)); Но появилась делема, нужно либо плавно остановить в нужном сегменте, либо наоборот, не останавливать на нежелательных сегментах. Уже весь рунет обшарил, пытался сам чет нахимичить, но не чего не выходит.

Нашел типа такого примера:

var speed= 1 - ( (angle-EndAngle) % 6.28318531 ) / 6.28318531 ;

Вроде как останавливает на нужной секции, но делает это быстро и с рывком(

READ ALSO
Как сделать такой hover эффект при наведении на изображение?

Как сделать такой hover эффект при наведении на изображение?

Ребята как сделать такой hover эффект при наведение мыши?

307
переписать jQuery решение на чистый JS

переписать jQuery решение на чистый JS

Есть такое решение на jQuery:

104