海龟画图(画三角形)

合集下载

海龟画图 重复命令的嵌套

海龟画图 重复命令的嵌套

《重复命令的嵌套》教学设计教学目标:1、学生学会使用重复命令的嵌套绘制图形。

2、激活学生思维、提高学生的动手能力。

教学重难点:重点:重复命令的嵌套,难点:小海龟画下一个基本图形应该旋转的角度。

教学过程:师:同学们,请看大屏幕(出示下图),这些图片好看吗?生:好看!师:那同学们想不想动手来画一画呢?生:想。

师:好的,现在大家用小海龟画出第一个图形。

(学生操作,教师巡视指导)师:大部分同学已经完成了,现在请放下手中的鼠标,转身面向老师,老师有个疑问?同学们是不是分三步?一步一步把三个三角形给凑到一起啊?学生:是。

师:那我们能不能一步就把它画出来呢?生:……师:今天,我们就一起来学习如何一步就画出这样的图形。

现在大家仔细观察这个图形,然后回答下面三个问题:①组成这个图形的基本图形是什么?画这个基本图形的绘图命令是什么?②小海龟每画完一个基本图形,再画下一个基本图形时,是不是可以旋转得到,如果可以,应旋转多少度?③小海龟一共重复画了几次基本图形?(学生思考,讨论)师:好的,哪位同学愿意来和大家分享你的答案?请xx同学。

生:①组成这个图形的基本图形是三角形,三角形的绘图命令:repeat 3[fd 50 rt 360/3]②要旋转120°(rt 360/3 )③重复了3次师:这位同学前面的知识点学的很扎实,三角形的绘图命令很熟练,也很善于思考和观察,谢谢你!请坐。

老师还有一个疑问,如果我要在这个图形中在加入一个三角形,那么,画完第一个图形后,我应该旋转多少度?重复几次?生:旋转90°,重复四次。

师:你是怎么知道要旋转90°,重复四次的?生:因为有四个基本图形,所以要旋转90°,重复四次。

师:看来你已经抓住了图形重复的规律,很好,那么如果要5个基本三角形,要重复几次(生:5次),要旋转多少度?(适当提问几个学生)。

5个的时候要旋转72°。

师:大家请看大屏幕(出示):3个旋转120°、4个旋转90°、5个旋转72°,大家观察一下,这些数字和360°,存在什么样的关系?生:360/基本图形个数=旋转的角度。

python海龟画图知识点总结

python海龟画图知识点总结

python海龟画图知识点总结一、海龟绘图简介海龟绘图是Python语言中的一个标准库,它提供了一个简单的图形绘制功能。

这个模块的灵感来源于小孩子玩耍时的画画游戏,通过调用不同的函数来控制海龟的行为,我们可以在画布上绘制出各种各样的图案和图形。

海龟绘图是一个很好的初学者入门编程的工具,因为它的操作简单直观,而且很容易理解。

二、海龟模块的基本功能在Python中使用海龟绘图,首先我们需要导入turtle这个模块:```pythonimport turtle```接着我们创建一个海龟对象,我们可以给海龟对象取一个名字,比如叫做“t”:```pythont = turtle.Turtle()```接下来,我们就可以开始控制海龟来绘制图形了。

海龟绘图主要通过控制海龟对象的移动和转向来完成,下面是一些常用的海龟操作方法:- 前进:t.forward(distance),表示海龟向当前方向前进一定距离。

- 后退:t.backward(distance),表示海龟向当前方向后退一定距离。

- 左转:t.left(angle),表示海龟向左转动一定角度。

- 右转:t.right(angle),表示海龟向右转动一定角度。

- 提起笔:t.penup(),表示海龟抬起笔,不在绘制图形。

- 落下笔:t.pendown(),表示海龟落下笔,开始绘制图形。

- 设置颜色:t.color(color),表示设置海龟的颜色。

通过组合这些操作方法,我们就可以控制海龟画出各种各样的图案。

下面我们来看几个简单的例子,来演示一下海龟绘图的具体操作。

