Я новичок в классах, и я хотел сделать класс рисования для некоторых манипуляций с изображениями. Я делаю это с модулем ImageDraw в PIL.
Я инициализировал атрибут draw с помощью объекта Image, а затем попытался нарисовать изображение, используя ImageDraw. Однако я не смог получить никаких результатов. Было бы замечательно, если бы кто-то сказал мне, где я испортил
#shapemakers.py
import PIL
from PIL import ImageDraw
import random
class drawings():
def __init__(self,img):
self.image=img
self.draw=ImageDraw.Draw(self.image,'RGB')
def circledraw(self,x,y,r):
cord1_x=x-r
cord2_x=x+r
cord1_y=y-r
cord2_y=y+r
return((cord1_x,cord1_y,cord2_x,cord2_y)
def arcer(self):
x=0
y=36
while x<360:
p=random.randint(60,120)
self.draw.arc(self.circledraw(360,821,60), x, y, 'red',width=20)
self.draw.pieslice(self.circledraw(360,821,p), x+36, y+36, 'yellow',width=1)
x=y+36
y=x+36
return self.image
Так я использую класс
import PIL
import shapemakers
newimg=PIL.Image.open('infocard-fm1.png')
newdrawing=shapemakers(newimg)
p=newdrawing.arcer()
p.show()
На изображении должны быть фигуры кругов и частично вырезанные круги, но я получаю только белое изображение.