Find a line to cut two squares in half ~ KodeKnight
Given two squares on a two dimensional plane, find a line that would cut these two squares in half.
 
 
Read full article from Find a line to cut two squares in half ~ KodeKnight
Given two squares on a two dimensional plane, find a line that would cut these two squares in half.
Solution:
Any Line passing the centers of the two squares will cut them in halves. So, we have to connect the lines between the center of the 2 squares. The straight line that connects the two centers of the two squares will cut both of them into half.public class Square {   public double left;   public double top;   public double bottom;   public double right;   public Square(double left, double top, double size) {          this.left = left;          this.top = top;          this.bottom = top + size;          this.right = left + size;   }   public Point middle() {          return new Point((this.left + this.right) / 2,                                       (this.top + this.bottom) / 2);   }   public Line cut(Square other) {          Point middle_s = this.middle();          Point middle_t = other.middle();          if (middle_s.equals(middle_t)) {                 return new Line(new Point(left, top),                 new Point(right, bottom));          } else {                 return new Line(middle_s, middle_t);          }   }}
