基於Python-turtle庫繪制路飛的草帽骷髏旗、美國隊長的盾牌、高達的源碼
源碼:
#路飛骷髏 import turtle as t #黃底帽子 t.pu() t.goto(0,200) t.circle(-130,-80) t.pd() t.colormode(255) t.pensize(5) t.color(242,232,184) #帽子黃底RGB t.begin_fill() t.pencolor(0,0,0) t.circle(-130,160) t.seth(180) t.fd(255) t.end_fill() #紅色線條 t.begin_fill() t.color(221,65,43) #帽子紅色帶 t.pencolor(0,0,0) t.seth(80) t.circle(-130,19) t.seth(0) t.fd(225) t.seth(-59) t.circle(-130,19) t.seth(180) t.fd(255) t.end_fill() #帽簷 t.begin_fill() t.color(242,232,184) t.pencolor(0,0,0) t.fd(60) t.circle(12,180) t.fd(375) t.circle(12,180) t.fd(255 + 60) t.end_fill() #臉部下半輪廓 t.pu() t.setpos(0,-30) t.seth(-180) t.circle(-130,-75) t.pd() t.circle(-130,150) #眼睛鼻子 t.pu() t.color(33,24,24) #眼睛、鼻子RGB t.setpos(-45,64) t.seth(-180) t.pd() t.begin_fill() t.circle(33) t.pu() t.setpos(45,64) t.pd() t.circle(33) t.end_fill() t.pu() t.setpos(0,5) t.pd() t.begin_fill() t.circle(8) t.end_fill() #下巴 t.pencolor(0,0,0) t.pu() t.setpos(0,0) t.seth(0) t.circle(-75,45) t.pd() t.circle(-75,270) #牙齒 t.pu() t.setpos(0,120) t.seth(0) t.circle(-105,136) t.pd() t.circle(-105,86) t.pu() t.seth(0) t.goto(0,200) t.circle(-130,150) t.pd() t.circle(-130,60) t.pu() #牙齒三根豎線 t.setpos(-30,-27) t.seth(260) t.pd() t.fd(52) t.pu() t.setpos(30,-27) t.pd() t.seth(-260) t.fd(-52) t.pu() t.setpos(0,-30) t.seth(-90) t.pd() t.fd(56) #上排右側小爪爪 #釋放註釋為:上排右側小爪爪實心金方案 t.pu() #t.color(255,215,0) #金色的RGB t.pencolor(0,0,0) t.setpos(110,145) t.seth(45) t.pd() #t.begin_fill() t.fd(40) t.seth(135) t.circle(-30,235) t.seth(-20) t.circle(-30,220) t.seth(-135) t.fd(40) #t.end_fill() #上排左側小爪爪 t.pu() t.pencolor(0,0,0) t.setpos(-110,145) t.seth(135) t.pd() t.fd(40) t.seth(45) t.circle(30,235) t.seth(-160) t.circle(30,220) t.seth(-45) t.fd(40) #下排右側小爪爪 t.pu() t.setpos(70,-10) t.seth(-45) t.pd() t.fd(70) t.seth(45) t.circle(-30,235) t.seth(-70) t.circle(-30,255) t.seth(135) t.fd(22) #下排左側小爪爪 t.pu() t.setpos(-70,-10) t.seth(-135) t.pd() t.fd(70) t.seth(135) t.circle(30,235) t.seth(-110) t.circle(30,255) t.seth(45) t.fd(22) t.done()
效果圖:
源碼:
# -*- coding:utf-8 -*- import turtle import math def shield(): ''' 該函數的作用是畫一個美國隊長的盾牌 ''' # 設置畫佈背景 turtle.bgcolor('#FFFFFF') # 設置畫筆速度 turtle.speed(10) # 依次填充同心圓 fill_circle('#FF0000', 230) fill_circle('#FFFFFF', 178) fill_circle('#FF0000', 129) fill_circle('#0000FF', 75) # 完成五角星 draw_five('#FFFFFF', 75) # 以下代碼,將畫好的圖案按指定格式保存到當前文件目錄 # windows 可以使用.jpg格式,或.ps,MAC使用eps格式,或.ps ts = turtle.getscreen() ts.getcanvas().postscript(file="shield.eps") # 啟動事件循環,必須是烏龜圖形程序中的最後一個語句 # 如果沒有這個語句,代碼運行完成後,窗口直接消失。 turtle.done() def draw_circle(radium): ''' 該函數的作用是畫一個圓線 :param radium:半徑 ''' # 畫筆定位到圓點 turtle.home() # 提筆 turtle.penup() # 向前移動指定的半徑 turtle.forward(radium) # 落筆 turtle.pendown() # 偏轉角度 turtle.setheading(90) # 畫一個指定半徑的圓 turtle.circle(radium) # 提筆 turtle.penup() def fill_circle(color, r1): ''' 該函數的作用是,畫一個圓環,有指定的填充色和半徑 :param color:顏色 :param r1:半徑 ''' # 設置畫筆顏色 turtle.pencolor(color) # 設置填充顏色 turtle.fillcolor(color) # 開始填充 turtle.begin_fill() # 畫圓線 draw_circle(r1) # 結束填充 turtle.end_fill() # 畫並填充五角星 def draw_five(color, radium): ''' 該函數的作用是畫一個五角星 :param color:顏色 :para radium: ''' # 畫筆定位到圓點 turtle.home() # 提筆 turtle.penup() # 偏轉90度 turtle.setheading(90) # 向前移動90個像素 turtle.forward(radium) # 偏轉288度 turtle.setheading(288) # 落筆 turtle.pendown() # radians()將角度轉換為弧度 long_side = (math.sin(math.radians(36))*radium)/math.sin(math.radians(126)) # 設置畫筆顏色 turtle.pencolor(color) # 設置填充顏色 turtle.fillcolor(color) # 開始填充 turtle.begin_fill() for i in range(10): turtle.forward(long_side) if i % 2 == 0: turtle.left(72) else: turtle.right(144) # 結束填充 turtle.end_fill() # 提筆 turtle.penup() # 運行主函數 shield()
效果圖:
源碼:
import turtle t=turtle.Turtle() turtle.Turtle().screen.delay(0) tleft=turtle.Turtle() #第一部分 t.penup() t.goto(0,0) t.pendown() t.left(20) t.forward(110) t.left(25) t.forward(40) t.left(100) t.circle(180,20) t.right(120) t.forward(250) t.left(165) t.forward(250) t.right(100) t.forward(35) t.left(70) t.forward(45) t.left(70) t.forward(120) t.left(70) t.forward(80) t.left(80) t.forward(80) t.left(68) t.forward(120) t.left(180) t.forward(78) t.right(68) t.forward(60) t.right(75) t.forward(60) t.right(110) t.forward(15) t.left(38) t.forward(65) t.right(73)#五邊形的直邊 t.forward(35) t.right(70) t.forward(65) t.right(68) t.forward(50) t.right(80) t.forward(50) t.penup() t.goto(-65,68) t.pendown() t.right(7) t.forward(350) t.right(165) t.forward(330) t.penup() t.goto(64,65) t.pendown() t.left(75) t.forward(350) t.left(165) t.forward(330) t.penup() t.goto(300,500) #第二部分 tleft.left(180) tleft.right(20) tleft.forward(110) tleft.right(25) tleft.forward(40) tleft.right(100) tleft.circle(-180,20) tleft.left(120) tleft.forward(250) tleft.right(165) tleft.forward(250) tleft.left(100) tleft.forward(35) tleft.penup() tleft.goto(0,0) tleft.pendown() tleft.left(20) tleft.penup() tleft.forward(18) tleft.pendown() tleft.forward(50)#額頭豎線 tleft.penup() tleft.forward(110)#消除豎線 tleft.pendown() tleft.left(90) tleft.forward(30) tleft.right(90) tleft.forward(60) tleft.right(90) tleft.forward(60) tleft.right(90) tleft.forward(60) tleft.right(90) tleft.forward(40) tleft.penup() tleft.forward(30) tleft.pendown() tleft.left(90) tleft.forward(30) tleft.right(180) tleft.forward(100) tleft.right(90) tleft.forward(80) tleft.right(90) tleft.forward(100) tleft.penup() tleft.goto(150,70) tleft.pendown() tleft.left(100) tleft.forward(40) tleft.right(80) tleft.circle(-333,40) tleft.right(160) tleft.forward(230) #右半部分 tleft.left(100) tleft.forward(40) tleft.left(80) tleft.forward(20) tleft.left(100) tleft.forward(30) tleft.right(100) tleft.forward(20) tleft.right(80) tleft.forward(30) tleft.left(80) tleft.forward(20) tleft.left(100) tleft.forward(30) tleft.right(100) tleft.forward(20) tleft.right(80) tleft.forward(30) tleft.left(80) tleft.forward(20) tleft.left(100) tleft.forward(30) tleft.right(100) tleft.forward(20) tleft.right(80) tleft.forward(30) tleft.left(80) tleft.forward(20) tleft.left(100) tleft.forward(30) tleft.right(100) tleft.forward(20) tleft.right(80) tleft.forward(30) tleft.left(80) tleft.forward(20) tleft.left(100) tleft.forward(30) tleft.right(100) tleft.forward(20) tleft.right(80) tleft.forward(30) tleft.left(80) tleft.forward(20) tleft.left(100) tleft.forward(30) tleft.right(100) tleft.forward(20) tleft.right(80) tleft.forward(30) #右下部分 tleft.left(70) tleft.forward(30) tleft.right(110) tleft.forward(40) tleft.right(60) tleft.forward(100) tleft.right(30) tleft.circle(200,20) tleft.left(10) tleft.forward(80) #右下部分goto tleft.penup() tleft.goto(145,-198) tleft.pendown() tleft.left(90) tleft.forward(30) tleft.right(30) tleft.forward(40) tleft.right(150) tleft.forward(30) tleft.backward(30) tleft.left(90) tleft.forward(100) tleft.right(90) tleft.forward(30) tleft.backward(30) tleft.left(90) tleft.right(30) tleft.circle(200,20) tleft.left(10) tleft.forward(50) #第三部分臉 t2=turtle.Turtle() t2.penup() t2.goto(0,-80) #尖角 t2.circle(150,extent=90) t2.pendown() t2.circle(150,extent=30) t2.penup() t2.circle(150,extent=18) t2.pendown() t2.circle(150,extent=27) t2.penup() t2.circle(150,extent=30) t2.pendown() t2.circle(150,extent=27) t2.penup() t2.circle(150,extent=18) t2.pendown() t2.circle(150,extent=30) t2.right(100) t2.forward(40) #左臉夾 t2.left(80) t2.circle(333,40) t2.left(160) t2.forward(230) #左半部分 t2.right(100) t2.forward(40) t2.right(80) t2.forward(20) t2.right(100) t2.forward(30) t2.left(100) t2.forward(20) t2.left(80) t2.forward(30) t2.right(80) t2.forward(20) t2.right(100) t2.forward(30) t2.left(100) t2.forward(20) t2.left(80) t2.forward(30) t2.right(80) t2.forward(20) t2.right(100) t2.forward(30) t2.left(100) t2.forward(20) t2.left(80) t2.forward(30) t2.right(80) t2.forward(20) t2.right(100) t2.forward(30) t2.left(100) t2.forward(20) t2.left(80) t2.forward(30) t2.right(80) t2.forward(20) t2.right(100) t2.forward(30) t2.left(100) t2.forward(20) t2.left(80) t2.forward(30) t2.right(80) t2.forward(20) t2.right(100) t2.forward(30) t2.left(100) t2.forward(20) t2.left(80) t2.forward(30) t2.right(70) t2.forward(30) t2.left(110) t2.forward(40) t2.left(60) t2.forward(100) t2.left(30) t2.circle(-200,20) t2.right(10) t2.forward(80) t2.penup() t2.goto(-145,-198)#左臉頰 t2.pendown() t2.right(90) t2.forward(30) t2.left(30) t2.forward(40) t2.left(150) t2.forward(30) t2.right(180) t2.forward(30) t2.left(90) t2.forward(100) t2.left(90) t2.forward(30) t2.left(180) t2.forward(30) t2.left(120) t2.circle(-200,20) t2.right(10) t2.forward(50) #左眼 t2.right(135) t2.forward(70) t2.left(50) t2.forward(40) t2.left(20) t2.forward(20) t2.penup() t2.goto(-100,28) t2.pendown() t2.right(70) t2.forward(65) t2.left(50) t2.forward(40) t2.left(40) t2.forward(20) #左眼帶 t2.penup() t2.goto(-105,-10) t2.pendown() t2.right(100) t2.circle(120,extent=20) t2.circle(60,extent=80) t2.penup() t2.goto(-105,-13) t2.pendown() t2.right(100) t2.circle(120,extent=20) t2.circle(60,extent=80) t2.penup() t2.goto(-70,-40) t2.pendown() t2.left(10) t2.forward(30) t2.penup() t2.goto(-10,-40) t2.pendown() t2.left(35) t2.forward(30) t2.penup() t2.goto(-80,30) t2.pendown() t2.right(130) t2.forward(47) t2.left(50) t2.forward(35) t2.penup() t2.goto(-60,-45) t2.pendown() t2.right(98) t2.forward(60) t2.left(20) t2.forward(80) t2.left(70) t2.forward(10) t2.left(90) t2.forward(50) t2.right(60) t2.forward(30) t2.right(60) t2.forward(30) t2.right(60) t2.forward(50) t2.left(90) t2.forward(10) t2.left(75) t2.forward(80) t2.left(15) t2.forward(60) t2.penup() t2.goto(-80,-140) t2.pendown() t2.right(150) t2.circle(85,extent=45) t2.left(15) t2.forward(70) t2.left(15) t2.circle(55,extent=55) t2.penup() t2.goto(0,-175) t2.pendown() t2.left(18) t2.forward(170) #右眼 tleft.left(135) tleft.forward(70) tleft.right(50) tleft.forward(40) tleft.right(20) tleft.forward(20) tleft.penup() tleft.goto(100,28) tleft.pendown() tleft.left(70) tleft.forward(65) tleft.right(50) tleft.forward(40) tleft.right(40) tleft.forward(20) #右眼帶 tleft.penup() tleft.goto(105,-10) tleft.pendown() tleft.left(100) tleft.circle(-120,extent=20) tleft.circle(-60,extent=80) tleft.penup() tleft.goto(105,-13) tleft.pendown() tleft.left(100) tleft.circle(-120,extent=20) tleft.circle(-60,extent=80) #右眼睛 tleft.penup() tleft.goto(70,-40) tleft.pendown() tleft.right(10) tleft.forward(30) tleft.penup() tleft.goto(10,-40) tleft.pendown() tleft.right(35) tleft.forward(30) tleft.penup() tleft.goto(80,30) tleft.pendown() tleft.left(130) tleft.forward(47) tleft.right(50) tleft.forward(35) #鼻子 tleft.penup() tleft.goto(0,-70) tleft.pendown() tleft.left(30) tleft.forward(20) tleft.left(72) tleft.forward(10) tleft.left(108) tleft.forward(20) tleft.right(42) tleft.forward(20) tleft.left(108) tleft.forward(10) tleft.left(72) tleft.forward(20) tleft.penup() tleft.goto(0,-90) tleft.pendown() tleft.left(42) tleft.forward(20) tleft.left(72) tleft.forward(10) tleft.left(108) tleft.forward(20) tleft.right(42) tleft.forward(20) tleft.left(108) tleft.forward(10) tleft.left(72) tleft.forward(20) tleft.penup() tleft.goto(200,500) turtle.done()
效果圖:
到此這篇關於基於Python-turtle庫繪制路飛的草帽骷髏旗、美國隊長的盾牌、高達的文章就介紹到這瞭,更多相關Python-turtle庫美國隊長的盾牌內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python的turtle繪圖庫使用基礎
- Python繪圖之turtle庫的基礎語法使用
- 用Python畫聖誕樹代碼示例
- python繪制神器五角星+小黃人+櫻花
- 詳解Python如何利用turtle繪制中國結