diff options
author | Julian T <julian@jtle.dk> | 2020-09-15 18:51:31 +0200 |
---|---|---|
committer | Julian T <julian@jtle.dk> | 2020-09-15 18:51:31 +0200 |
commit | 4bfbc29c7ea0b711f96346deb25dde0b2298ecde (patch) | |
tree | a2df2df4da19fe2ffe6527efc2c3917e009f4d3a /sem5/oop/m4/shapes/src/MyRectangle.java | |
parent | 8cc618ebc9fa9dbcf04b17a9d8e23ba1281b419e (diff) |
Added more oop assignments
Diffstat (limited to 'sem5/oop/m4/shapes/src/MyRectangle.java')
-rw-r--r-- | sem5/oop/m4/shapes/src/MyRectangle.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/sem5/oop/m4/shapes/src/MyRectangle.java b/sem5/oop/m4/shapes/src/MyRectangle.java new file mode 100644 index 0000000..591d7d1 --- /dev/null +++ b/sem5/oop/m4/shapes/src/MyRectangle.java @@ -0,0 +1,22 @@ + +public class MyRectangle implements Shape2d{ + private MyPoint a, b; + + /** + * Creates a new rectangle where a, b are opposing corners. + */ + public MyRectangle(MyPoint a, MyPoint b) { + this.a = a; + this.b = b; + } + + public double area() { + MyPoint size = this.b.sub(this.a); + return Math.abs(size.getX() * size.getY()); + } + + public double perimeter() { + MyPoint size = this.b.sub(this.a).abs(); + return size.getX() * 2 + size.getY() * 2; + } +} |