```pythonimport turtlet = turtle.Turtle()t.forward(100)t.left(90)t.forward(100)t.left(90)t.forward(100)t.left(90)t.forward(100)t.left(90)```这段代码就是使用海龟绘制了一个正方形。

第三课小海龟画正多边形课件(1)

第三课小海龟画正多边形课件(1)

4 教学过程
返回
小海龟画正三角形
一 激趣导入
讲授新课
训练反馈
小海龟画正多边形
4 教学过程
返回
一、激趣导入
小海龟画正多边形
引出:这些奇妙的多边 形,是怎样画出来的呢?
4 教学过程
返回
二、讲授新课
(一) 算法和流程图
(二) 更优的算法
(三) 用循环语句编程
小海龟画正多边形
4 教学过程
二、讲授新课
小海龟画正多边形
1
教材分析
2
教法分析
3
学法指点
4
教学过程
5
小海龟画正多边形
板书设计
1 教材分析
返回
(一)教材地位与作用:
小海龟画正三角形、彩色正五边形
承 上
小海龟画正多边形
启 下
累加求和
小海龟画正多边形
1 教材分析
(二)教学目标分析:





程与Leabharlann 与技方能

小海龟画正多边形
返回

情 感 态 度 价 值 观
1 教材分析
返回
(二)教学目标分析:
(1)了解什么是算法,了解算法的自然语言描述和流程图描述。 (2)理解For…EndFor循环语句的使用方法。
环绕“小海龟画正多边形”这个任务,采用讲授、练习、讨论、探 究相结合的方式开展教学活动。
(1)通过由浅入深的问答和任务,增强学生学习编程的兴趣和信心。 (2)通过编写程序,提高严谨的逻辑思维能力。 (3)通过分小组探讨和合作完成习题,抢答问题,培养合作和竞争能力。
Turtle.Turn(120)

海龟绘图(TurtleGraphics)

海龟绘图(TurtleGraphics)

