checkpoint
[anneal.git] / src / edu / berkeley / qfat / geom / Segment.java
index 8a1febd..5f46051 100644 (file)
@@ -9,6 +9,15 @@ public class Segment implements HasBoundingBox {
 
     public Segment(Point p1, Point p2) { this.p1 = p1; this.p2 = p2; }
 
+    public int hashCode() { return p1.hashCode() ^ p2.hashCode(); }
+    public boolean equals(Object o) {
+        if (o==null || !(o instanceof Segment)) return false;
+        Segment seg = (Segment)o;
+        if (seg.p1.equals(p1) && seg.p2.equals(p2)) return true;
+        if (seg.p2.equals(p1) && seg.p1.equals(p2)) return true;
+        return false;
+    }
+
     public float getMaxX() { return Math.max(p1.x, p2.x); }
     public float getMinX() { return Math.min(p1.x, p2.x); }
     public float getMaxY() { return Math.max(p1.y, p2.y); }
@@ -16,4 +25,8 @@ public class Segment implements HasBoundingBox {
     public float getMaxZ() { return Math.max(p1.z, p2.z); }
     public float getMinZ() { return Math.min(p1.z, p2.z); }
 
+    public double distance(Point p) {
+        throw new RuntimeException("not yet implemented");
+    }
+
 }