This repository has been archived on 2025-03-02. You can view files and clone it, but cannot push or open issues or pull requests.
JRummikub/src/jrummikub/model/Position.java
Matthias Schiffer 244abb7e73 Make model fully serializable
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@381 72836036-5685-4462-b002-a69064685172
2011-06-07 16:59:06 +02:00

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;
}
}