Python的turtle模块画国旗主要用到两个函数:draw_rentangle和draw_star。
至于函数的调用就和我们学的C,C++是一样的。对于turtle画国旗的程序中,首先是查找国旗的画法,才能用程序实现。自己在实现的过程中主要是对turtle.circle()没有准确掌握,所以花了一些不必要的时间。turtle.circle画弧时,海龟(turtle)的方向就是弧的切线方向,也就是说turtle的垂直方向就是圆心在的直线上,给定参数radius就可以画了,程序中第二注意的地方就是小五角星和大五角星的位置关系,主要是程序中的turtle.left(turtle.towards(center_x,center_y)-turtle.heading()),当然,我看有的人用了round()函数来获取近似值,但是,默认的已经足够了。下面是本人写的程序和结果演示。
import time import turtle import os ''' 想要学习Python?Python学习交流群:984632579满足你的需求,资料都已经上传群文件,可以自行下载! ''' def draw_rectangle(start_x,start_y,rec_x,rec_y): turtle.goto(start_x,start_y) turtle.color('red') turtle.fillcolor('red') turtle.begin_fill() for i in range(2): turtle.forward(rec_x) turtle.left(90) turtle.forward(rec_y) turtle.left(90) turtle.end_fill() def draw_star(center_x,center_y,radius): turtle.setpos(center_x,center_y) #find the peak of the five-pointed star pt1=turtle.pos() turtle.circle(-radius,72) pt2=turtle.pos() turtle.circle(-radius,72) pt3=turtle.pos() turtle.circle(-radius,72) pt4=turtle.pos() turtle.circle(-radius,72) pt5=turtle.pos() #draw the five-pointed star turtle.color('yellow','yellow') turtle.fill(True) turtle.goto(pt3) turtle.goto(pt1) turtle.goto(pt4) turtle.goto(pt2) turtle.goto(pt5) turtle.fill(False) #start the project turtle.speed(5) turtle.penup() #draw the rectangle star_x=-320 star_y=-260 len_x=660 len_y=440 draw_rectangle(star_x,star_y,len_x,len_y) #draw the big star pice=660/30 big_center_x=star_x+5*pice big_center_y=star_y+len_y-pice*5 turtle.goto(big_center_x,big_center_y) turtle.left(90) turtle.forward(pice*3) turtle.right(90) draw_star(turtle.xcor(),turtle.ycor(),pice*3) #draw the small star turtle.goto(star_x+10*pice,star_y+len_y-pice*2) turtle.left(turtle.towards(big_center_x,big_center_y)-turtle.heading()) turtle.forward(pice) turtle.right(90) draw_star(turtle.xcor(),turtle.ycor(),pice) #draw the second star turtle.goto(star_x+pice*12,star_y+len_y-pice*4) turtle.left(turtle.towards(big_center_x,big_center_y)-turtle.heading()) turtle.forward(pice) turtle.right(90) draw_star(turtle.xcor(),turtle.ycor(),pice) #draw the third turtle.goto(star_x+pice*12,star_y+len_y-7*pice) turtle.left(turtle.towards(big_center_x,big_center_y)-turtle.heading()) turtle.forward(pice) turtle.right(90) draw_star(turtle.xcor(),turtle.ycor(),pice) #draw the final turtle.goto(star_x+pice*10,star_y+len_y-9*pice) turtle.left(turtle.towards(big_center_x,big_center_y)-turtle.heading()) turtle.forward(pice) turtle.right(90) draw_star(turtle.xcor(),turtle.ycor(),pice) turtle.ht() time.sleep(3) os._exit(1)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月15日
2024年11月15日
- 炉石传说抢先乱斗卡组有什么 深暗领域抢先体验乱斗卡组推荐
- 荣耀手机腕上最佳搭档 荣耀手表5首销开启
- 雷克沙ARES 6000 C28战神之翼 AMD 9800X3D超强搭档
- 咪咕快游感恩同游,超值回馈尽在咪咕咪粉节!
- 陈崎凡《CHEN》[FLAC/分轨][326.32MB]
- 群星《我们的歌第六季 第2期》[320K/MP3][74.05MB]
- 群星《我们的歌第六季 第2期》[FLAC/分轨][385.16MB]
- 童丽《每一个晚上》[低速原抓WAV+CUE]
- 乌兰齐齐格《呼伦牧歌》[原抓WAV+CUE]
- 黄乙玲1988-无稳定的爱心肝乱糟糟[日本东芝1M版][WAV+CUE]
- 群星《我们的歌第六季 第3期》[320K/MP3][70.68MB]
- 群星《我们的歌第六季 第3期》[FLAC/分轨][369.48MB]
- 群星《燃!沙排少女 影视原声带》[320K/MP3][175.61MB]
- 乱斗海盗瞎6胜卡组推荐一览 深暗领域乱斗海盗瞎卡组分享
- 炉石传说乱斗6胜卡组分享一览 深暗领域乱斗6胜卡组代码推荐