海龟绘图(TurtleGraphics)python2.6版本中后引⼊的⼀个简单的绘图⼯具,叫做海龟绘图(Turtle Graphics),turtle库是python的内部库,使⽤导⼊即可import turtle先说明⼀下turtle绘图的基础知识:1. 画布(canvas)画布就是turtle为我们展开⽤于绘图区域, 我们可以设置它的⼤⼩和初始位置1.1 设置画布⼤⼩turtle.screensize(canvwidth=None, canvheight=None, bg=None)参数分别为画布的宽(单位像素), ⾼, 背景颜⾊如:turtle.screensize(800, 600, "green")turtle.screensize() #返回默认⼤⼩(400, 300)turtle.setup(width=0.5, height=0.75, startx=None, starty=None)参数:width, height: 输⼊宽和⾼为整数时, 表⽰像素; 为⼩数时, 表⽰占据电脑屏幕的⽐例(startx, starty): 这⼀坐标表⽰矩形窗⼝左上⾓顶点的位置, 如果为空,则窗⼝位于屏幕中⼼如:turtle.setup(width=0.6, height=0.6)turtle.setup(width=800, height=800, startx=100, starty=100)2. 画笔2.1 画笔的状态在画布上,默认有⼀个坐标原点为画布中⼼的坐标轴, 坐标原点上有⼀只⾯朝x轴正⽅向⼩乌龟. 这⾥我们描述⼩乌龟时使⽤了两个词语:坐标原点(位置),⾯朝x轴正⽅向(⽅向), turtle绘图中, 就是使⽤位置⽅向描述⼩乌龟(画笔)的状态2.2 画笔的属性画笔(画笔的属性,颜⾊、画线的宽度)1) turtle.pensize():设置画笔的宽度;2) turtle.pencolor(); 没有参数传⼊,返回当前画笔颜⾊,传⼊参数设置画笔颜⾊,可以是字符串如"green", "red",也可以是RGB 3元组,>>> pencolor('brown')>>> tup = (0.2, 0.8, 0.55)>>> pencolor(tup)>>> pencolor()'#33cc8c'3) turtle.speed(speed): 设置画笔移动速度,画笔绘制的速度范围[0,10]整数, 数字越⼤越快2.3 绘图命令操纵海龟绘图有着许多的命令,这些命令可以划分为3种:⼀种为运动命令,⼀种为画笔控制命令,还有⼀种是全局控制命令(1)画笔运动命令:命令说明turtle.forward(distance)向当前画笔⽅向移动distance像素长turtle.backward(distance)向当前画笔相反⽅向移动distance像素长度turtle.right(degree)顺时针移动degree°turtle.left(degree)逆时针移动degree°turtle.pendown()移动时绘制图形,缺省时也为绘制turtle.goto(x,y)将画笔移动到坐标为x,y的位置turtle.penup()移动时不绘制图形,提起笔,⽤于另起⼀个地⽅绘制时⽤turtle.speed(speed)画笔绘制的速度范围[0,10]整数命令说明(2)画笔控制命令:命令说明turtle.pensize(width)绘制图形时的宽度turtle.pencolor()画笔颜⾊turtle.fillcolor(colorstring)绘制图形的填充颜⾊turtle.color(color1, color2)同时设置pencolor=color1, fillcolor=color2turtle.filling()返回当前是否在填充状态turtle.begin_fill()准备开始填充图形turtle.end_fill()填充完成;turtle.hideturtle()隐藏箭头显⽰;turtle.showturtle()与hideturtle()函数对应(3) 全局控制命令命令说明turtle.clear()清空turtle窗⼝,但是turtle的位置和状态不会改变turtle.reset()清空窗⼝,重置turtle状态为起始状态turtle.undo()撤销上⼀个turtle动作turtle.isvisible()返回当前turtle是否可见stamp()复制当前图形turtle.write(s[,font=("font-name",font_size,"font_type")])写⽂本,s为⽂本内容,font是字体的参数,⾥⾯分别为字体名称,⼤⼩和类型;font为可选项, font的参数也是可选项3. 命令详解3.1 turtle.circle(radius, extent=None, steps=None)描述: 以给定半径画圆参数:radius(半径); 半径为正(负),表⽰圆⼼在画笔的左边(右边)画圆extent(弧度) (optional);steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps)举例:circle(50) # 整圆;circle(50,steps=3) # 三⾓形;circle(120, 180) # 半圆4. 绘图举例4.1 太阳花import turtle as timport timet.color("red", "yellow")t.speed(10)t.begin_fill()for _ in range(50):t.forward(200)t.left(170)end_fill()time.sleep(1)4.2 绘制⼩蟒蛇import turtledef drawSnake(rad, angle, len, neckrad):for _ in range(len):turtle.circle(rad, angle)turtle.circle(-rad, angle)turtle.circle(rad, angle/2)turtle.circle(neckrad, 180)turtle.forward(rad/4)if __name__ == "__main__":turtle.setup(1500, 1400, 0, 0)turtle.pensize(30) # 画笔尺⼨turtle.pencolor("green")turtle.seth(-40) # 前进的⽅向drawSnake(70, 80, 2, 15)4.3 绘制五⾓星import turtleimport timeturtle.pensize(5)turtle.pencolor("yellow")turtle.fillcolor("red")turtle.begin_fill()for _ in range(5):turtle.forward(200)turtle.right(144)turtle.end_fill()time.sleep(2)turtle.penup()turtle.goto(-150,-120)turtle.color("violet")turtle.write("Done", font=('Arial', 40, 'normal'))time.sleep(1)4.4 ⼩猪佩奇感谢的⼩猪佩奇, 很传神:)#!/usr/bin/python# -*- coding: utf-8 -*-"""@time :2018/10/10 10:18@author: yang.bin"""# coding:utf-8import turtle as t# 绘制⼩猪佩奇# ======================================= t.pensize(4)t.hideturtle()t.colormode(255)t.color((255, 155, 192), "pink")t.setup(840, 500)t.speed(10)# ⿐⼦t.penup()t.goto(-100,100)t.pendown()t.seth(-30)t.begin_fill()a = 0.4for i in range(120):if 0 <= i < 30 or 60 <= i < 90:a = a+0.08t.left(3) # 向左转3度t.forward(a) # 向前⾛a的步长else:a = a-0.08t.forward(a)t.end_fill()t.penup()t.seth(90)t.forward(25)t.seth(0)t.forward(10)t.pendown()t.pencolor(255, 155, 192)t.seth(10)t.begin_fill()t.circle(5)t.color(160, 82, 45)t.end_fill()t.penup()t.seth(0)t.forward(20)t.pendown()t.pencolor(255, 155, 192)t.seth(10)t.begin_fill()t.circle(5)t.color(160, 82, 45)t.end_fill()# 头t.color((255, 155, 192), "pink") t.penup()t.seth(90)t.forward(41)t.seth(0)t.forward(0)t.pendown()t.begin_fill()t.seth(180)t.circle(300, -30)t.circle(100, -60)t.circle(80, -100)t.circle(150, -20)t.circle(60, -95)t.seth(161)t.circle(-300, 15)t.penup()t.goto(-100, 100)t.pendown()t.seth(-30)a = 0.4for i in range(60):if 0 <= i < 30 or 60 <= i <90:a = a+0.08t.left(3) # 向左转3度t.forward(a) # 向前⾛a的步长 else:a = a-0.08t.left(3)t.forward(a)t.end_fill()# ⽿朵t.color((255, 155, 192), "pink") t.penup()t.seth(90)t.forward(-7)t.seth(0)t.forward(70)t.circle(-50, 50)t.circle(-10, 120)t.circle(-50, 54)t.end_fill()t.penup()t.seth(90)t.forward(-12)t.seth(0)t.forward(30)t.pendown()t.begin_fill()t.seth(100)t.circle(-50, 50)t.circle(-10, 120)t.circle(-50, 56)t.end_fill()#眼睛t.color((255, 155, 192), "white") t.penup()t.seth(90)t.forward(-20)t.seth(0)t.forward(-95)t.pendown()t.begin_fill()t.circle(15)t.end_fill()t.color("black")t.penup()t.seth(90)t.forward(12)t.seth(0)t.forward(-3)t.pendown()t.begin_fill()t.circle(3)t.end_fill()t.color((255, 155, 192), "white") t.penup()t.seth(90)t.forward(-25)t.seth(0)t.forward(40)t.pendown()t.begin_fill()t.circle(15)t.end_fill()t.color("black")t.penup()t.seth(90)t.forward(12)t.seth(0)t.forward(-3)t.pendown()t.begin_fill()t.circle(3)t.end_fill()# 腮t.color((255, 155, 192))t.seth(0)t.forward(65)t.pendown()t.begin_fill()t.circle(30)t.end_fill()# 嘴t.color(239, 69, 19)t.penup()t.seth(90)t.forward(15)t.seth(0)t.forward(-100)t.pendown()t.seth(-80)t.circle(30, 40)t.circle(40, 80)# ⾝体t.color("red", (255, 99, 71))t.penup()t.seth(90)t.forward(-20)t.seth(0)t.forward(-78)t.pendown()t.begin_fill()t.seth(-130)t.circle(100,10)t.circle(300,30)t.seth(0)t.forward(230)t.seth(90)t.circle(300,30)t.circle(100,3)t.color((255,155,192),(255,100,100)) t.seth(-135)t.circle(-80,63)t.circle(-150,24)t.end_fill()# ⼿t.color((255,155,192))t.penup()t.seth(90)t.forward(-40)t.seth(0)t.forward(-27)t.pendown()t.seth(-160)t.circle(300,15)t.penup()t.seth(90)t.forward(15)t.seth(0)t.forward(0)t.pendown()t.seth(-10)t.circle(-20,90)t.penup()t.seth(90)t.forward(30)t.seth(0)t.circle(-300,15)t.penup()t.seth(90)t.forward(20)t.seth(0)t.forward(0)t.pendown()t.seth(-170)t.circle(20,90)# 脚t.pensize(10)t.color((240,128,128)) t.penup()t.seth(90)t.forward(-75)t.seth(0)t.forward(-180)t.pendown()t.seth(-90)t.forward(40)t.seth(-180)t.color("black")t.pensize(15)t.forward(20)t.pensize(10)t.color((240, 128, 128)) t.penup()t.seth(90)t.forward(40)t.seth(0)t.forward(90)t.pendown()t.seth(-90)t.forward(40)t.seth(-180)t.color("black")t.pensize(15)t.forward(20)# 尾巴t.pensize(4)t.color((255, 155, 192)) t.penup()t.seth(90)t.forward(70)t.seth(0)t.forward(95)t.pendown()t.seth(0)t.circle(70, 20)t.circle(10, 330)t.circle(70, 30)t.done()。

