python使用turtle庫寫六角形的思路與代碼
python用turtle庫寫六角形獨特代碼(新手向)
思路
1.選定適宜規(guī)格畫筆
2.選落腳及其初始偏轉(zhuǎn)角度(可不偏轉(zhuǎn))
3.開始繪制兩個三角形
(1)其中第一個三角形繪制完畢需重新選擇落腳點
(2)第二個三角落腳點可由第一個推算,詳細(xì)代碼后有圖文解釋?。?!
代碼
import turtle #導(dǎo)入turtle庫 turtle.color("pink") #畫筆顏色 turtle.pensize(5) #畫筆粗細(xì) turtle.seth(30) #畫筆落腳角度,可忽略 turtle.penup() turtle.goto(-200,50) #選擇合適下筆處 turtle.pendown() for i in range(3): #繪制第一個等邊三角形 turtle.forward(200) #等邊三角形邊長 turtle.left(120) turtle.penup() turtle.goto(-84.5299461620748,50) #此處由等邊三角形邊長計算:200-200/3*(根號3) turtle.pendown() for i in range(1): #繪制第二個等邊三角形 turtle.left(60) turtle.forward(200) for i in range(2): turtle.left(120) turtle.forward(200) turtle.end_fill()
其中第二個落腳點計算原理:
其中ac=200/3
故得ab=200/3*(根3)=115.4700538379252
由a定點(第一個三角形落筆點)為(-200,50)
且b在a的正方向上
所以b定點(第二個三角形落筆點)為(-84.5299461620748,50)
根據(jù)修改落腳點及角度還可以畫出旋轉(zhuǎn)不同角度的六角形哦**!??!**
下面補充一些可方便繪圖的turtle庫函數(shù)
1.turtle.setx( ):將當(dāng)前x軸移動到指定位置;
2.turtle.sety( ):將當(dāng)前y軸移動到指定位置;
3.turtle.right(x):順時針偏轉(zhuǎn)x°;
4.turtle.left(x):逆時針偏轉(zhuǎn)x°;
5.turtle.penup():不需填充數(shù)據(jù),僅代表提筆;
6.turtle.pendown():表示落筆,與penup搭配時兩者之間需要使用goto移動筆尖位置;
補充:python繪制等邊三角形,四邊形,五角形
等邊三角形代碼如下:
import turtle for i in range(3): turtle.seth(i*120) turtle.fd(100)
四邊形的繪制,我們用fd函數(shù)和seth函數(shù)進(jìn)行繪制
代碼如下:
import turtle for i in range(4): turtle.seth(i*90) turtle.fd(100)
五邊形的繪制同樣也是使用fd函數(shù)和seth函數(shù)進(jìn)行繪制
代碼如下:
import turtle for i in range(5): turtle.seth(i*72) turtle.fd(100)
總結(jié)
到此這篇關(guān)于python使用turtle庫寫六角形的文章就介紹到這了,更多相關(guān)python turtle庫寫六角形內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python (Win)readline和tab補全的安裝方法
今天小編就為大家分享一篇Python (Win)readline和tab補全的安裝方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08python Pygal庫生成SVG(可縮放矢量圖形)圖表示例
這篇文章主要為大家介紹了python Pygal庫生成SVG(可縮放矢量圖形)圖表示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01python利用pandas和csv包向一個csv文件寫入或追加數(shù)據(jù)
這篇文章主要給大家介紹了關(guān)于python利用pandas和csv包向一個csv文件寫入或追加數(shù)據(jù)的相關(guān)資料,我們越來越多的使用pandas進(jìn)行數(shù)據(jù)處理,有時需要向一個已經(jīng)存在的csv文件寫入數(shù)據(jù),需要的朋友可以參考下2023-07-07