码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • canvas画一个笑脸和画一个三角形


    画一个笑脸主要用到的是画弧形的方法:arc,有五个参数:起始坐标,半径,弧形起始坐标,还有一个参数是顺时针还是逆时针。画的笑脸:虽然丑了点,但是学习了

    代码:

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8" />
    5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    6. <title>Documenttitle>
    7. head>
    8. <body>
    9. <canvas id="myCanvas" width="500" height="500">canvas>
    10. <script>
    11. const canvas = document.getElementById('myCanvas')
    12. if (canvas.getContext) {
    13. const ctx = canvas.getContext('2d')
    14. // ctx.fillStyle = 'red'
    15. // 画一个圆形(圆心坐标,半径,起始弧度,结束弧度, 顺时针还是逆时针:true/false)
    16. ctx.beginPath()
    17. ctx.arc(150, 150, 100, 0, Math.PI * 2)
    18. // 画完之后,得填充一下,不然看不到
    19. // ctx.fill()
    20. // 只画路径
    21. ctx.stroke()
    22. // ctx.closePath()
    23. // 画笑脸的嘴角:可以使用移动画笔的操作:moveTo(x,y) 移动到指定位置
    24. // ctx.beginPath()
    25. // 移动到开始落画笔的地方,不然会带上半径一起画出来
    26. ctx.moveTo(200, 150)
    27. ctx.arc(150, 150, 50, 0, Math.PI)
    28. ctx.stroke()
    29. // ctx.closePath()
    30. // 画眼睛
    31. // ctx.beginPath()
    32. ctx.moveTo(120, 100)
    33. ctx.arc(100, 100, 20, 0, Math.PI * 2)
    34. // ctx.fill()
    35. ctx.stroke()
    36. // ctx.closePath()
    37. // 画眼睛
    38. // ctx.beginPath()
    39. ctx.moveTo(220, 100)
    40. ctx.arc(200, 100, 20, 0, Math.PI * 2)
    41. // ctx.fill()
    42. ctx.stroke()
    43. ctx.closePath()
    44. }
    45. script>
    46. body>
    47. html>

     还有画一个三角形:主要用的是画线的方法:lineTo,有两个参数,起始坐标。记得画之前,先将画笔的坐标移动到某个位置

    代码:

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8" />
    5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    6. <title>Documenttitle>
    7. head>
    8. <body>
    9. <div>画一条直线div>
    10. <canvas id="myCanvas" width="500" height="500">canvas>
    11. <script>
    12. // 获取画布
    13. var canvas = document.getElementById('myCanvas')
    14. // 获取画笔
    15. var context = canvas.getContext('2d')
    16. // 画线的时候要有起点和终点
    17. context.moveTo(0, 0)
    18. // 终点: 100, 0
    19. context.lineTo(100, 0)
    20. context.lineTo(50, 100)
    21. context.lineTo(0, 0)
    22. // 画线
    23. context.stroke()
    24. context.fill()
    25. script>
    26. body>
    27. html>

     

  • 相关阅读:
    BUG系列路径规划算法原理介绍(一)——总结篇
    【华为OD机试python】数据分类【2023 B卷|100分】
    2022年9月8号Java23设计模式(课时七)桥接模式
    【精讲】vue框架 利用脚手架实现购物车(含添加、删除、存储、清空数据、全选or单选、tap栏切换)内含详细注释
    【C++专栏】手撕数据结构与算法
    2024HVV行动-进军蓝中研判(log4j2、fastjson、Struts2、Shiro)
    GFS分布式文件系统&实验
    Hbuilder打包成APP流程,以及遇到的坑
    智能中仍存在着许多未被发现的逻辑
    MarkDown详细入门笔记
  • 原文地址:https://blog.csdn.net/weixin_44786530/article/details/133863763
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号