001 // Copyright 2002 by Basil Vandegriend. All rights reserved.
002
003 package com.basilv.examples.dom4j;
004
005 import java.awt.Point;
006
007 /**
008 * Represents a wall on the maze.
009 */
010 public class Wall
011 {
012
013 private Point start;
014 private Point end;
015
016 public Wall(int startX, int startY, int endX, int endY) {
017 start = new Point(startX, startY);
018 end = new Point(endX, endY);
019 }
020
021 public Point getEnd() {
022 return end;
023 }
024
025 public Point getStart() {
026 return start;
027 }
028
029 @Override
030 public boolean equals(Object obj) {
031 if (!(obj instanceof Wall)) {
032 return false;
033 }
034
035 Wall other = (Wall) obj;
036 return this.start.equals(other.start) && this.end.equals(other.end);
037 }
038
039 @Override
040 public int hashCode() {
041 return this.start.hashCode() + 7 * this.end.hashCode();
042 }
043
044 @Override
045 public String toString() {
046 return "Wall from " + start.x + ", " + start.y + " to " + end.x + ", " + end.y;
047 }
048
049 }