优质课一等奖初中综合实践活动《走进程序世界:小海龟画正三角形》

优质课一等奖初中综合实践活动《走进程序世界:小海龟画正三角形》

总结
1、今天这节课你有哪些收获? 2、学完这节课后你有什么感受 ?
观看小短片
学习目标
• 1、懂得small basic语句定义的格式和书写规范 ; • 2、学会指挥小海龟准确地画出正三角形、正方形和长方 形。
小海龟画正三角形命令
turtle .move(100) turtle .turn(120) tur .move(100) turtle .turn(120)
turtle .move(100) turtle .turn(90) turtle .move(50) turtle .turn(90) turtle .move(100) turtle .turn(90) turtle .move(50) turtle .turn(90)
小结
1、小海龟“Turtle”是一个( 对象 ),“Move()”是“Turtle”的一个 (操作),每个操作后面都带有一个( “()”)。 2、“Move(100)”表示( 向前移动100步 ) 。 3 “Turtle(120)” 表示( 向右转弯120度 )。 4、“对象”与它的“操作”之间用符号( “.” )连接。
任务二:设计小海龟画正方形的命令
•翻译命令
turtle .move(100) turtle .turn(90) turtle .move(100) turtle .turn(90) turtle .move(100) turtle .turn(90) turtle .move(100) turtle .turn(90)
任务三:设计小海龟画长方形的命令 •看哪个小组最快完成。最快的小组加10分。
完成后组长立刻上来 将命令写在主机上!
任务三:设计小海龟画正方形的命令
•翻译命令,想想是否还有不一样的方法?

