Я пытаюсь анимировать фигуру, созданную в HTML5.
myShape.drawFunc = function(){
var context = this.getContext();
context.beginPath();
context.arc(480, 480, animationValue, startingPoint * Math.PI, endingPoint * Math.PI, false);
context.lineTo(480,480);
context.closePath();
this.fillStroke();
}
Я хочу использовать jQuery.animate, чтобы изменить animationValue
с одного значения на другое с течением времени.Я не совсем уверен, как этого добиться, также мне нужно будет запускать функцию на каждом шаге анимации Layer.draw();
, потому что моя фигура - это холст.
Кто-нибудь знает, как анимировать animationValue
в myShape.drawFunc?
Я должен добавить, что я пытаюсь анимировать в myShape.on("mouseover",{});
. Это создает какие-либо проблемы с использованием метода setInterval и т. д.?
ОБНОВЛЕНИЕ:
segment.on("mouseover",function(){
var startingPoint = segData[index].startingPoint;
var endingPoint = segData[index].endingPoint;
var startingRadias = segData[index].radias;
var maxRadias = 250;
var updateRadias = startingRadias;
setInterval(function(){
if(updateRadias < maxRadias){
updateRadias++;
console.log("frame : "+updateRadias);
this.drawFunc = function(){
var context = this.getContext();
context.beginPath();
context.arc(480, 480, updateRadias, startingPoint * Math.PI, endingPoint * Math.PI, false);
context.lineTo(480,480);
context.closePath();
this.fillStroke();
}
rawLayer.draw();
}
},1000/30);
});
console.log показывает, что они вызывают setInterval, но фигура не перерисовывается.