From 92e8d2a1aefce843e9635632cc13b9c512fea734 Mon Sep 17 00:00:00 2001 From: Angeld55 Date: Wed, 20 May 2020 03:04:17 +0300 Subject: fixed poly --- Polymorphism/Shapes/Rectangle.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 Polymorphism/Shapes/Rectangle.cpp (limited to 'Polymorphism/Shapes/Rectangle.cpp') diff --git a/Polymorphism/Shapes/Rectangle.cpp b/Polymorphism/Shapes/Rectangle.cpp new file mode 100644 index 0000000..b684c50 --- /dev/null +++ b/Polymorphism/Shapes/Rectangle.cpp @@ -0,0 +1,24 @@ +#include "Rectangle.h" + + +Rectangle::Rectangle(int x1, int y1, int x3, int y3) : Shape(4) +{ + setPoint(x1, y1, 0); + setPoint(x3, y3, 2); + setPoint(x1, y3, 1); + setPoint(x3, y1, 3); +} + +double Rectangle::getPer() +{ + return 2 * (getPoint(0).getDist(getPoint(1)) + getPoint(1).getDist(getPoint(2)) ); +} +double Rectangle::getArea() +{ + return getPoint(0).getDist(getPoint(1)) * getPoint(1).getDist(getPoint(2)); +} +Shape* Rectangle::clone() +{ + Rectangle* newRect = new Rectangle(*this); + return newRect; +} \ No newline at end of file -- cgit v1.3.1-23-gd82d