用python和html5在画布上画个车子和笑脸
画汽车
python提供了tutle(海龟)模块。这个模块提供了编写向量图的方法,基本上就是画直线,点和曲线。
海龟是怎样工作的,首先让python导入turtle模块。
import turtle
引入turtle模块后,调用turle模块中的Pen函数,它会自动创建一块画布,并且带一个箭头(它就代表海龟)。
t=turtle.Pen()
我们使用刚创建的t的函数给海龟发指令。
forward指令让海龟向前50个像素,t.forward(50)。
t.left(90)
t.right(90)
海龟左右旋转。
t.reset()
清除画布并且把海龟放在开始位置。
t.clear()
清除屏幕,海龟仍然在原位。
t.up()
画笔放下来不在作画
t.down()
画笔抬起来重新开始画画
画汽车代码:
import turtle
t = turtle.Pen()
t.reset()
t.color(1, 0, 0)
t.begin_fill()
t.forward(100)
t.left(90)
t.forward(20)
t.left(90)
t.forward(20)
t.right(90)
t.forward(20)
t.left(90)
t.forward(60)
t.left(90)
t.forward(20)
t.right(90)
t.forward(20)
t.left(90)
t.forward(20)
t.end_fill()#第一个轮胎
t.color(0, 0, 0)
t.up()
t.forward(10)
t.down()
t.begin_fill()
t.circle(10)
t.end_fill()#第二个轮胎
t.setheading(0)
t.up()
t.forward(90)
t.right(90)
t.forward(10)
t.setheading(0)
t.begin_fill()
t.down()
t.circle(10)
t.end_fill()
![](/assets/blank.gif)
t.color()
改变画笔的颜色
begin_fill和end_fill用来给画布上一个区域填色的
circle绘画一个指定大小的圆
setheading让海龟面向指定的方向
好啦汽车到此就画完了。
画笑脸
canvas为html5最显著,使用得最广泛的元素
整个绘画库都基于上色的div元素。
代码如下:
<canvas id ="mycanvas"></canvas>
<script>var canvas = document.getElementById("mycanvas"),ctx=canvas.getContext("2d");canvas.width=canvas.height=200;//画两个蓝色的圆ctx.fillStyle="blue";ctx.beginPath();ctx.arc(50,50,25,0,Math.PI*2,true);ctx.arc(150,50,25,0,Math.PI*2,true);ctx.fill();//画一个红色三角形ctx.fillStyle="red";ctx.beginPath();ctx.moveTo(100,75);ctx.lineTo(75,125);ctx.lineTo(125,125);ctx.fill();//画一个绿色的半圆ctx.strokeStyle="green";ctx.beginPath();ctx.scale(1,0.5);ctx.arc(100,300,75,Math.PI,0,true);ctx.closePath();ctx.stroke();
</script>
(canvas代码没有太多注释,有时间会补上,)
用python和html5在画布上画个车子和笑脸相关推荐
- python如何画出多个独立的图片_python实现在一个画布上画多个子图
matplotlib 是可以组合许多的小图, 放在一张大图里面显示的. 使用到的方法叫作 subplot. 均匀画图 使用import导入matplotlib.pyplot模块, 并简写成plt. 使 ...
- python创建画布与子图_python实现在一个画布上画多个子图
今天小编就为大家分享一篇python实现在一个画布上画多个子图,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 matplotlib 是可以组合许多的小图, 放在一张大图里面显示的. ...
- python matplotlib在一张画布上画多个图的两种方法,plt.subplot(),plt.subplots()。
Matplotlib在一张画布上画多个图的两种方法,plt.subplot,plt.subplots. 目录 回顾 plt.subplots()画法 plt.subplot()画法 保存 回顾 之前也 ...
- html 怎么在画布上绘制一个圆,javascript – 如何在画布上画一个圆圈?
我使用 javascript和画布绘制一个数学设计的尺度(用于测量扭矩,包括牛顿米和英尺磅).我已经用三角法来定位我的刻度,自然地用弧线绘制电弧线.问题来了,当他们需要排队,但有一些奇怪的失真.然后我 ...
- html5画布添加输入框,JS,HTML5 - 在画布上添加文本输入值作为fillText
我试图用HTML5 canvas来玩弄一点,而我只是在制作一个有趣的小型web应用程序,但我已经陷入困境.JS,HTML5 - 在画布上添加文本输入值作为fillText 我希望用户输入文本到文本框, ...
- python在一张图上画多个线条
python 在一张图上画多个roc ptyon在一张图上添加图例 python将多个roc曲线画到一张图上 说明 我写了一个画图函数,这个函数可以画很多图在一个图上: 可以自由的确定画图个数 调用 ...
- unity 如何在画布上画网格
在 Unity 中,你可以通过使用 LineRenderer 组件来在画布上画网格.首先,你需要创建一个新的游戏对象,并为它添加 LineRenderer 组件.接着,你可以使用 LineRender ...
- html5获得画布上坐标,javascript – HTML5画布在缩放和翻译后获取坐标
背景:我有一个 HTML5画布,我画了一个图像.现在,当图像首次加载时,它以100%的比例加载.图像是5000 x 5000.画布大小是600 x 600.所以onload,我只看到前600 x像素和 ...
- python中怎样在图片上画线段_python 实现PIL模块在图片画线写字
图片上画线条 import sys from PIL import Image,ImageDraw im = Image.open("th.png") draw = ImageDr ...
最新文章
- JAVA网络编程:TCP/IP数据包结构
- curl 与 header 及 file_get_countents 访问内容时的区别
- 神经网络调参batchsize对网络性能影响
- 被误解的MVC和被神化的MVVM
- AutoBench+Httperf的安装、测试
- linux dns及时添加,在ARM Linux上成功实现添加DNS库
- FileZilla 服务器端win server2008以上的配置
- SQLServer访问Oracle查询性能问题解决
- oracle数据库字段的值加一_天天面试--数据库乐观锁和悲观锁
- java compiler = null_Java Compiler command()方法
- STL的vector
- MEF的asp.net Hello World程序
- jQuery中id包含特殊字符,以及包含变量时处理。
- 发送手机验证码登录(使用榛子云短信平台)
- spring注释原理
- java解析json字符串详解(两种方法)
- 设置pdf软件同时查看多页PDF
- 信息安全风险评估_一般找谁做?
- 时间复杂度:1秒内能执行多少指令
- AD21覆铜,包地,补泪滴,有图
热门文章
- 逃离智能家居“怪圈”,智能音箱并不是唯一入口
- 高德地图广告开户找哪里?高德地图推广广告多少钱?
- 卸载python教程
- 无线蓝牙耳机性价比高的品牌推荐,500元内蓝牙耳机性价比排行榜
- 蓝税问答|今天,有幸见识了各类“住房租金”的优惠!
- 计算机屏幕剪切是怎人们剪切呀,如何使用剪切工具在Windows 10中截取屏幕截图...
- Python自动化测试框架【Allure-pytest功能特性介绍】
- 扩展ps流增加“视频帧录像时刻绝对时间戳”方法
- 手游游戏盒子有什么作用和优势?
- 数据库三大范式详解实例图文教程