利用canvas API ctx.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise);参数:x椭圆圆心的 x 轴坐标。y椭圆圆心的 y 轴坐标。radiusX椭圆长轴的半径。radiusY椭圆短轴的半径。rotation椭圆的旋转角度,以弧度表示(非角度度数)。startAngle将要绘制的起始点角度,从 x 轴测量,以弧度表示(非角度度数)。endAngle椭圆将要绘制的结束点角度,以弧度表示(非角度度数)。问题:当鼠标moveDown时记录起点坐标,moveUp时记录结束点坐标(这两个点都是椭圆最边上的坐标点),通过这两点可以计算出上边的参数值画出一个椭圆来,这样能实现吗。还有别的方法没有
1 回答
![?](http://img1.sycdn.imooc.com/5333a207000118af02200220-100-100.jpg)
宝慕林4294392
TA贡献2021条经验 获得超8个赞
现在的问题是通过这两个点能不能计算出上面的所有参数来,我们来一个个看一下
1.x,y左边,显然可以,取两个点的中点
2.rotation,根据起点和终点的斜率算出来
3.radiusX=起点到终点的距离/2
4.其他的参数就没办法计算,当然可以设置一些默认值
添加回答
举报
0/150
提交
取消