亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

想學(xué)畫畫?python滿足你!

瀏覽:3日期:2022-07-01 11:16:11

python中的繪圖工具有不少,比如Matplotlib等等,但這些只能用來畫表格,今天我們來介紹一款可以用來畫畫的庫——turtle。

一、繪圖原理

我們通過控制初始位置為(0,0)的海龜進(jìn)行移動(dòng),根據(jù)一組函數(shù)指令的控制,在平面坐標(biāo)系中移動(dòng),從而在它爬行的路徑上繪制了圖形。

二、開始繪圖

turtle是python自帶的庫,我們直接import導(dǎo)入即可

import turtle設(shè)置繪圖區(qū)域?qū)傩?p>繪圖區(qū)域背景色的設(shè)置

turtle.bgcolor(’blue’)

想學(xué)畫畫?python滿足你!

選擇想要的顏色即可

繪圖區(qū)域大小設(shè)置

turtle.setup(width=200,height=100)

參數(shù):

width, height:

輸入寬和高為整數(shù)時(shí), 表示像素;

為小數(shù)時(shí), 表示占據(jù)電腦屏幕的比例。

畫筆繪制圖形

讓我們先簡單的畫一條直線

turtle.forward(100)

想學(xué)畫畫?python滿足你!

forward()是turtle的內(nèi)置函數(shù),表示從原點(diǎn)向前進(jìn)多少距離。我們還可以控制畫筆的角度讓他轉(zhuǎn)彎。與之對應(yīng)的是backward(),后退多少距離

turtle.backward(100)turtle.left(60)turtle.forward(100)

這里的left()就表示畫筆的轉(zhuǎn)彎方向和角度了,相應(yīng)的right則為向右轉(zhuǎn)。

想學(xué)畫畫?python滿足你!

如圖我們后退了100的距離然后向左偏轉(zhuǎn)60°又前進(jìn)了100距離。其他常用參數(shù)請參考下面的表格

畫筆運(yùn)動(dòng)函數(shù)

函數(shù) 描述 turtle.forward(distance) 向當(dāng)前畫筆方向移動(dòng)distance像素長 turtle.backward(distance) 向當(dāng)前畫筆相反方向移動(dòng)distance像素長度 turtle.right(degree) 順時(shí)針移動(dòng)degree° turtle.left(degree) 逆時(shí)針移動(dòng)degree° turtle.pendown() 移動(dòng)時(shí)繪制圖形,缺省時(shí)也為繪制 turtle.goto(x,y) 將畫筆移動(dòng)到坐標(biāo)為x,y的位置 turtle.penup() 移動(dòng)時(shí)不繪制圖形,提起筆,用于另起一個(gè)地方繪制時(shí)用 turtle.speed(speed) 畫筆繪制的速度范圍[0,10]整數(shù) turtle.circle() 畫圓,半徑為正(負(fù)),表示圓心在畫筆的左邊(右邊)畫圓

畫筆參數(shù)

命令 說明 turtle.pensize(width) 繪制圖形時(shí)的寬度 turtle.pencolor() 畫筆顏色 turtle.fillcolor(colorstring) 繪制圖形的填充顏色 turtle.color(color1, color2) 同時(shí)設(shè)置pencolor=color1, fillcolor=color2 turtle.filling() 返回當(dāng)前是否在填充狀態(tài) turtle.begin_fill() 準(zhǔn)備開始填充圖形 turtle.end_fill() 填充完成; turtle.hideturtle() 隱藏箭頭顯示; turtle.showturtle() 與hideturtle()函數(shù)對應(yīng)

全局控制命令

命令 說明 turtle.clear() 清空turtle窗口,但是turtle的位置和狀態(tài)不會改變 turtle.reset() 清空窗口,重置turtle狀態(tài)為起始狀態(tài) turtle.undo() 撤銷上一個(gè)turtle動(dòng)作 turtle.isvisible() 返回當(dāng)前turtle是否可見 stamp() 復(fù)制當(dāng)前圖形 turtle.write(s[,font=('font-name',font_size,'font_type')]) 寫文本,s為文本內(nèi)容,font是字體的參數(shù),里面分別為字體名稱,大小和類型;font為可選項(xiàng), font的參數(shù)也是可選項(xiàng)

三、for循環(huán)語句

如果我們要畫一個(gè)正方形按照上邊的方法代碼為

