#pragma once #include "geometry.h" class Rectangle : public Geometry_figure { private: double sides[2]; void calc_sides(); public: template Rectangle(value_class x1, value_class y1, value_class x2, value_class y2, value_class x3, value_class y3,value_class x4, value_class y4); template Rectangle(value_class A, value_class B); Rectangle(); Rectangle(Point A, Point B, Point C, Point D); double calc_area(); double calc_perimeter(); void name(); }; template inline Rectangle::Rectangle(value_class x1, value_class y1, value_class x2, value_class y2, value_class x3, value_class y3, value_class x4, value_class y4) { dots.push_back( Point(x1,y1)); dots.push_back(Point(x2, y2)); dots.push_back(Point(x3, y3)); dots.push_back(Point(x4, y4)); calc_sides(); } template inline Rectangle::Rectangle(value_class A, value_class B) { sides[0] = (double)(A); sides[1] = (double)(B); }