Html5 Canvas (2)

接着说PATH

一个实例 sin曲线 cos曲线和tan曲线。

如图
f98a3b88433964299f2fb4b1.jpg
不用解释了吧 红色的是sinx 黄色的是cosx 蓝色的是tanx曲线

代码

<!DOCTYPE HTML>

<html>

<head>

<title>Html5 Canvas Path Grids</title>

</head>

<body>

 

<canvas id="c" height="600" width="850"></canvas>

 

<script type="text/javascript">

//画竖线

var c = document.getElementById("c");

var context = c.getContext("2d");

 

for(var x=0.5;x<800;x += 10){

context.moveTo(x,0);

context.lineTo(x,600);

}

//画横线

for(var y=0.5;y<600;y += 10){

       context.moveTo(0,y);

       context.lineTo(800,y);

}

//选择颜色

context.strokeStyle = "#ccc";

//渲染

context.stroke();

//XY坐标系

//开始新的路径

//y轴

context.beginPath();

context.moveTo(100,700);

    context.lineTo(100,50);

    context.moveTo(95,55);

context.lineTo(100,50);

context.lineTo(105,55);

    //x轴

context.moveTo(700,500);

    context.lineTo(0,500);

context.moveTo(695,495);

context.lineTo(700,500);

context.lineTo(695,505);

//选择颜色

    context.strokeStyle = "#000";

//渲染

context.stroke();

    //填充文字

context.font = "bold 16px sans-self";

context.fillText("x",710,490);

context.fillText("y",90,40);

context.fillText("0",80,520);

//画曲线 sin曲线

context.beginPath();

context.moveTo(100,500);

for(var x=100;x<700;x++){

context.lineTo(x,-100*Math.sin((x-100)*Math.PI/180)+500)

}

context.strokeStyle = "#FF0000";

context.stroke();

 

//画曲线 cos曲线

context.beginPath();

context.moveTo(100,400);

for(var x=100;x<700;x++){

context.lineTo(x,-100*Math.cos((x-100)*Math.PI/180)+500)

}

context.strokeStyle = "#FFFF00";

context.stroke();

 

//画曲线 tan曲线

context.beginPath();

context.moveTo(100,400);

for(var x=100;x<700;x++){

context.lineTo(x,-100*Math.tan((x-100)*Math.PI/180)+500)

}

context.strokeStyle = "#0000FF";

context.stroke();

</script>

 

</body>

</html>


转载于:https://my.oschina.net/cmw/blog/14956

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值