git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@381 72836036-5685-4462-b002-a69064685172
77 lines
1.5 KiB
Java
77 lines
1.5 KiB
Java
package jrummikub.model;
|
|
|
|
import java.io.Serializable;
|
|
|
|
/**
|
|
* {@link Stone} Position class to determine positions on {@link Table} or
|
|
* {@link Hand}
|
|
*/
|
|
|
|
public class Position implements Serializable {
|
|
private static final long serialVersionUID = -582497930480638380L;
|
|
|
|
private double x;
|
|
private double y;
|
|
|
|
/**
|
|
* Create a new position by specifying the coordinates
|
|
*
|
|
* @param x
|
|
* x coordinate
|
|
* @param y
|
|
* y coordinate
|
|
*/
|
|
public Position(double x, double y) {
|
|
this.x = x;
|
|
this.y = y;
|
|
}
|
|
|
|
/**
|
|
* Get the x coordinate of the position
|
|
*
|
|
* @return x coordinate
|
|
*/
|
|
public double getX() {
|
|
return x;
|
|
}
|
|
|
|
/**
|
|
* Get the y coordinate of the position
|
|
*
|
|
* @return y coordinate
|
|
*/
|
|
public double getY() {
|
|
return y;
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
return "Position[x=" + x + ",y=" + y + "]";
|
|
}
|
|
|
|
@Override
|
|
public boolean equals(Object obj) {
|
|
if (this == obj)
|
|
return true;
|
|
if (obj == null)
|
|
return false;
|
|
if (getClass() != obj.getClass())
|
|
return false;
|
|
Position other = (Position) obj;
|
|
if (Double.doubleToLongBits(x) != Double.doubleToLongBits(other.x))
|
|
return false;
|
|
if (Double.doubleToLongBits(y) != Double.doubleToLongBits(other.y))
|
|
return false;
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public int hashCode() {
|
|
final int prime = 31;
|
|
int result = 1;
|
|
result = (int) (prime * result + Double.doubleToLongBits(x));
|
|
result = (int) (prime * result + Double.doubleToLongBits(y));
|
|
return result;
|
|
}
|
|
|
|
}
|