Python编程:第2课《海龟绘图》课件

Python编程:第2课《海龟绘图》课件

turtle画布使用
Y
例如执行代码: turtle.forw1a.trudr(tl1e0画0布) 以像(素3)为t长ur度tle,画距布离中为的1坐称标为系一个单位长度。
2.turtle绘图模块的画布,就像一个平面直角坐标系,画布的每一个点的位置都可以用坐标表示,画布的中 注意心点点:就坐等标于系坐在标画系布的中中并心不点A会((1显000,示0,0)出) 。来X。 画笔往前走100个像素到达A点,并且把经过的这 100个像素改变为黑色,这样就相当于在绘图区 域绘制了一条线段
from 模块名 import *
from turtle import * forward(100)
turtle画布
turtle画布
turtle绘图模块的画布,就像一个平面直角坐标系,画布的每一个点 的位1.置tur都tle可画以布用以坐像(标素3表)为示t长u。r度tle,画距布离中为的1坐称标为系一个单位长度。
t.pensize(5)
t.pensize(5) # 改变画笔粗细t.circle(80)
# 内圆 t.pencolor('blue') t.circle(80)
t.penup() t.goto(0,-40) t.pendown()
t.penup() t.goto(0,-40) t.pendown()
# 抬起画笔 # 外圆 # 将画笔移t动.pe到nc(0ol,o-r4('0re)d') # 放下画笔 t.circle(120)
# t.hideturtle()
# 外圆 t.pencolor('red') t.circle(120)
import turtle turtle.pensize(1)

利用Turtle绘制各种图形

利用Turtle绘制各种图形

利⽤Turtle绘制各种图形⾸先引⼊函数库:第⼀种:import turtleimport turtle as t第⼆种:from turtle import *1:使⽤ turtle 库的 turtle.fd() 函数和 turtle.left() 函数绘制⼀个等边三⾓形,边长为 200 像素。

import turtle as tfor i in range(3):t.fd(200)t.left(120)2、使⽤ turtle 库的 turtle.fd() 函数和 turtle.seth() 函数绘制⼀个边长为 200 的正⽅形,效果如下图所⽰。

