码迷,mamicode.com
首页 > Web开发 > 详细

html5 canvas围绕中心点旋转

时间:2015-04-12 22:28:20      阅读:291      评论:0      收藏:0      [点我收藏+]

标签:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>围绕中心点旋转</title>
<script src="js/modernizr.js"></script>
</head>

<body>
<script type="text/javascript">
window.addEventListener(‘load‘,eventWindowLoaded,false);
function eventWindowLoaded(){
    canvasApp();
}
function canvasSupport(){
    return Modernizr.canvas;
}
function canvasApp(){
    if(!canvasSupport()){
        return;
    }else{
        var theCanvas = document.getElementById(‘canvas‘)
        var context = theCanvas.getContext("2d")

    }
    drawScreen();
    function drawScreen(){
        context.fillStyle="black";
        context.fillRect(20,20,25,25);
        
        
        context.setTransform(1,0,0,1,0,0);
        var angleInRadians = 45 * Math.PI / 180;
        var x = 100;
        var y = 100;
        var width = 50;
        var height = 50;
        context.translate(x+.5*width,y+.5*height);
        context.rotate(angleInRadians);
        context.fillStyle="red";
        context.fillRect(-.5*width,-.5*height,width,height);
        
    }
    
}


</script>
<canvas id="canvas" width="500" height="500">
你的浏览器无法使用canvas
小白童鞋;你的支持是我最大的快乐!!
</canvas>
</body>
</html>

 

这一次我们设置了变量。。。是不是感觉看起来莫名的亲切了

        var x = 100;
        var y = 100;
        var width = 50;
        var height = 50;

然后我们用函数context.translate把画布原点平移到红色正方形的中心点。
这个函数可以将画布原点移到(x,y)处。这里将原点X坐标值设为红色正方形的左上角的X值(100)
加上其一半的宽度。使用前面创建的变量即可控制这个红色正方形的属性

X+0.5*width
然后Y坐标
然后执行平移函数
然后旋转

html5 canvas围绕中心点旋转

标签:

原文地址:http://www.cnblogs.com/LoveOrHate/p/4420626.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!