Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript SVG动画:在绘制圆弧时设置其动画_Javascript_Svg_Css Animations_Svg Animate - Fatal编程技术网

Javascript SVG动画:在绘制圆弧时设置其动画

Javascript SVG动画:在绘制圆弧时设置其动画,javascript,svg,css-animations,svg-animate,Javascript,Svg,Css Animations,Svg Animate,我正在使用以下代码段使用SVG绘制圆弧: 调用descripbearc方法计算路径时,将动态输入圆弧的起始角和结束角 有人知道如何在绘制圆弧时设置其动画吗?基本上,我希望弧线能被平滑地画出来,而不是像现在这样一次画出来 你的问题并没有描述你所说的“动画”是什么意思。下次你问问题时请考虑一下 我假设你希望这个扇区像扇子一样打开 这里有一个方法 函数极坐标(centerX、centerY、半径、角度等){ var angleInRadians=(angleInDegrees-90)*Math.P

我正在使用以下代码段使用SVG绘制圆弧:

调用
descripbearc
方法计算路径时,将动态输入圆弧的起始角和结束角


有人知道如何在绘制圆弧时设置其动画吗?基本上,我希望弧线能被平滑地画出来,而不是像现在这样一次画出来

你的问题并没有描述你所说的“动画”是什么意思。下次你问问题时请考虑一下

我假设你希望这个扇区像扇子一样打开

这里有一个方法

函数极坐标(centerX、centerY、半径、角度等){
var angleInRadians=(angleInDegrees-90)*Math.PI/180.0;
返回{
x:centerX+(半径*数学坐标(角半径)),
y:中心y+(半径*数学正弦(角度半径))
};
}
函数描述C(x,y,半径,星形,端角){
var起点=极笛卡尔坐标(x,y,半径,端角);
var end=极笛卡尔坐标(x,y,半径,星形);
var arcSweep=端角-星形缠结1)
var progress=Math.min((performance.now()-startTime)/animationDuration,1.0);
//计算动画中该点的结束角度
可变角度=startAngle+进度*(endAngle-startAngle);
//计算扇形
var arc=C(x,y,半径,星形,角度);
//更新路径
document.getElementById(“arc1”).setAttribute(“d”,arc);
//如果动画未完成,请向浏览器询问另一个动画帧。
如果(进度<1.0)
requestAnimationFrame(doAnimationStep);
}
requestAnimationFrame(doAnimationStep);
}
动画师(100100120418.251000)
svg{
高度:200px;
宽度:200px;
}

这不是一个问题,而是一个问题。你能澄清你的问题来描述你真正想要什么吗?这东西应该怎么做动画?例如,您希望一端固定吗?