package com.baselet.element.old.relation; import com.baselet.control.basics.geom.Point; import com.baselet.control.basics.geom.Rectangle; public class Arrow extends Rectangle { private Point _arrowEndA; private Point _arrowEndB; // A.Mueller start private Point _crossEndA; private Point _crossEndB; private int _arcStart; private int _arcEnd; // A.Mueller end public Point getArrowEndA() { return _arrowEndA; } public Point getArrowEndB() { return _arrowEndB; } public void setArrowEndA(Point p) { _arrowEndA = p; } public void setArrowEndB(Point p) { _arrowEndB = p; } // A.Mueller start public void setCrossEndA(Point p) { _crossEndA = p; } public void setCrossEndB(Point p) { _crossEndB = p; } public int getArcStart() { return _arcStart; } public int getArcEnd() { return _arcEnd; } public void setArcStart(int a) { _arcStart = a; } public void setArcEnd(int a) { _arcEnd = a; } public Point getCrossEndA() { return _crossEndA; } public Point getCrossEndB() { return _crossEndB; } // A.Mueller end private String _arrowType = null; public String getString() { return _arrowType; } public Arrow(String arrowType) { super(0, 0, 1, 1); _arrowType = arrowType; } @Override public int hashCode() { final int prime = 31; int result = super.hashCode(); result = prime * result + _arcEnd; result = prime * result + _arcStart; result = prime * result + (_arrowEndA == null ? 0 : _arrowEndA.hashCode()); result = prime * result + (_arrowEndB == null ? 0 : _arrowEndB.hashCode()); result = prime * result + (_arrowType == null ? 0 : _arrowType.hashCode()); result = prime * result + (_crossEndA == null ? 0 : _crossEndA.hashCode()); result = prime * result + (_crossEndB == null ? 0 : _crossEndB.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (!super.equals(obj)) { return false; } if (getClass() != obj.getClass()) { return false; } Arrow other = (Arrow) obj; if (_arcEnd != other._arcEnd) { return false; } if (_arcStart != other._arcStart) { return false; } if (_arrowEndA == null) { if (other._arrowEndA != null) { return false; } } else if (!_arrowEndA.equals(other._arrowEndA)) { return false; } if (_arrowEndB == null) { if (other._arrowEndB != null) { return false; } } else if (!_arrowEndB.equals(other._arrowEndB)) { return false; } if (_arrowType == null) { if (other._arrowType != null) { return false; } } else if (!_arrowType.equals(other._arrowType)) { return false; } if (_crossEndA == null) { if (other._crossEndA != null) { return false; } } else if (!_crossEndA.equals(other._crossEndA)) { return false; } if (_crossEndB == null) { if (other._crossEndB != null) { return false; } } else if (!_crossEndB.equals(other._crossEndB)) { return false; } return true; } @Override public String toString() { return "Type: " + _arrowType + " / Coordinates: " + x + "," + y; } }