Мне нужно анимировать точку (называемую сегментом в Paper.js ) многоугольника, поворачивая ее по кругу с началом в исходной точке многоугольника. Смотрите изображение ниже:
Я пытаюсь сделать это с помощью этого кода:
// Draw the polygon
var polygon = new Path.RegularPolygon({
center: [100, 100],
sides: 8,
radius: 80,
});
// Animate
view.onFrame = function (event) {
var offset = new Point(Math.cos(event.time*2), Math.sin(event.time*2));
polygon.firstSegment.point = polygon.firstSegment.point.add(offset);
};
но у меня две проблемы:
- происхождение круга неверно
- после некоторого времени анимации он начинает вращаться странным и (по-видимому) случайным образом. Кажется, это меняет происхождение круга
Вот весь код, чтобы увидеть его в действии:
https://codepen.io/anon/pen/xezQpb
Может кто-то поможет? Спасибо