生成海龟图_pillow模块的ImageDraw的polygon方法使用示例

李兴球Python用pillow画海龟

from PIL import Image,ImageDraw

size = (49,37)

# 下面的坐标点来自turtle模块的以下命令
# screen._pointlist(t.turtle._item)
# 而图像的坐标原点在左上角,所以需要转换
cors = [(32.0, 0.0), (28.0, 4.0), (20.0, 2.0), (14.0, 8.0),
        (18.0, 14.0), (16.0, 18.0), (10.0, 12.0), (2.0, 14.0),
        (-6.0, 10.0), (-12.0, 16.0), (-16.0, 12.0), (-10.0, 8.0),
        (-14.0, 0.0), (-10.0, -8.0), (-16.0, -12.0), (-12.0, -16.0),
        (-6.0, -10.0), (2.0, -14.0), (10.0, -12.0), (16.0, -18.0),
        (18.0, -14.0), (14.0, -8.0), (20.0, -2.0), (28.0, -4.0)]
xy = []
for i in range(len(cors)):
    xy.append( (cors[i][0]+16,cors[i][1]+18) )
    
cors = tuple(xy)

print(cors)                         # 打印转换后的各坐标点

im = Image.new("RGBA",size)
d  = ImageDraw.Draw(im)
d.polygon(cors,fill='green')
im.save('c:/turtle.png')

关于李兴球

李兴球的博客是Python创意编程原创博客
此条目发表在pillow, python分类目录,贴了标签。将固定链接加入收藏夹。

发表回复