首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在python中绘制任意形状?

如何在python中绘制任意形状?
EN

Stack Overflow用户
提问于 2012-05-15 22:13:29
回答 3查看 11.6K关注 0票数 3

我想用python在图像中绘制随机颜色的随机形状。python中有没有什么模块可以绘制随机形状,比如不同大小和形状的多边形,然后混合在一起形成新的形状等

非常感谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-15 23:26:47

由于不确定您正在尝试完成什么,下面的代码是如何生成随机形状并在窗口中显示它们的简单示例。它创建一个tkinter根对象,设置一个用于显示Canvas,并随机创建和显示每秒运行程序的多边形。

代码语言:javascript
复制
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()
票数 2
EN

Stack Overflow用户

发布于 2012-05-15 23:18:23

对于创建/修改图像,Python Imaging Library可以工作。

票数 2
EN

Stack Overflow用户

发布于 2012-05-15 22:59:55

对于跨平台的图形用户界面,Cairo可能很有用;如果你只是想在浏览器中使用SVG,那么它可能会很有用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10602663

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档