package photogrammetry.util.model; public class Point2d implements HasCoordinates2d { public double x, y; public Point2d() { } public Point2d(double x, double y) { set(x, y); } public Point2d(HasCoordinates2d other) { set(other); } final public void set(double x, double y) { this.x = x; this.y = y; } final public void set(HasCoordinates2d v) { this.x = v.getX(); this.y = v.getY(); } public void round() { x = Math.round(x); y = Math.round(y); } public void floor() { x = Math.floor(x); y = Math.floor(y); } public void ceil() { x = Math.ceil(x); y = Math.ceil(y); } @Override public double getX() { return x; } @Override public double getY() { return y; } @Override public double distanceTo(HasCoordinates2d pt) { double dx = x - pt.getX(); double dy = y - pt.getY(); return Math.sqrt(dx * dx + dy * dy); } @Override public String toString() { return "(" + x + ", " + y + ")"; } }