【发布时间】:2012-02-14 17:55:03
【问题描述】:
快来看看神奇的消失矩形吧!
但说真的,我有一个非常简单的 HTML5 画布,它只绘制一个矩形(使用 lineTo 而不是 rect 出于某种原因)。
我的问题:我正在尝试将矩形旋转 90 度。矩形应该旋转 90 度,但它却消失了。
在我的 webapp 项目中,当我在 HTML5 画布中旋转复杂的多边形时,我遇到了奇怪的 x,y 放置错误,因此我创建了这个简单的 HTML 来测试旋转并确保它围绕它的 x,y 点 100,100 旋转。但是,当我尝试旋转形状时,即使这样也会产生奇怪的结果。
谁能告诉我如何让我的矩形可见以及如何在不完全改变 x,y 值的情况下围绕特定点旋转多边形。
有没有人遇到过 HTML5 画布的这个问题并知道解决这个问题的解决方案?
<canvas id="testCanvas" width="900px" height="900px" style="background-color: blue;">
</canvas>
<script type="text/javascript">
var canvas = document.getElementById("testCanvas");
var dc = canvas.getContext("2d");
dc.clearRect(0, 0, canvas.width, canvas.height);
dc.save();
dc.fillStyle = "#FF0000";
dc.rotate( 90*Math.PI/180 ); // rotate 90 degrees
dc.beginPath();
dc.moveTo(100, 100);
dc.lineTo(200, 100);
dc.lineTo(200,300);
dc.lineTo(100,300);
dc.closePath();
dc.fill();
dc.restore();
-->
</script>
【问题讨论】:
-
在 5 分钟的天文馆中尝试“Visual-js 游戏引擎”,jsfiddle.net/zlatnaspirala/y16s2krh。
标签: javascript html canvas