diff options
Diffstat (limited to 'index.js')
| -rw-r--r-- | index.js | 12 |
1 files changed, 11 insertions, 1 deletions
@@ -43,6 +43,8 @@ canvas.addEventListener('mousedown', (e) => { cross.style.left = e.layerX - canvasOffsetX + "px" cross.style.top = e.layerY - canvasOffsetY + "px" + + temp = angle angle = Math.atan(x/Math.abs(y)) sym = 1 @@ -53,9 +55,14 @@ canvas.addEventListener('mousedown', (e) => { if (y > 0) { angle = sym*Math.PI - angle } + console.log(temp) + console.log(angle) robot.style.transform = 'translate(-50%, -50%) rotate('+ angle +'rad)'; - moveTo(x * scale,y * scale) + a = -(e.layerX - canvasOffsetX - canvas.width/2) * scale + b = -(e.layerY - canvasOffsetY - canvas.height/2) * scale + rot = (angle - temp) + moveTo(a*Math.cos(-rot)- b * Math.sin(-rot),a * Math.sin(-rot) + b*Math.cos(-rot)) moveAll(x,y) }); @@ -109,6 +116,9 @@ reset.onclick = () => { drawings = []; angle = 0 robot.style.transform = 'translate(-50%, -50%) rotate(0deg)'; + a = canvas.width/2 + canvasOffsetX; + b = canvas.height/2 + canvasOffsetY; + ctx.clearRect(-a,-b,canvas.width,canvas.height); } function resizeCanvas() { |
