Before Width: | Height: | Size: 156 B After Width: | Height: | Size: 156 B |
Before Width: | Height: | Size: 152 B After Width: | Height: | Size: 152 B |
Before Width: | Height: | Size: 152 B After Width: | Height: | Size: 152 B |
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 148 B |
Before Width: | Height: | Size: 152 B After Width: | Height: | Size: 152 B |
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 148 B |
Before Width: | Height: | Size: 156 B After Width: | Height: | Size: 156 B |
Before Width: | Height: | Size: 152 B After Width: | Height: | Size: 152 B |
@ -1,21 +1,22 @@
@@ -1,21 +1,22 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
import de.srsoftware.web4rail.tiles.Turnout.State; |
||||
|
||||
public class ContactH extends Contact { |
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case WEST: |
||||
return List.of(new Connector(x+1,y,from)); |
||||
return Map.of(new Connector(x+1,y,from),State.UNDEF); |
||||
case EAST: |
||||
return List.of(new Connector(x-1,y,from)); |
||||
return Map.of(new Connector(x-1,y,from),State.UNDEF); |
||||
default: |
||||
return new Vector<>(); |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
||||
|
@ -1,22 +1,23 @@
@@ -1,22 +1,23 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
import de.srsoftware.web4rail.tiles.Turnout.State; |
||||
|
||||
public class ContactV extends Contact { |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case NORTH: |
||||
return List.of(new Connector(x,y+1,from)); |
||||
return Map.of(new Connector(x,y+1,from),State.UNDEF); |
||||
case SOUTH: |
||||
return List.of(new Connector(x,y-1,from)); |
||||
return Map.of(new Connector(x,y-1,from),State.UNDEF); |
||||
default: |
||||
return new Vector<>(); |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
||||
|
@ -1,10 +1,10 @@
@@ -1,10 +1,10 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public abstract class Cross extends Tile { |
||||
public abstract List<Connector> offsetConnections(Direction from); |
||||
public abstract Map<Connector,Turnout.State> offsetConnections(Direction from); |
||||
} |
||||
|
@ -1,22 +1,23 @@
@@ -1,22 +1,23 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
import de.srsoftware.web4rail.tiles.Turnout.State; |
||||
|
||||
public class DiagES extends Tile{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case SOUTH: |
||||
return List.of(new Connector(x+1,y,Direction.WEST)); |
||||
return Map.of(new Connector(x+1,y,Direction.WEST),State.UNDEF); |
||||
case EAST: |
||||
return List.of(new Connector(x,y+1,Direction.NORTH)); |
||||
return Map.of(new Connector(x,y+1,Direction.NORTH),State.UNDEF); |
||||
default: |
||||
return new Vector<Connector>(); |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
||||
|
@ -1,22 +1,23 @@
@@ -1,22 +1,23 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
import de.srsoftware.web4rail.tiles.Turnout.State; |
||||
|
||||
public class DiagNE extends Tile{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case NORTH: |
||||
return List.of(new Connector(x+1,y,Direction.WEST)); |
||||
return Map.of(new Connector(x+1,y,Direction.WEST),State.UNDEF); |
||||
case EAST: |
||||
return List.of(new Connector(x,y-1,Direction.SOUTH)); |
||||
return Map.of(new Connector(x,y-1,Direction.SOUTH),State.UNDEF); |
||||
default: |
||||
return new Vector<>(); |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
||||
|
@ -1,21 +1,22 @@
@@ -1,21 +1,22 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
import de.srsoftware.web4rail.tiles.Turnout.State; |
||||
|
||||
public class DiagSW extends Tile{ |
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case SOUTH: |
||||
return List.of(new Connector(x-1,y,Direction.EAST)); |
||||
return Map.of(new Connector(x-1,y,Direction.EAST),State.UNDEF); |
||||
case WEST: |
||||
return List.of(new Connector(x,y+1,Direction.NORTH)); |
||||
return Map.of(new Connector(x,y+1,Direction.NORTH),State.UNDEF); |
||||
default: |
||||
return new Vector<>(); |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
||||
|
@ -1,22 +1,23 @@
@@ -1,22 +1,23 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
import de.srsoftware.web4rail.tiles.Turnout.State; |
||||
|
||||
public class DiagWN extends Tile{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case NORTH: |
||||
return List.of(new Connector(x-1,y,Direction.EAST)); |
||||
return Map.of(new Connector(x-1,y,Direction.EAST),State.UNDEF); |
||||
case WEST: |
||||
return List.of(new Connector(x,y-1,Direction.SOUTH)); |
||||
return Map.of(new Connector(x,y-1,Direction.SOUTH),State.UNDEF); |
||||
default: |
||||
return new Vector<>(); |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
||||
|
@ -1,23 +0,0 @@
@@ -1,23 +0,0 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutEN extends Turnout{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
switch (from) { |
||||
case EAST: |
||||
return List.of(new Connector(x,y-1,Direction.SOUTH),new Connector(x-1, y, Direction.EAST)); |
||||
case NORTH: |
||||
case WEST: |
||||
return List.of(new Connector(x+1,y,Direction.WEST)); |
||||
default: |
||||
return new Vector<>(); |
||||
} |
||||
} |
||||
} |
@ -1,23 +0,0 @@
@@ -1,23 +0,0 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutES extends Turnout{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
switch (from) { |
||||
case EAST: |
||||
return List.of(new Connector(x,y+1,Direction.NORTH),new Connector(x-1, y, Direction.EAST)); |
||||
case SOUTH: |
||||
case WEST: |
||||
return List.of(new Connector(x+1,y,Direction.WEST)); |
||||
default: |
||||
return new Vector<>(); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutLE extends Turnout{ |
||||
|
||||
@Override |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case EAST: |
||||
return Map.of(new Connector(x,y+1,Direction.NORTH),State.LEFT,new Connector(x-1, y, Direction.EAST),State.STRAIGHT); |
||||
case SOUTH: |
||||
return Map.of(new Connector(x+1,y,Direction.WEST),State.LEFT); |
||||
case WEST: |
||||
return Map.of(new Connector(x+1,y,Direction.WEST),State.STRAIGHT); |
||||
default: |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutLN extends Turnout{ |
||||
|
||||
@Override |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case NORTH: |
||||
return Map.of(new Connector(x,y+1,Direction.NORTH),State.STRAIGHT,new Connector(x+1, y, Direction.WEST),State.LEFT); |
||||
case SOUTH: |
||||
return Map.of(new Connector(x,y-1,Direction.SOUTH),State.STRAIGHT); |
||||
case EAST: |
||||
return Map.of(new Connector(x,y-1,Direction.SOUTH),State.LEFT); |
||||
default: |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutLS extends Turnout{ |
||||
|
||||
@Override |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case SOUTH: |
||||
return Map.of(new Connector(x-1,y,Direction.EAST),State.LEFT,new Connector(x, y-1, Direction.SOUTH),State.STRAIGHT); |
||||
case WEST: |
||||
return Map.of(new Connector(x,y+1,Direction.NORTH),State.LEFT); |
||||
case NORTH: |
||||
return Map.of(new Connector(x,y+1,Direction.NORTH),State.STRAIGHT); |
||||
default: |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutLW extends Turnout{ |
||||
|
||||
@Override |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case WEST: |
||||
return Map.of(new Connector(x+1,y,Direction.WEST),State.STRAIGHT,new Connector(x, y-1, Direction.SOUTH),State.LEFT); |
||||
case EAST: |
||||
return Map.of(new Connector(x-1,y,Direction.EAST),State.STRAIGHT); |
||||
case NORTH: |
||||
return Map.of(new Connector(x-1,y,Direction.EAST),State.LEFT); |
||||
default: |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
@ -1,23 +0,0 @@
@@ -1,23 +0,0 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutNE extends Turnout{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
switch (from) { |
||||
case NORTH: |
||||
return List.of(new Connector(x,y+1,Direction.NORTH),new Connector(x+1, y, Direction.WEST)); |
||||
case SOUTH: |
||||
case EAST: |
||||
return List.of(new Connector(x,y-1,Direction.SOUTH)); |
||||
default: |
||||
return new Vector<>(); |
||||
} |
||||
} |
||||
} |
@ -1,23 +0,0 @@
@@ -1,23 +0,0 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutNW extends Turnout{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
switch (from) { |
||||
case NORTH: |
||||
return List.of(new Connector(x-1,y,Direction.EAST),new Connector(x, y+1, Direction.NORTH)); |
||||
case WEST: |
||||
case SOUTH: |
||||
return List.of(new Connector(x,y-1,Direction.SOUTH)); |
||||
default: |
||||
return new Vector<>(); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutRE extends Turnout{ |
||||
|
||||
@Override |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case EAST: |
||||
return Map.of(new Connector(x,y-1,Direction.SOUTH),State.RIGHT,new Connector(x-1, y, Direction.EAST),State.STRAIGHT); |
||||
case NORTH: |
||||
return Map.of(new Connector(x+1,y,Direction.WEST),State.RIGHT); |
||||
case WEST: |
||||
return Map.of(new Connector(x+1,y,Direction.WEST),State.STRAIGHT); |
||||
default: |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutRN extends Turnout{ |
||||
|
||||
@Override |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case NORTH: |
||||
return Map.of(new Connector(x-1,y,Direction.EAST),State.RIGHT,new Connector(x, y+1, Direction.NORTH),State.STRAIGHT); |
||||
case WEST: |
||||
return Map.of(new Connector(x,y-1,Direction.SOUTH),State.RIGHT); |
||||
case SOUTH: |
||||
return Map.of(new Connector(x,y-1,Direction.SOUTH),State.STRAIGHT); |
||||
default: |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutRS extends Turnout{ |
||||
|
||||
@Override |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case SOUTH: |
||||
return Map.of(new Connector(x+1,y,Direction.WEST),State.RIGHT,new Connector(x, y-1, Direction.SOUTH),State.STRAIGHT); |
||||
case EAST: |
||||
return Map.of(new Connector(x,y+1,Direction.NORTH),State.RIGHT); |
||||
case NORTH: |
||||
return Map.of(new Connector(x,y+1,Direction.NORTH),State.STRAIGHT); |
||||
default: |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,24 @@
@@ -0,0 +1,24 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutRW extends Turnout{ |
||||
|
||||
@Override |
||||
public Map<Connector, State> connections(Direction from) { |
||||
switch (from) { |
||||
case WEST: |
||||
return Map.of(new Connector(x+1,y,Direction.WEST),State.STRAIGHT,new Connector(x, y+1, Direction.NORTH),State.RIGHT); |
||||
case EAST: |
||||
return Map.of(new Connector(x-1,y,Direction.EAST),State.STRAIGHT); |
||||
case SOUTH: |
||||
return Map.of(new Connector(x-1,y,Direction.EAST),State.RIGHT); |
||||
default: |
||||
return new HashMap<>(); |
||||
} |
||||
} |
||||
} |
@ -1,23 +0,0 @@
@@ -1,23 +0,0 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutSE extends Turnout{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
switch (from) { |
||||
case SOUTH: |
||||
return List.of(new Connector(x+1,y,Direction.WEST),new Connector(x, y-1, Direction.SOUTH)); |
||||
case EAST: |
||||
case NORTH: |
||||
return List.of(new Connector(x,y+1,Direction.NORTH)); |
||||
default: |
||||
return new Vector<>(); |
||||
} |
||||
} |
||||
} |
@ -1,23 +0,0 @@
@@ -1,23 +0,0 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutSW extends Turnout{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
switch (from) { |
||||
case SOUTH: |
||||
return List.of(new Connector(x-1,y,Direction.EAST),new Connector(x, y-1, Direction.SOUTH)); |
||||
case WEST: |
||||
case NORTH: |
||||
return List.of(new Connector(x,y+1,Direction.NORTH)); |
||||
default: |
||||
return new Vector<>(); |
||||
} |
||||
} |
||||
} |
@ -1,23 +0,0 @@
@@ -1,23 +0,0 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutWN extends Turnout{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
switch (from) { |
||||
case WEST: |
||||
return List.of(new Connector(x+1,y,Direction.WEST),new Connector(x, y-1, Direction.SOUTH)); |
||||
case EAST: |
||||
case NORTH: |
||||
return List.of(new Connector(x-1,y,Direction.EAST)); |
||||
default: |
||||
return new Vector<>(); |
||||
} |
||||
} |
||||
} |
@ -1,23 +0,0 @@
@@ -1,23 +0,0 @@
|
||||
package de.srsoftware.web4rail.tiles; |
||||
|
||||
import java.util.List; |
||||
import java.util.Vector; |
||||
|
||||
import de.srsoftware.web4rail.Connector; |
||||
import de.srsoftware.web4rail.Plan.Direction; |
||||
|
||||
public class TurnoutWS extends Turnout{ |
||||
|
||||
@Override |
||||
public List<Connector> connections(Direction from) { |
||||
switch (from) { |
||||
case WEST: |
||||
return List.of(new Connector(x+1,y,Direction.WEST),new Connector(x, y+1, Direction.NORTH)); |
||||
case EAST: |
||||
case SOUTH: |
||||
return List.of(new Connector(x-1,y,Direction.EAST)); |
||||
default: |
||||
return new Vector<>(); |
||||
} |
||||
} |
||||
} |