import turtleturtle.forward(100)turtle.left(90)turtle.forward(100)turtle.left(90)turtle.forward(100)turtle.left(90)turtle.forward(100)turtle.left(90)

一個(gè)簡單的四邊形就要如此重復(fù),繪制更復(fù)雜的圖形還這樣做的話就顯得不科學(xué)了,這時(shí)候我們就要用到for循環(huán)了。使用for循環(huán)的語句優(yōu)化過的代碼為

totalTimes=4 for times in range(totalTimes): turtle.forward(100) turtle.left(90)

想學(xué)畫畫?python滿足你!

四、簡單示例

繪制五角星

import turtlet=turtle.Pen() #獲得畫筆t.hideturtle() #隱藏箭頭t.begin_fill() #填充圖形for x in range(1, 6): t.forward(100) t.left(216) #在這里先向右直行,然后左轉(zhuǎn)216°(左下,正五角星度數(shù)180/5=36°)t.end_fill() #填充完成

想學(xué)畫畫?python滿足你!

繪制櫻花樹

import turtle as Timport randomimport time # 畫櫻花的軀干(60,t)def Tree(branch, t): time.sleep(0.0005) if branch > 3: if 8 <= branch <= 12: if random.randint(0, 2) == 0:t.color(’snow’) # 白 else:t.color(’lightcoral’) # 淡珊瑚色 t.pensize(branch / 3) elif branch < 8: if random.randint(0, 1) == 0:t.color(’snow’) else:t.color(’lightcoral’) # 淡珊瑚色 t.pensize(branch / 2) else: t.color(’sienna’) # 赭(zhě)色 t.pensize(branch / 10) # 6 t.forward(branch) a = 1.5 * random.random() t.right(20 * a) b = 1.5 * random.random() Tree(branch - 10 * b, t) t.left(40 * a) Tree(branch - 10 * b, t) t.right(20 * a) t.up() t.backward(branch) t.down() # 掉落的花瓣def Petal(m, t): for i in range(m): a = 200 - 400 * random.random() b = 10 - 20 * random.random() t.up() t.forward(b) t.left(90) t.forward(a) t.down() t.color(’lightcoral’) # 淡珊瑚色 t.circle(1) t.up() t.backward(a) t.right(90) t.backward(b) # 繪圖區(qū)域t = T.Turtle()# 畫布大小w = T.Screen()t.hideturtle() # 隱藏畫筆t.getscreen().tracer(5, 0)w.screensize(bg=’wheat’) # wheat小麥t.left(90)t.up()t.backward(150)t.down()t.color(’sienna’) # 畫櫻花的軀干Tree(60, t)# 掉落的花瓣P(guān)etal(200, t)w.exitonclick()

想學(xué)畫畫?python滿足你!

更多關(guān)于python的文章,歡迎關(guān)注python客棧。

想學(xué)畫畫?python滿足你!

以上就是想學(xué)畫畫?python滿足你!的詳細(xì)內(nèi)容,更多關(guān)于python 畫畫的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 五月四房播 | 国产成人精品永久免费视频 | 婷婷成人亚洲 | 国产在线观看网址你懂得 | 国产精品资源手机在线播放 | 青草免费免费观看视频在线 | 国产精品日韩一区二区三区 | 国产小视频在线播放 | 99久久99这里只有免费的精品 | 婷婷六月丁香色婷婷网 | zzzzzzz中国美女 | 亚洲综合无码一区二区 | 欧美亚洲国产一区二区三区 | 国内视频在线 | 免费在线观看网址 | 亚洲免费色视频 | 国产精品久久久久久久久久直 | 一级黄色在线视频 | 在线你懂的 | 在线看片h站 | 婷婷色九月 | 麻豆视频在线免费 | 久久逼网 | 国产日韩欧美在线一区二区三区 | 韩国特黄毛片一级毛片免费 | 福利视频在线观看免费版 | 亚洲欧美日韩高清专区一区 | 网站在线观看 | 亚洲一区二区欧美 | 欧美啊v在线观看 | 在线播放国产色视频在线 | 亚洲成人黄色网 | 一级做性色a爰片久久毛片免费 | 日本中文字幕一区二区 | 欧美日韩1区 | 欧美激情婷婷 | 我要看一级黄色 | 国产午夜免费一区二区三区 | 黄色1级片| 欧美日韩国产在线 | 黄色福利视频网站 |