У меня есть код, который отрисовывает геометрические фигуры:
def drawing_rectengle(a, b):
figure = models.Rectangle(a, b)
plt.plot([0, figure.a, figure.a, 0, 0], [0, 0, figure.b, figure.b, 0])
plt.axis('equal')
plt.show()
def drawing_rhomb(h1, h2):
figure = models.Rhomb(h1, h2)
plt.plot([0, figure.h2 / 2, figure.h2, figure.h2 / 2, 0], [0, figure.h1 / 2, 0, -figure.h1 / 2, 0])
plt.axis('equal')
plt.show()
def drawing_rhomb(h1, h2):
figure = models.Rhomb(h1, h2)
plt.plot([0, figure.h2 / 2, figure.h2, figure.h2 / 2, 0], [0, figure.h1 / 2, 0, -figure.h1 / 2, 0])
plt.axis('equal')
plt.show()
Как видно выше код часто повторяется. Как мне переделать отрисовку фигур, используя принцип DRY? Я думал сделать что-то вроде:
rhomb = [0, figure.h2 / 2, figure.h2, figure.h2 / 2, 0], [0, figure.h1 / 2, 0, -figure.h1 / 2, 0]
square = [0, figure.a, figure.a, 0, 0],[0, 0, figure.a, figure.a, 0]
def drawing_figure(a):
figure = models.Square(a) # Как создавать разные объекты для разных классов,
plt.plot(square)
plt.axis('equal')
plt.show()