RouteLine line;
- RouteTerminal(double x, double y, double minX, double minY,
+ public RouteTerminal(double x, double y, double minX, double minY,
double maxX, double maxY, int allowedDirections,
boolean routeToBounds,
ILineEndStyle style, RouteTerminalPosition dynamicPosition) {
* adding necessary transient route lines.
* @param cache
*/
- void route(ArrayList<RouteLine> lines, IntervalCache cache, boolean boundingBoxesIntersect) {
+ protected void route(ArrayList<RouteLine> lines, IntervalCache cache, boolean boundingBoxesIntersect) {
if(routeToBounds) {
int lineDir;
boolean routeLineDoesNotIntersectTerminal;
return;
}
else {
- line.addPoint(this);
+ if (!line.getPoints().contains(this))
+ line.addPoint(this);
Interval interval = cache.get(line);
if(line.isHorizontal) {
if(interval.min < minX)
}
}
- private RouteLine createLine0(int dir) {
+ protected RouteLine createLine0(int dir) {
RouteLine line0 = (dir&1) == 0
? new RouteLine(true, y)
: new RouteLine(false, x)
}
}
- RouteTerminal copy(THashMap<Object, Object> map) {
+ public RouteTerminal copy(THashMap<Object, Object> map) {
RouteTerminal copy = (RouteTerminal)map.get(this);
if(copy == null) {
copy = new RouteTerminal(x, y, minX, minY, maxX, maxY,
return line;
}
+ public void setLine(RouteLine line) {
+ this.line = line;
+ }
+
public void setMinX(double minX) {
this.minX = minX;
}
public RouteTerminalPosition getDynamicPosition() {
return dynamicPosition;
}
+
+
public boolean updateDynamicPosition() {
boolean changed = false;