Python編寫萬花尺圖案實(shí)例
小的時候大家應(yīng)該都玩過萬花尺,將筆尖放置萬花尺內(nèi)不停的轉(zhuǎn)動,便可以畫出一幅精致的線稿圖,現(xiàn)在我們不用萬花尺,我們通過Python也能繪制出萬花尺圖案。
(一)代碼
#!/usr/bin/python# -*- coding: UTF-8 - *-import mathclass PTS:def __ init __(self):self.x = 0self.y = 0points = []def LineToDemo():from Tkinter import *screenx = 400screeny = 400canvas = Canvas(width = screenx,height = screeny,bg = ‘white’)AspectRatio = 0.85MAXPTS = 15h = screenyw = screenxxcenter = w / 2ycenter = h / 2radius = (h - 30) / (AspectRatio * 2) - 20step = 360 / MAXPTSangle = 0.0for i in range(MAXPTS): rads = angle * math.pi / 180.0 p = PTS() p.x = xcenter + int(math.cos(rads) * radius) p.y = ycenter - int(math.sin(rads) * radius * AspectRatio) angle += step points.append(p)canvas.create_oval(xcenter - radius,ycenter - radius, xcenter + radius,ycenter + radius)for i in range(MAXPTS): for j in range(i,MAXPTS): canvas.create_line(points[i].x,points[i].y,points[j].x,points[j].y)canvas.pack()mainloop()if __name__ == ’__main__’:LineToDemo()
(二)實(shí)現(xiàn)結(jié)果
我們還可以通過修改不同的參數(shù)來實(shí)現(xiàn)不同的圖案轉(zhuǎn)化,大家可以多試試,做出多種不同的效果圖。
到此這篇關(guān)于Python編寫萬花尺圖案實(shí)例的文章就介紹到這了,更多相關(guān)Python之萬花尺圖案內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. HTTP協(xié)議常用的請求頭和響應(yīng)頭響應(yīng)詳解說明(學(xué)習(xí))2. IntelliJ IDEA創(chuàng)建web項目的方法3. 原生JS實(shí)現(xiàn)記憶翻牌游戲4. Python寫捕魚達(dá)人的游戲?qū)崿F(xiàn)5. 存儲于xml中需要的HTML轉(zhuǎn)義代碼6. Android studio 解決logcat無過濾工具欄的操作7. django創(chuàng)建css文件夾的具體方法8. ASP.NET MVC通過勾選checkbox更改select的內(nèi)容9. ASP中實(shí)現(xiàn)字符部位類似.NET里String對象的PadLeft和PadRight函數(shù)10. Django如何繼承AbstractUser擴(kuò)展字段
