from World import World class Point(object): '''represents a point in 2-D space attributes: x, y. ''' def __init__(self, x, y): self.x = x self.y = y class Rectangle(object): '''represents a rectangle. attributes: width, height, (lower left) corner, color. ''' def __init__(self, width, height, corner, color): self.width = width self.height = height self.corner = corner self.color = color def draw(self, canvas): '''Draw self on canvas.''' bbox = [[self.corner.x, self.corner.y], [self.corner.x + self.width, self.corner.y + self.height]] canvas.rectangle(bbox, outline='black', width=2, fill=self.color) class Circle(object): '''represents a circle. attributes: center, radius, color. ''' def __init__(self, center, radius, color): self.center = center self.radius = radius self.color = color def draw(self, canvas): '''Draw self on canvas.''' canvas.circle([self.center.x, self.center.y], self.radius, fill=self.color) class Polygon(object): '''represents a polygon. attributes: (list of) points, color. ''' def __init__(self, points, color): self.points = points self.color = color def draw(self, canvas): '''Draw self on canvas.''' canvas.polygon([[pt.x, pt.y] for pt in self.points], fill=self.color) ########## Bangladesh flag def bangladesh(): world = World() canvas = world.ca(width=500, height=500, background='white') rect = Rectangle(width=300, height=200, corner=Point(-150, -100), color='green4') rect.draw(canvas) circle = Circle(center=Point(-25,0), radius=70, color='red') circle.draw(canvas) world.mainloop() ########## Czech flag def czech(): world = World() canvas = world.ca(width=500, height=500, background='white') rect = Rectangle(width=300, height=200, corner=Point(-150, -100), color='white') rect.draw(canvas) center = Point(0.0, 0.0) ul = Point(-150, 100) ll = Point(-150, -100) mr = Point(150, 0) lr = Point(150, -100) pgon1 = Polygon(points = [ul, ll, center], color = 'blue4') pgon1.draw(canvas) pgon2 = Polygon(points = [ll, center, mr, lr], color = 'red3') pgon2.draw(canvas) world.mainloop()