为了账号安全,请及时绑定邮箱和手机立即绑定

已采纳回答 / FDU_XN
应该是你for循环的问题吧

最新回答 / 慕粉1569
问题出在绘制五角星路径,Chrome下ctx.clip();存在问题,绘制多边形如果角度太小ctx.clip();的剪切就会超出路径范围,如果你换成三角形或是圆形四方形 就不存在这些问题。怎么解决我也不知道。

已采纳回答 / Icekiller
rotate的旋转是你当前画布里面的元素,绘制五角星,使用for循环画出多个五角星,每次循环都使用了beginPath();

最新回答 / 性别男爱好女
你是不是没给线条设置宽度?cxt.lineWidth=10; miterLimit=线条实际的那条线到外框填充的宽度,不设置线条宽度是没用的

最赞回答 / 三3心
在drawStarTwo函数中,把cxt.translate(x, y)放在cxt.rotate(rot / 180 * Math.PI);之前,就可以了。

已采纳回答 / qq_ICouldBeTheO_0
把已经生成的星星的中心点放到一个数组中,每次在生成下一个行星中心点的时候,对数组进行遍历比对,看是否重复

已采纳回答 / Arya丶
你这样放图片代码。。没人看得清。。我用我的理解说一下吧,先进行旋转的话,其实是把参照坐标系旋转了,注意,不是对整个canvas影响,而是对旋转后,即将要绘制的图形有影响。也就是说,进行了旋转,参照坐标系就是一个旋转状态,这时候你的“平移”,已经不是原来的平移了,而是旋转后的平移,也就是说,其实是斜移动了的。 应该是这样~吧

已采纳回答 / DeveloperFanyl
理解错了,这里有一篇文章 贝塞尔曲线 可以参考一下,虽然是android的,但是要理解图形渐变很有用。

最赞回答 / GD_sun粉
这个代码,你写错了,这儿应该是y, var y=event.clientY-canvas.getBoundingClientRect().top;  
课程须知
需有基础HTML,JS,CSS知识。需学习《绚丽的倒计时效果》Canvas绘图第一课。
老师告诉你能学到什么?
深入了解Canvas各个绘图接口的使用方法。基础图形学知识。通过对一些基本元素的绘制,启发大家更多有效地绘图方法。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消