如何在python中绘制随机形状?
我想使用python在图像中以随机颜色绘制随机形状。python中是否有任何模块可以绘制任意形状,如不同大小和形状的多边形,并混合在一起形成新形状等如何在python中绘制随机形状?,python,shape,Python,Shape,我想使用python在图像中以随机颜色绘制随机形状。python中是否有任何模块可以绘制任意形状,如不同大小和形状的多边形,并混合在一起形成新形状等 非常感谢可能对跨平台GUI有用,或者如果您只想在浏览器中使用它。创建/修改图像也可以。由于不确定您要完成什么,下面的代码是一个简单的示例,说明如何生成随机形状并在窗口中显示它们。它创建一个tkinter根对象,设置一个Canvas进行显示,并在程序运行的每一秒随机创建和显示多边形 from tkinter import * from random
非常感谢可能对跨平台GUI有用,或者如果您只想在浏览器中使用它。创建/修改图像也可以。由于不确定您要完成什么,下面的代码是一个简单的示例,说明如何生成随机形状并在窗口中显示它们。它创建一个
tkinter
根对象,设置一个Canvas
进行显示,并在程序运行的每一秒随机创建和显示多边形
from tkinter import *
from random import *
class Application(Canvas):
X_OFFSET = 40
Y_OFFSET = 40
FILL = 'blue'
LINE = 'black'
@classmethod
def main(cls):
root = Tk()
surface = cls(root)
surface.grid()
surface.after_idle(surface.draw_shape)
root.mainloop()
def draw_shape(self):
x = randrange(int(self['width']) - self.X_OFFSET)
y = randrange(int(self['height']) - self.Y_OFFSET)
points = [(x + randrange(self.X_OFFSET), y + randrange(self.Y_OFFSET))
for point in range(randint(3, 10))]
self.create_polygon(points, fill=self.FILL, outline=self.LINE)
self.after(1000, self.draw_shape)
if __name__ == '__main__':
Application.main()
TkInter就是这样做的:定义一个形状的随机属性,这些属性可以用数字来表示(角的数量、x位置、y位置、宽度、高度等等),然后获取所有这些随机数,然后调用一个使用这些参数绘制形状的方法。你可以调整在这个问题中找到的脚本:+1:听起来提问者可能从一个图像开始,比如jpg等,在这种情况下,PIL是正确的选择。