これが私のコードです:
var paper = Raphael("holder");
function sector(cx, cy, r, startAngle, endAngle) {
var x1 = cx + r * Math.cos(-startAngle),
y1 = cy + r * Math.sin(-startAngle),
x2 = cx + r * Math.cos(-endAngle),
y2 = cy + r * Math.sin(-endAngle);
return ['M', cx, cy, 'L', x1, y1, 'A', r, r, 0, +(endAngle - startAngle > Math.PI), 0, x2, y2, 'z'];
}
var path = paper.path(sector(200, 200, 107, 0, 0.25)).attr({
'fill': '#fff',
'fill-opacity': 0.5,
'stroke': 'none'
});
path.animate({
path: sector(200, 200, 107, 0, Math.PI / 2)
}, 1000);
問題は、中間アニメーションでは循環パスをたどらないことです。代わりに、この奇妙な平坦化されたものが得られます。
アニメーション全体を循環させるにはどうすればよいですか?
私は基本的に「ローディングパイ」を作成したいと考えています。パイは完全な円にアニメーション化されます。
「空」から 60% までのアニメーション化はさらに悪くなります: http://jsfiddle.net/mnbayazit/Fh43X/3/