2 public class ElementEdge {
4 public boolean equals(Object obj) {
5 if(!(obj instanceof ElementEdge))
7 ElementEdge edge = (ElementEdge)obj;
8 return p1.equals(edge.p1) && p2.equals(edge.p2);
11 public int hashCode() {
15 public boolean notEqual(ElementEdge rhs) {
19 public boolean lessThan(ElementEdge rhs) {
20 return p1.lessThan(rhs.p1) || p1.equals(rhs.p1) && p2.lessThan(rhs.p2);
23 public boolean greaterThan(ElementEdge rhs) {
24 return p1.greaterThan(rhs.p1) || p1.equals(rhs.p1) && p2.greaterThan(rhs.p2);
27 public Tuple getPoint(int i) {
38 public String toString() {
39 return (new StringBuilder("<")).append(p1.toString()).append(", ").append(p2.toString()).append(">").toString();
42 private final Tuple p1;
43 private final Tuple p2;
44 private final int hashvalue;
46 public ElementEdge() {
52 public ElementEdge(Tuple a, Tuple b) {
61 tmphashval = 37 * tmphashval + p1.hashCode();
62 tmphashval = 37 * tmphashval + p2.hashCode();
63 hashvalue = tmphashval;
66 public ElementEdge(ElementEdge rhs) {
69 hashvalue = rhs.hashvalue;