canvas中的rotate是不是不能影响到lineTo
发布于 7 年前 作者 jie17 11265 次浏览 来自 问答
  • 当前 Bug 的表现(可附上截图)

结果如下

  • 预期表现

在h5中没问题

  • 复现路径
  • 提供一个最简复现 Demo

<canvas canvas-id=‘myCanvas’ style=‘width:180rpx ;height:180rpx;’></canvas>

//绘制五边形

const ctx = wx.createCanvasContext(‘myCanvas’);

ctx.beginPath();

ctx.translate(45, 45);

ctx.moveTo(0, 0);

ctx.lineTo(0, -45);

for (var i = 0; i < 5; i++) {

ctx.rotate(72 * Math.PI / 180);

ctx.lineTo(0, -45);

}

ctx.stroke();

ctx.draw();

2 回复

请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

直接360度圆分5份,然后用sin, cos 求每个边的x,y轴坐标, 然后连起来不就行了, 不需要用这么复杂的旋转坐标。

回到顶部