""" python海龟画斜着的椭圆.py """ import math from turtle import * def draw_oval2(a,b=None,width=5,fill=''): """以海龟为中心点画椭圆,这个方法会根据角色的方向对椭圆进行倾斜,所以速度慢 a:长半轴,b:短半轴, width:边框像素值 fill:填充颜色,如果为空字符串,则无颜色 """ if b == None : b = a cx,cy = tom.pos() # 中心点坐标 cors = [] # 多边形坐标点 k = math.radians(tom.heading()) # 椭圆的倾斜角度 for t in range(361): j= math.radians(t) x = cx + a*math.cos(j)*math.cos(k)-b*math.sin(j)*math.sin(k) y = cy + a*math.cos(j)*math.sin(k)+b*math.sin(j)*math.cos(k) cors.append(x) cors.append(-y) item = screen.cv.create_polygon(cors, fill=fill,width=width,outline='black') def draw_oval(a,b=None,width=5,fill=''): """ 以海龟为中心点画椭圆,这个方法不会根据角色的方向对椭圆进行倾斜,所以速度快. a:长半轴,b:短半轴, width:边框像素值 fill:填充颜色, outline:边框颜色 """ if b == None : b = a x,y = tom.pos() x0,y0 = x-a,-y-b x1,y1 = x+a,b-y item = screen.cv.create_oval(x0,y0,x1,y1,fill=fill,width=width) tom = Turtle() screen = tom.getscreen() tom.pensize(10) tom.left(45) draw_oval2(100,50) screen.mainloop()
李兴球
李兴球的博客是Python创意编程原创博客
要发表评论,您必须先登录。
发表评论