Improved code readability
[sixth-3d.git] / src / main / java / eu / svjatoslav / sixth / e3d / geometry / Rectangle.java
index 6f08ed7..966d366 100644 (file)
@@ -1,47 +1,63 @@
 /*
- * Sixth 3D engine. Copyright ©2012-2016, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 3 of the GNU Lesser General Public License
- * or later as published by the Free Software Foundation.
- *
+ * Sixth 3D engine. Author: Svjatoslav Agejenko.
+ * This project is released under Creative Commons Zero (CC0) license.
  */
-
-
 package eu.svjatoslav.sixth.e3d.geometry;
 
+import static java.lang.Math.abs;
+import static java.lang.Math.min;
+
+/**
+ * Rectangle class.
+ */
 public class Rectangle {
 
+    /**
+     * Rectangle points.
+     */
     public Point2D p1, p2;
 
+    /**
+     * Creates new rectangle with given size.
+     * The rectangle will be centered at the origin.
+     * The rectangle will be square.
+     *
+     * @param size The size of the rectangle.
+     */
     public Rectangle(final double size) {
         p2 = new Point2D(size / 2, size / 2);
         p1 = p2.clone().invert();
     }
 
+    /**
+     * @param p1 The first point of the rectangle.
+     * @param p2 The second point of the rectangle.
+     */
     public Rectangle(final Point2D p1, final Point2D p2) {
         this.p1 = p1;
         this.p2 = p2;
     }
 
     public double getHeight() {
-        return Math.abs(p1.y - p2.y);
+        return abs(p1.y - p2.y);
     }
 
+    /**
+     * @return The leftmost x coordinate of the rectangle.
+     */
     public double getLowerX() {
-        if (p1.x < p2.x)
-            return p1.x;
-        return p2.x;
+        return min(p1.x, p2.x);
     }
 
     public double getLowerY() {
-        if (p1.y < p2.y)
-            return p1.y;
-        return p2.y;
+        return min(p1.y, p2.y);
     }
 
+    /**
+     * @return rectangle width.
+     */
     public double getWidth() {
-        return Math.abs(p1.x - p2.x);
+        return abs(p1.x - p2.x);
     }
 
 }