https://github.com/JackHCC/Draw-Pikaqiu
利用turtle库绘画的眨眼睛的皮卡丘~(Blinking Pikachu using the turtle library painting~)
https://github.com/JackHCC/Draw-Pikaqiu
mini-program python turtle
Last synced: 10 months ago
JSON representation
利用turtle库绘画的眨眼睛的皮卡丘~(Blinking Pikachu using the turtle library painting~)
- Host: GitHub
- URL: https://github.com/JackHCC/Draw-Pikaqiu
- Owner: JackHCC
- Created: 2019-03-03T03:59:43.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-03-03T07:25:35.000Z (almost 7 years ago)
- Last Synced: 2024-11-09T05:33:46.304Z (over 1 year ago)
- Topics: mini-program, python, turtle
- Language: Python
- Homepage:
- Size: 1.16 MB
- Stars: 15
- Watchers: 1
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Pikaqiu 用turtle绘画的皮卡丘
1. 首先我们导入turtle库和time库(用来做动画使用):
```
import turtle as t
import time
```
2. 由于turtle没有画曲线的函数,因此我们自定义画曲线函数,函数有4个参数,ang偏转角度,dis移动步长,step步长增幅,n遍历次数,说白了就是将曲线转化为很多条短长的直线:
```
#画左偏曲线函数
def radian_left(ang,dis,step,n):
for i in range(n):
dis+=step #dis增大step
t.lt(ang) #向左转ang度
t.fd(dis) #向前走dis的步长
def radian_right(ang,dis,step,n):
for i in range(n):
dis+=step
t.rt(ang) #向左转ang度
t.fd(dis) #向前走dis的步长
```
3. 定义画耳朵,眼睛,嘴,轮廓,脚画尾巴的函数,具体见python文件
4. 初始化皮卡丘:
```
#初始化
def Init():
InitEars()
InitTail()
InitFoots()
InitBody()
InitFace()
InitHands()
InitEyes()
```
5. 定义Upgrade函数和Upgarde_init函数制作眨眼动画:
```
#眨眼睛
def Upgarde():
InitEars()
InitTail()
InitFoots()
InitBody()
InitFace()
InitHands()
CloseEyes()
def Upgarde_Init():
InitEars()
InitTail()
InitFoots()
InitBody()
InitFace()
InitHands()
InitEyes()
```
6. Main函数定义:
```
def main():
Init()
t.tracer(False)
#眨眼睛动画
for i in range(30):
if i%2==0:
t.reset()
t.hideturtle()
Upgarde()
t.update()
time.sleep(0.3)
else:
t.reset()
t.hideturtle()
Upgarde_Init()
t.update()
time.sleep(1)
```
# 展示

视频动画可以打包下载该文件,点击pikaqiu.mp4观看
[下载地址](https://github.com/JackHCC/Pikaqiu)