pythonturtle画小白兔_使用Python的turtle画小绵羊

news/2024/11/17 12:52:59/

今天学习使用turtle画图,本来想实现个3D效果,结果2D都画了半天,画圆被绕晕了

目标图片:

实现代码:# -*- coding:utf-8 -*-

# __author__ :kusy

# __content__:文件说明

# __date__:2018/8/21 13:08

import turtle

import time

import math as m

class Sheep(object):

def __init__(self,xsize):

self.t = turtle.Turtle()

self.xsize = xsize

t = self.t

# 画笔设置

t.screen.screensize(canvwidth=1000,canvheight=500,bg='white')

t.pensize(2)

t.speed(10)

# t.hideturtle()

#初始化画笔位置

t.penup()

t.setpos(self.xsize,0)

t.pendown()

# 设置画笔坐标

def setxy(self,x,y):

t = self.t

t.penup()

pos_x = t.position()[0]

pos_y = t.position()[1]

t.setpos(pos_x + x,pos_y + y)

t.pendown()

def create_sheep(self):

t = self.t

# 羊头

self.setxy(-200,0)

t.fillcolor('black')

t.begin_fill()

t.circle(100)

t.end_fill()

# 眼睛

# 眼白

print(t.position())

self.setxy(-20,120)

t.fillcolor('white')

t.begin_fill()

t.seth(45)

t.circle(18,-280)

t.seth(45)

t.circle(-20,292)

t.end_fill()

# 眼珠

self.setxy(3,12)

t.fillcolor('black')

t.begin_fill()

t.seth(85)

t.circle(10)

t.seth(85)

t.circle(-10)

t.end_fill()

# 眼心

t.fillcolor('white')

t.begin_fill()

t.seth(85)

t.circle(3)

t.seth(85)

t.circle(-3)

t.end_fill()

# 嘴

self.setxy(0,-100)

t.color('red')

t.seth(300)

t.forward(8)

self.setxy(-1, 3)

t.seth(0)

t.circle(80,60)

self.setxy(2, -2)

t.seth(145)

t.forward(8)

t.color('black')

# 耳朵

self.setxy(-145,120)

p1 = t.position()

t.fillcolor('black')

t.begin_fill()

t.seth(0)

t.circle(-120,20)

p2 = t.position()

t.setpos(p1)

t.seth(60)

t.circle(-30,120)

t.goto(p2)

t.end_fill()

# 身体

self.setxy(41,12)

t.seth(45)

t.circle(-150,100)

t.pensize(5)

t.seth(0)

t.circle(-120,30)

t.seth(60)

t.circle(-15,320)

t.seth(330)

t.circle(-80,180)

t.seth(210)

t.circle(-80,90)

#4条腿

t.pensize(2)

for leg in range(4):

self.setxy(8+15*leg,0)

t.seth(270)

t.forward(80)

t.seth(0)

t.forward(8)

t.seth(90)

t.forward(80)

#草

self.setxy(-200,-80)

p3 = t.position()

t.color('green')

t.fillcolor('green')

t.begin_fill()

t.seth(120)

t.forward(30)

t.seth(330)

t.forward(30)

t.seth(60)

t.forward(40)

t.seth(260)

t.forward(45)

t.setpos(p3)

t.end_fill()

if __name__ == '__main__':

for x in (0,350):

sheep = Sheep(x)

sheep.create_sheep()

time.sleep(5)

实际效果(2只羊):

PS:circle函数使用记录turtle.circle(radius, extent=None, steps=None)

描述: 以给定半径画圆

参数:

radius(半径); 半径为正(负),表示圆心在画笔的左边(右边)画圆

extent(弧度) (optional);

steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps)

radius > 0,逆时针画圆

radius < 0,顺时针画圆

extent > 0,取正方向的圆

extent < 0,取反方向的圆

参考资料


http://www.ppmy.cn/news/390914.html

相关文章

一些 IT 公司确实存在着很多能够把狼蒸发掉的小白兔

转发周鸿祎微博原文&#xff1a; 公司部门领导和人力资源部门要定期清理小白兔员工&#xff0c;否则就会发生死海效应&#xff1a;公司发展到一定阶段&#xff0c;能力强的员工容易离职&#xff0c;因为他们对公司内愚蠢的行为的容忍度不高&#xff0c;他们也容易找到好工作&a…

小白兔白又白如何用python转换成小了白了兔白了又了白

最近听到一首歌&#xff0c;是这样的&#xff1a; 小了白了兔,白了又了白,两了只了耳了朵了竖了起了来...... 于是突发奇想&#xff0c;设计一段程序&#xff0c;把输入的文字按照这样的格式输出&#xff1b;例如&#xff1a; 输入&#xff1a;小白兔,白又白,两只耳朵竖起来 输…

数据分析避坑指南-小白兔踩坑记

从一开始的数据分析“小白兔”&#xff0c;不断进坑、弹跳出坑&#xff0c;练就健壮有力的小腿&#xff0c;逐步变成一只拥有了防御能力、没有那么弱小的“小灰兔”。 成长和职业发展的过程&#xff0c;就是进阶打怪的过程。进阶初始&#xff0c;由于经验不足&#xff0c;还是一…

c语言程序小兔子吃萝卜图片,小白兔吃萝卜看图写话范文

小白兔吃萝卜看图写话范文 导语&#xff1a;因为有一幅幅图画作为材料&#xff0c;可以消除“无话可写”的烦恼&#xff0c;还可以培养自己的观察、想象和表达能力&#xff0c;是丰富语言积累的好方法&#xff0c;也是小学生学习作文的第一步。下面小编整理了关于一年级的看图写…

小白兔写话_小白兔的看图写话

小白兔的看图写话 时间&#xff1a; 2019-01-08 20:11:28 | 作者&#xff1a;陈浩翔 从前的某一天&#xff0c;阳光明媚&#xff0c;小白兔到外面逛街&#xff0c;买吃的&#xff0c;买衣服&#xff01;因为冬天已 经到了&#xff0c;所以它要买衣服。它现在所在的地方在泰国&a…

小白兔写话_小学二年级期末写话片段练习 可爱的小白兔

可爱的小白兔 小白兔很可爱&#xff0c;我很喜欢它。 小白兔长着一身雪白的皮毛&#xff0c; 摸上去非常舒服。 一对长长的耳朵&#xff0c; 高高竖着&#xff0c; 它有一双红宝石般的大眼睛。非常美丽。 最喜人的就是它的三瓣嘴&#xff0c; 吃东西时很 好玩。它有一个短短的小…

小白兔写话_小白兔看图写话作文

小白兔看图写话作文 下面是小编整理的聪明的小白兔看图写话作文&#xff0c;欢迎阅读。 第一篇&#xff1a;聪明的小白兔 星期六&#xff0c;小白兔趁着好天气&#xff0c;去奶奶家玩。到了花丛里&#xff0c;小白兔开心得手舞足蹈。 正在这时&#xff0c;天上突然乌云密布下起…

小白兔写话_小学二年级写话-我的小白兔

我喜欢小兔子。小兔子有长长的耳朵&#xff0c;洁白的身体&#xff0c;非常可爱。它有两个大门牙&#xff0c;尾巴很短小&#xff0c;个头也很小&#xff0c;像毛绒绒的小球&#xff0c;但它跑得非常快。下面是小编为您整理的一些二年级作文&#xff0c;来供大家学习和参阅! 我…