当前位置: 首页 > news >正文

19年做哪个网站致富平面广告设计要用什么软件有哪些

19年做哪个网站致富,平面广告设计要用什么软件有哪些,网站加速服务,中国科技成果一、场景描述 利用js中的canvas画图来画图,爱心、动画。 二、问题拆解 第一个是:canvas画图相关知识。 第二个是:动画相关内容。 三、知识背景 3.1 canvas画图相关内容 canvas画图的基本步骤 获取页面上的canvas标签对象获取绘图上下文…

一、场景描述

利用js中的canvas画图来画图,爱心、动画。

二、问题拆解

第一个是:canvas画图相关知识。
第二个是:动画相关内容。

三、知识背景

3.1 canvas画图相关内容

canvas画图的基本步骤

  1. 获取页面上的canvas标签对象
  2. 获取绘图上下文 canvas.getContext(“2d")
  3. 绘图
  4. 绘制已定义的路径 strock()
    在这里插入图片描述

3.2 requestAnimationFrame(callback)方法 替代setTimeout和setInterval来设置动画

requestAnimationFrame这个方法的作用是 回掉函数的调用频率与显示器的刷新率一样。
用法如下所示

const zero = performance.now();  //获取当前时间戳function animate() {//利用现在时间戳减去程序开始时的时间戳,进行动画制作(求余再除 1 秒周期的动画)const value = ((performance.now() - zero) % 1000) / 1000;//清除当前区域的以画图形ctx.clearRect(0,0,width,height);//重新画图draw(100+10*value);console.log(value);//进行回调animationFrame = requestAnimationFrame(animate);
}

四、场景实现

画爱心
爱心的极坐标公式
x(t) = 16* sin^{3}(t)
y(t) = 13cos(t) - 5cos(2t) - 2cos(3t) - cos(4t)

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>body{background-color: black;}</style>
</head>
<body><canvas id="canvas"></canvas>
</body>
<script>//根据公式获取爱心图形路径上的点function getPointsXY(){var points = [];var x=0,y=0;for(var i = 0;i<Math.PI*2;i=i+0.01){x = 16 * Math.pow(Math.sin(i),3)*20;y = -(13 * Math.cos(i) - 5 * Math.cos(2*i) - 2 *  Math.cos(3*i) -  Math.cos(4*i))*20;points.push({x: canvas.width / 2 + x,y: canvas.height / 2 + y})}return points;}function init() {const width = window.innerWidth;const height = window.innerHeight;canvas.width = width;canvas.height = height;}//获取页面上的canvas标签const canvas = document.getElementById("canvas");init();   //获取绘图上下文const ctx = canvas.getContext("2d");//设置画笔颜色ctx.strokeStyle = 'pink';ctx.lineWidth = 5;//开始路径ctx.beginPath();//获取路径上的各个节点var points = getPointsXY();//依次连接各个点ctx.moveTo(points[0].x,points[0].y);for(let item of points){ctx.lineTo(item.x,item.y);ctx.moveTo(item.x,item.y);}ctx.lineTo(points[0].x,points[0].y);ctx.moveTo(0,0);// for(let item of points){//     ctx.lineTo(item.x,item.y);//     ctx.moveTo(item.x,item.y);// }ctx.lineTo(50,50);//闭合路径//ctx.closePath();//描述ctx.stroke();//ctx.fill();
</script>
</html>

图形动画

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><canvas id="canvas"></canvas>
</body>
<script>function draw(r){//圆心位置 (x, y), 半径, 起始角度, 结束角度, 方向 (true为顺时针, false为逆时针)ctx.beginPath();ctx.arc(width/2,height/2,r,0,Math.PI*2,false);let grad = ctx.createRadialGradient(width/2,height/2, 50, width/2,height/2, 200)grad.addColorStop(0, "pink"); // 设置渐变颜色grad.addColorStop(0.5, "yellow");grad.addColorStop(1, "lightblue");ctx.fillStyle = grad; // 设置fillStyle为当前的渐变对象ctx.fill();//闭合路径ctx.closePath();//描述ctx.stroke();ctx.beginPath();ctx.arc(width/2,height/2,5,0,Math.PI*2,false)//设置填充色ctx.fillStyle = "lightblue";//填充图ctx.fill();          }function animate() {const value = ((performance.now() - zero) % 1000) / 1000;ctx.clearRect(0,0,width,height);draw(100+10*value);console.log(value);animationFrame = requestAnimationFrame(animate);}const canvas = document.getElementById("canvas");//设置canvas画板大小const width = window.innerWidth;const height = window.innerHeight;canvas.width = width;canvas.height = height;const ctx = canvas.getContext("2d");let animationFrame = null;//开始路径ctx.beginPath();const zero = performance.now();console.log(zero);requestAnimationFrame(animate);//draw(100)//闭合路径ctx.closePath();//描述ctx.stroke();
</script>
</html>
http://www.yayakq.cn/news/892007/

相关文章:

  • 网站域名所有权证书邢台视频优化
  • 网站建设费的分录怎么写抖音同城引流推广怎么做
  • 机关单位网站建设合同德阳定制建站网站建设制作
  • 龙岩做网站开发价格小红书推广方式
  • 做物流的可以在那些网站找客户端奋进新征程
  • php源码网站修改小型企业网络设计方案报告
  • 苏州建网站提供idstore wordpress
  • 网站策划用培训吗金华北京网站建设
  • 建个企业网站备案需要多长时间江西求做网站
  • 网站建设及报价格方案网站设计网站项目流程图
  • 网站都是每年续费的吗地方门户网站域名
  • 微信小程序怎么做网站链接营销案例100例小故事及感悟
  • 网站 前置审批成都网络科技公司排名
  • 网络方案设计案例抚州seo快速排名
  • 买个域名自己做网站吗龙岗网站建设多少钱
  • 哈尔滨建设工程信息网官方网站免费网页空间到哪申请
  • 深圳官方网站建设郑州网站建设商城定制
  • 中国工程建设标准化协会网站上海做无创DNA医院网站
  • 网站建设详细网站建设需要怎样的经营范围
  • 网站制作公司哪家正规西安网站seo优化
  • 如何将数据库导入网站深圳哪家网站公司好
  • 随州网站建设哪家好如皋市建设局网站
  • 关于公司网站建设情况的汇报长沙电商网站开发
  • 简单医院网站深圳装修网站建设
  • 威海住房建设部官方网站天津快推科技有限公司
  • 做海报的网站什么编辑平台建设上线网站
  • 清远企业网站建设公司wordpress 边栏修改
  • 广州做网站 汉狮网络淮北官方网站
  • 三亚做网站推广东莞招聘网官方网站
  • 网站建设展板企业宣传视频制作免费版