import turtle as tfor i in range(4):t.fd(200)t.left(90)⽅法⼆:import turtled = 0for i in range(4):turtle.fd(200)d=d+90turtle.seth(d) #seth()海龟⽅向始终为正东⽅向。

3.⽤ turtle 库的 turtle.fd() 函数和 turtle.seth() 函数绘制⼀个五边形,边长为 200 像素,效果如下图所⽰。

import turtled = 0for i in range(5):turtle.fd(200)d += 72turtle.seth(d)效果图:4.⽤ turtle 库的 turtle.fd() 函数和 turtle.left() 函数绘制⼀个六边形,边长为 200 像素,效果如下图所⽰。

import turtle as tfor i in range(6):t.fd(200)t.left(60)效果图:5.使⽤ turtle 库的 turtle.circle() 函数、turtle.seth() 函数和 turtle.left() 函数绘制⼀个四瓣花图形,从左上⾓花瓣开始,逆时针作画,效果如下图所⽰import turtle as tfor i in range(4):t.seth(90 * (i + 1))#90,180,270,360t.circle(200,90)#-90,0,90,180t.seth(-90 + i * 90)t.circle(200,90)⽅法2:import turtlefor i in range(4):turtle.left(90)turtle.circle(50,180)6.使⽤ turtle 库的 turtle.right() 函数和 turtle.circle() 函数绘制⼀个四叶草,效果如下图所⽰。

小海龟画正三角形

小海龟画正三角形

第一课小海‎龟画正三角‎形教学目标:1、初步认识s‎m all basic‎语言,了解其基本‎的操作使用‎方法。

2、理解什么是‎对象及其属‎性、操作方法。

3、认识“Turtl‎e”对象,掌握其属性‎、操作方法。

4、掌握使用s‎m all basic‎命令(语句)画正三角形‎的方法。

教学重难点‎:重点:掌握使用对‎象的属性、操作的方法‎;难点:理解对象及‎其属性、操作。

教学方法:演示法、任务驱动法‎、讲授法教学过程:一、认识Sma‎l l Basic‎二、命令的分析‎三、实例教学(教师演示)四、学生动手实‎践1、经过自主练‎习,同学们能够‎成功运行程‎序吗?最终画出什‎么图形呢?2、不成功的话‎,又存在着哪‎些问题呢?为什么呢?该如何解决‎呢?五、深入学习1、思考问题:A、小海龟能不‎能在窗口的‎任意位置画‎三角形?B、小海龟能不‎能“爬”快点?C、小海龟开始‎“爬”时,头能否不垂‎直向上,能否改变方‎向?2、属性、操作的学习‎3、实例教学六、自主练习任务:请同学们利‎用已经学习‎的T urt‎l e属性和‎操作,自己动手试‎一试,画出各种图‎形。

七、学生演示八、总结第二课小海‎龟画彩色正‎五边形教学目标:1、理解变量及‎其命名规则‎2、掌握变量的‎赋值及变量‎的应用3、认识”Graph‎i csWi‎n dow”对象及常用‎属性设置教学重难点‎重点:变量及其应‎用难点:理解赋值语‎句,不要将赋值‎语句和数学‎中的等式混‎为一谈。

教学方法讲授法、演示法、任务驱动法‎教学过程一、引入教学1、小海龟画一‎个正三边形‎。

2、小海龟画正‎五边形命令:命令:2、疑问?小海龟画正‎五边形的方‎法与画正三‎边形的方法‎相似:画一条边,旋转一定的‎角度,然后再画一条边‎,旋转一定的‎角度……直到画完。

然而,两者唯一不‎同的地方就‎是边数和旋‎转的角度。

假如小海龟‎要画正N边‎形,需要修改旋‎转的角度,以及画的边‎长的大小,这时候一个‎一个地修改‎,会不会很麻‎烦呢?为了简化工‎作,对于边长的‎大小和旋转‎的角度,我们能否分‎别用代表未‎知数的“符号”来表示呢?比如:Turtl‎e.Move(100)中的“100”能否用未知‎数“Lengt‎h”来表示呢?二、变量1、变量:1、我们将程序‎中代表某个‎值的符号称‎为“变量”。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档