20180629-Python基本图形绘制

版权声明: https://blog.csdn.net/weixin_40582630/article/details/80833970

一、基本知识

Python语言是:以计算生态为标志的超级语言

  • 通用语言
  • 开源语言
  • 跨平台语言
  • 多模型语言  

二、turtle库的使用

#PythonDraw.py
import turtle #import保留字引入绘图库turtle海龟
turtle.setup(650,350,200,200) #设置绘图窗体的大小和位置,后两个参数省略时在中心
turtle.penup()
turtle.fd(-250)    #海龟正前方  反方向是bk
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("red")
turtle.seth(-40)    #改变海龟行进方向,只改变方向但不行进
for i in range(4):
    turtle.circle(40,80)   #以左侧圆心和半径进行运动
    turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()

1. turtle是绘图体系,于1969年诞生,主要用于程序设计入门,是python语言的标准库之一。

2. Python计算生态=标准库+第三方库。

标准库:随解释器直接安装到操作系统中的功能模块

第三方库:需要经过安装才能使用的功能模块

库Library、包Package、模块Module,统称模块。

  • turtle的绘图窗体

turtle的绘图窗体是turtle的一个画布空间,最小单位是像素


turtle.setup(width,height,startx,starty)

--setup()设置窗体大小及位置

--4个参数中后两个可选

--setup()不是必须的

  • turtle空间坐标体系

1. 使用绝对坐标,如下:


turtle.goto(x,y)爬到某个坐标

import turtle
turtle.setup(500,500)
turtle.pensize(3)
turtle.goto(100,0)
turtle.goto(100,100)
turtle.goto(0,100)
turtle.goto(0,0)
turtle.done()

2. 使用海龟坐标



  • turtle角度坐标系

1. 绝对角度


turtle.seth(angle)

--seth()只改变海龟行进方向,但是不行进

--angle为绝对度数


2. 海龟角度


import turtle
turtle.left(45)
turtle.fd(150)
turtle.right(135)
turtle.fd(300)
turtle.left(135)
turtle.fd(150)
turtle.done()

  • RGB色彩模式(由三种颜色构成的万物色)

--RGB指红蓝绿三个通道的颜色组合

--覆盖视力所能感知的所有颜色

--RGB每色取值范围0-255证书或者0-1小数

常见的RGB色彩如下:



turtle的色彩模式:

默认采用小数值,可切换为整数值

    turtle。colormode(mode)

--1.0:RGB小数值模式

--255:RGB整数值模式

三、turtle程序语法元素分析

1. import保留字用来扩充程序功能,格式为import <库名>

<库名>.<函数名>(<函数参数>)

2. 还可以使用from和import共同完成,即

    from <库名> import <函数名>

    from <库名> import * 

<函数名>(<函数参数>)

from turtle import *
setup(650, 350, 200, 200)
penup()
fd(-250)
pendown()
pensize(25)
pencolor("purple")
seth(-40)
for i in range(4):
    circle(40, 80)
    circle(-40, 80)
circle(40, 80/2)
fd(40)
circle(16, 180)
fd(40 * 2/3)
done()

两种方法对比,第一种方法不会出现函数重名问题,第二种方法则会出现。

3. 还可以使用import和as保留字共同完成,可以给调用的外部关联库一个更短、更适合自己的名字

import <库名> as <库别名>

<库别名>.<函数名>(<函数参数>)

  • turtle画笔控制函数(画笔设置后一直有效,直至下次重新设置)

--turtle.penup()  别名 turtle.pu()  抬起画笔

--turtle.pendown()  别名turtle.pd()  落下画笔

--turtle.pensize(width)  别名 turtle.width(width)  画笔宽度

--turtle.pencolor(color)  color为颜色字符串或者r,g,b值,即画笔颜色。color参与可以有三种形式:

    

  • turtle运动控制函数

控制海龟行进:走直线&走曲线

--turtle.circle(r, extent=None)

        根据半径r绘制extent角度的弧形

--r:默认圆心在海龟左侧r距离的位置

--extent:绘制角度,默认是360度整圆


--turtle.forward(d)  别名 turtle.fd(d)  向前行进,海龟走直线

--d:行进距离,可以为负数

控制海龟面对方向:绝对角度&海龟角度

--turtle.setheading(angle)  别名 turtle.seth(angle)  改变行进方向,海龟走角度

--angle:行进方向的绝对角度


--turtle.left(angle)  海龟向左转

--turtle.right(angle)  海龟向右转

--angle:在海龟当前行进方向上旋转的角度

  • 循环语句与range()函数
for <变量> in range(<次数>):

      <被循环执行的语句>

--<变量>表示每次循环的计数,0到<次数>-1


range()函数


--range(N)  产生0到N-1的整数序列,共N个

--range(M,N) 产生从M到N-1的整数序列,共N-M个

猜你喜欢

转载自blog.csdn.net/weixin_40582630/article/details/80833970