python海龟画五星红旗(python海龟绘图五星红旗)
请问一下网友老铁们 美国国旗用python怎么做呀 求其代码 谢谢拉
参考下五星红旗
code#!/usr/bin/env python
# -*- coding: utf-8 –*-
''' 对于turtle类的一些封装方法,包括画正多边形,正多角形和五星红旗。'''
__author__ = 'Hu Wenchao'
import turtle
import math
def draw_polygon(aTurtle, size=50, n=3):
''' 绘制正多边形
args:
aTurtle: turtle对象实例
size: int类型,正多边形的边长
n: int类型,是几边形
'''
for i in xrange(n):
aTurtle.forward(size)
aTurtle.left(360.0/n)
def draw_n_angle(aTurtle, size=50, num=5, color=None):
''' 绘制正n角形,默认为黄色
args:
aTurtle: turtle对象实例
size: int类型,正多角形的边长
n: int类型,是几角形
color: str, 图形颜色,默认不填色
'''
if color:
aTurtle.begin_fill()
aTurtle.fillcolor(color)
for i in xrange(num):
aTurtle.forward(size)
aTurtle.left(360.0/num)
aTurtle.forward(size)
aTurtle.right(2*360.0/num)
if color:
aTurtle.end_fill()
def draw_5_angle(aTurtle=None, start_pos=(0,0), end_pos=(0,10), radius=100, color=None):
''' 根据起始位置、结束位置和外接圆半径画五角星
args:
aTurtle: turtle对象实例
start_pos: int的二元tuple,要画的五角星的外接圆圆心
end_pos: int的二元tuple,圆心指向的位置坐标点
radius: 五角星外接圆半径
color: str, 图形颜色,默认不填色
'''
aTurtle = aTurtle or turtle.Turtle()
size = radius * math.sin(math.pi/5)/math.sin(math.pi*2/5)
aTurtle.left(math.degrees(math.atan2(end_pos[1]-start_pos[1], end_pos[0]-start_pos[0])))
aTurtle.penup()
aTurtle.goto(start_pos)
aTurtle.fd(radius)
aTurtle.pendown()
aTurtle.right(math.degrees(math.pi*9/10))
draw_n_angle(aTurtle, size, 5, color)
def draw_5_star_flag(times=20.0):
''' 绘制五星红旗
args:
times: 五星红旗的规格为30*20, times为倍数,默认大小为10倍, 即300*200
'''
width, height = 30*times, 20*times
# 初始化屏幕和海龟
window = turtle.Screen()
aTurtle = turtle.Turtle()
aTurtle.hideturtle()
aTurtle.speed(10)
# 画红旗
aTurtle.penup()
aTurtle.goto(-width/2, height/2)
aTurtle.pendown()
aTurtle.begin_fill()
aTurtle.fillcolor('red')
aTurtle.fd(width)
aTurtle.right(90)
aTurtle.fd(height)
aTurtle.right(90)
aTurtle.fd(width)
aTurtle.right(90)
aTurtle.fd(height)
aTurtle.right(90)
aTurtle.end_fill()
# 画大星星
draw_5_angle(aTurtle, start_pos=(-10*times, 5*times), end_pos=(-10*times, 8*times), radius=3*times, color='yellow')
# 画四个小星星
stars_start_pos = [(-5, 8), (-3, 6), (-3, 3), (-5, 1)]
for pos in stars_start_pos:
draw_5_angle(aTurtle, start_pos=(pos[0]*times, pos[1]*times), end_pos=(-10*times, 5*times), radius=1*times, color='yellow')
# 点击关闭窗口
window.exitonclick()
if __name__ == '__main__':
draw_5_star_flag()
/code
急求!这是一个用python画国旗的程序,请求大神解释一下每一步是干嘛的
import turtle //导入模块
import time
import os
def draw_square(org_x, org_y, x, y): //定义红旗绘制函数
turtle.setpos(org_x, org_y) //定义画笔初始位置
turtle.color('red', 'red') //颜色
turtle.begin_fill() //开始绘制
turtle.fd(x) //绘制偏转方向和角度
turtle.lt(90)
turtle.fd(y)
turtle.lt(90)
turtle.fd(x)
turtle.lt(90)
turtle.fd(y)
turtle.end_fill() //绘制结束
def draw_star(center_x, center_y, radius): //定义星星绘制函数
print(center_x, center_y) //显示位置
turtle.pencolor('black') //画笔轨迹颜色
turtle.setpos(center_x, center_y) //中心点位置
pt1 = turtle.pos() //偏转角度计算
turtle.circle(-radius, 360 / 5)
pt2 = turtle.pos()
turtle.circle(-radius, 360 / 5)
pt3 = turtle.pos()
turtle.circle(-radius, 360 / 5)
pt4 = turtle.pos()
turtle.circle(-radius, 360 / 5)
pt5 = turtle.pos()
turtle.color('yellow', 'yellow') //星星颜色
turtle.begin_fill() //开是绘制
turtle.goto(pt3)
turtle.goto(pt1)
turtle.goto(pt4)
turtle.goto(pt2)
turtle.goto(pt5)
turtle.end_fill() //绘制结束
print(turtle.pos())
turtle.pu() //隐藏画笔轨迹
draw_square(-320, -260, 660, 440) //绘制红旗
star_part_x = -320 //自定义星星大小等属性
star_part_y = -260 + 440
star_part_s = 660 / 30
center_x, center_y = star_part_x + star_part_s * 5, star_part_y - star_part_s * 5 //计算星星中心点位置
turtle.setpos(center_x, center_y)
turtle.lt(90)
draw_star(star_part_x + star_part_s * 5, star_part_y - star_part_s * 2, star_part_s * 3) //绘制星星
turtle.goto(star_part_x + star_part_s * 10, star_part_y - star_part_s * 2) //同上
turtle.lt(round(turtle.towards(center_x, center_y)) - turtle.heading())
turtle.fd(star_part_s)
turtle.rt(90)
draw_star(turtle.xcor(), turtle.ycor(), star_part_s)
turtle.goto(star_part_x + star_part_s * 12, star_part_y - star_part_s * 4)
turtle.lt(round(turtle.towards(center_x, center_y)) - turtle.heading())
turtle.fd(star_part_s)
turtle.rt(90)
draw_star(turtle.xcor(), turtle.ycor(), star_part_s)
turtle.goto(star_part_x + star_part_s * 12, star_part_y - star_part_s * 7)
turtle.lt(round(turtle.towards(center_x, center_y)) - turtle.heading())
turtle.fd(star_part_s)
turtle.rt(90)
draw_star(turtle.xcor(), turtle.ycor(), star_part_s)
turtle.goto(star_part_x + star_part_s * 10, star_part_y - star_part_s * 9)
turtle.lt(round(turtle.towards(center_x, center_y)) - turtle.heading())
turtle.fd(star_part_s)
turtle.rt(90)
draw_star(turtle.xcor(), turtle.ycor(), star_part_s)
turtle.ht()
time.sleep(5) //设置挂起时间
os._exit(1)
如何用海龟画图画一面五星红旗?
代码如下
import turtle as t
t.speed(10)
t.pensize(1)
t.fillcolor('red')
t.pencolor('black')
t.shape(name='classic')
t.tracer(True)
#旗布
print('1.旗布')
t.penup()
t.left(135)
t.fd(350)
t.right(135)
t.pendown()
t.begin_fill()
for i in range(2):
t.fd(500)
t.right(90)
t.fd(350)
t.right(90)
t.end_fill()
#就位
t.fd(417)
t.penup()
t.right(90)
t.fd(30)
t.left(18)
t.pendown()
#星1*大
print('2.大五角星')
t.fillcolor('yellow')
t.begin_fill()
for j in range(5):
t.fd(40)
t.left(72)
t.fd(40)
t.right(144)
t.end_fill()
#星2*小1
print('3.小五角星,一')
t.right(108)
t.penup()
t.fd(85)
t.left(90)
t.fd(10)
t.pendown()
t.left(18)
t.begin_fill()
for j in range(5):
t.fd(10)
t.left(72)
t.fd(10)
t.right(144)
t.end_fill()
t.right(18)
#星3*小2
print('4.小五角星,二')
t.penup()
t.fd(50)
t.left(90)
t.fd(10)
t.right(90)
t.pendown()
t.left(18)
t.begin_fill()
for j in range(5):
t.fd(10)
t.left(72)
t.fd(10)
t.right(144)
t.end_fill()
t.right(18)
#星4*小3
print('5.小五角星,三')
t.penup()
t.fd(50)
t.left(90)
t.fd(30) #左右位置
t.right(90)
t.pendown()
t.left(18)
t.begin_fill()
for j in range(5):
t.fd(10)
t.left(72)
t.fd(10)
t.right(144)
t.end_fill()
t.right(18)
#星5*小4
print('6.小五角星,四')
t.penup()
t.fd(15)
t.left(90)
t.fd(55) #左右位置
t.right(90)
t.pendown()
t.left(18)
t.begin_fill()
for j in range(5):
t.fd(10)
t.left(72)
t.fd(10)
t.right(144)
t.end_fill()
t.right(18)
t.shape(name='blank')
print('_行程结束_')
t.done()
怎样画五星红旗
问题一:五星红旗图片怎么画 拿着五星旗图片,照着画就行了。很简单的。
问题二:怎么画标准的五星红旗? (一) 旗面为红色,长方形,其长与高为三与二之比,旗面左上方缀黄色五角星五颗。一星较大,其外接圆直径为旗高十分之三,居左;四星较小,其外接圆直径为旗高十分之一,环拱于大星之右。旗杆套为白色。
(二) 五星之位置与画法如下:
1、为便于确定五星之位置,先将旗面对分为四个相等的长方形,将左上方之长方形上下划为十等分,左右划为十五等分。
2、大五角星的中心点,在该长方形上五下五、左五右十之处。
其画法为:以此点为圆心,以三等分为半径作一圆。在此圆周上,定出五个等距离的点,其一点须位于圆之正上方。然后将此五点中各相隔的两点相联,使各成一直线。此五直线所构成之外轮廓线,即为所需之大五角星。五角星之一个角尖正向上方。
丙 、四颗小五角星的中心点,第一点在该长方形上二下八、左十右五之处,第二点在上四下六、左十二右三之处,第三点在上七下三、左十二右三之处,第四点在上九下一、左十右五之处。其画法为:以以上四点为圆心,各以一等分为半径,分别作四个圆。在每个圆上各定出五个等距离的点,其中均须各有一点位于大五角星中心点与以上四个圆心的各联结线上。然后用构成大五角星的同样方法,构成小五角星。此四颗小五角星均各有一个角尖正对大五角星的中心点
(三) 国旗之通用尺度定为如下五种,各界酌情选用:
甲、长288公分,高192公分。
乙、长240公分,高160公分。
丙、长192公分,高128公分。
丁、长144公分,高96公分。
戊、长96公分,高64公分。
问题三:如何用word2010画五星红旗 单击菜单栏的“插入”→图片→自选图形,打开 “自选图形”工具栏中(如图1),单击“基本形状”→长方形,按住左键拖动画出一长方形,在长方形中间双击左键,打开 “设置自选图形格式”对话框(如图2)。
在“大小”选项卡中把高度设为10厘米,宽度为15厘米:再到“颜色与线条”选项卡中,把“填充”颜色和“线条”颜色都设为红色(如图3):最后到“版式”选项卡中把“在画布上的位置”水平和垂直都设为0厘米(为下一步5颗星的定位做准备)。
在“自选图形”工具栏中,单击“星与旗帜”→五角星(如图4),在画好的旗面上,按住左键拖动画出1颗五角星,双击五角星中间,在打开的“设置自选图形格式”对话框中的“颜色与线条”选项中,把“填充”颜色和“线条”颜色都设为黄色:在“大小”选项卡中把高度设为3厘米,宽度也高为3厘米:最后再到“版式”选项卡中把“在画布上的位置”水平和垂直都设为1厘米。这样大五角星就画好了。
右键单击大五角星,单击“复制”,再右键单击旗面空白地方,单击“粘贴”,复制出1颗五角星,再粘贴出3颗,这样就会出现5颗有一部分重叠的五角星。为了调整方便,按住左键把复制出的4颗星在旗面分别拖动开一定距离。
双击复制出的1颗五角星中间,在“设置自选图形格式”对话框的“大小”选项卡中把高度设为1厘米,宽度为1厘米,旋转246度(如图5):再到“版式”选项卡中把“在画布上的位置”水平设为4.5厘米,垂直设为0.5厘米(如图6)。
仿照此种方法,把第2颗小星高度设为1厘米,宽度为1厘米,旋转261度: “在画布上的位置”水平设为5.5厘米,垂直设为1.5厘米。第3颗小星高度设为1厘米,宽度为1厘米,旋转288度: “在画布上的位置”水平设为5.5厘米,垂直设为3厘米。第4颗小星高度设为1厘米,宽度为1厘米,旋转313度: “在画布上的位置”水平设为4.5厘米,垂直设为4厘米。
注意:这里“旋转的角度”是根据国旗上五角星分布和4颗小星必须有一角尖正对大五角星的中心点的要求计算出来的。因为不能输入小数,所以稍微有误差。
按住一个Ctrl键,再分别单击大小5颗五角星和红色旗面(也就是把它们都选中),放开Ctrl键,把鼠标指针指向任意一颗五角星或旗面,右键单击,左键单击“组合” →组合(如图7),把它们组合成一个整体,这样就不怕一不小心拖动了某颗星或旗面而打乱它们的排列了。
问题四:CAD2007画五星红旗的方法 1 用阵列命令 画网格
2 画图顺序 画网格、画大圆、画4条直线段、画4个小圆、画5边形(鼠标点线段与小圆的交点)
问题五:儿童五星红旗怎么画 在左上角画一颗大一点的黄五角伐,然后在右边到下边画上均匀分布的四颗小一点儿的五角星,头都对着大五角星,最后把其它的画面涂成红色的。
问题六:五星红旗的五星画法 旗面为红色,长方形,其长与高为三与二之比,旗面左上方缀黄色五角星五颗。一星较大,其外接圆直径为旗高十分之三,居左;四星较小,其外接圆直径为旗高十分之一,环拱于大星之右。旗杆套为白色。
旗面的红色象征革命;旗上的五颗五角星及相互关系象征中国 *** 领导下的革命人民大团结;星用黄色是为着在红底上显出光明,黄色较白色明亮美丽;四颗小五角星各有一尖正对着大星的中心点,表示围绕着一个中心而团结,在形式上也显得紧凑美观。
通用规格为如下五种:
288cm X 192cm
240cm X 160cm
192cm X 128cm
144cm X 96cm
96cm X 64cm
问题七:五星红旗怎么画
问题八:用小海龟怎么画出五星红旗???? 5分 单独的5角星你可以画的出来,循环角度,长度一样就好,然后画完第一个,以第一个中心为轴心,从上到下,等分4个角,比如60、30、-30、-60,然后等长度移动到右边,依次画右边的4个小五角星。
问题九:怎么利用python画五星红旗,求代码, 5分 import turtlet = turtle.Turtle()while True: t.forward(200) t.right(144) if abs(t.pos())