diff --git a/src/octoprint/static/gcodeviewer/js/renderer.js b/src/octoprint/static/gcodeviewer/js/renderer.js index 73a89139..d864ca39 100644 --- a/src/octoprint/static/gcodeviewer/js/renderer.js +++ b/src/octoprint/static/gcodeviewer/js/renderer.js @@ -513,7 +513,16 @@ GCODE.renderer = (function(){ bedWidth = bedHeight = renderOptions["bed"]["r"] * 2; } zoomFactor = Math.min((canvas.width - 10) / bedWidth, (canvas.height - 10) / bedHeight); - ctx.translate((canvas.width - bedWidth * zoomFactor) / 2, (canvas.height + bedHeight * zoomFactor) / 2); + + var translationX, translationY; + if (renderOptions["bed"]["circular"]) { + translationX = canvas.width / 2; + translationY = canvas.height / 2; + } else { + translationX = (canvas.width - bedWidth * zoomFactor) / 2; + translationY = bedHeight * zoomFactor + (canvas.height - bedHeight * zoomFactor) / 2; + } + ctx.translate(translationX, translationY); offsetModelX = 0; offsetModelY = 0;