Browse Source

Merge branch 'master' of ssh://eldorado/GIT/Web4Rail

lookup-tables
Stephan Richter 5 years ago
parent
commit
eaf5d48094
  1. 5
      resources/svg/Turnout3E.svg
  2. 10
      src/main/java/de/srsoftware/web4rail/Plan.java
  3. 29
      src/main/java/de/srsoftware/web4rail/tiles/Turnout3E.java

5
resources/svg/Turnout3E.svg

@ -0,0 +1,5 @@
<svg width="100" height="100" viewbox="0 0 100 100">
<polygon points="100,65 35,0 65,0 100,35" />
<polygon points="100,65 65,100 35,100 100,35" />
<rect x="0" y="35" width="100" height="30" />
</svg>

After

Width:  |  Height:  |  Size: 202 B

10
src/main/java/de/srsoftware/web4rail/Plan.java

@ -51,6 +51,7 @@ import de.srsoftware.web4rail.tiles.StraightV;
import de.srsoftware.web4rail.tiles.Tile; import de.srsoftware.web4rail.tiles.Tile;
import de.srsoftware.web4rail.tiles.Turnout; import de.srsoftware.web4rail.tiles.Turnout;
import de.srsoftware.web4rail.tiles.Turnout.State; import de.srsoftware.web4rail.tiles.Turnout.State;
import de.srsoftware.web4rail.tiles.Turnout3E;
import de.srsoftware.web4rail.tiles.TurnoutLE; import de.srsoftware.web4rail.tiles.TurnoutLE;
import de.srsoftware.web4rail.tiles.TurnoutLN; import de.srsoftware.web4rail.tiles.TurnoutLN;
import de.srsoftware.web4rail.tiles.TurnoutLS; import de.srsoftware.web4rail.tiles.TurnoutLS;
@ -276,10 +277,10 @@ public class Plan {
private Tag moveMenu() { private Tag moveMenu() {
Tag tileMenu = new Tag("div").clazz("move").title(t("Move tiles")).content(t("↹")); Tag tileMenu = new Tag("div").clazz("move").title(t("Move tiles")).content(t("↹"));
StringBuffer tiles = new StringBuffer(); StringBuffer tiles = new StringBuffer();
tiles.append(new Tag("div").id("west").title(t("Move west")).content("🢀")); tiles.append(new Tag("div").id("west").title(t("Move west")).content(""));
tiles.append(new Tag("div").id("east").title(t("Move east")).content("🢂")); tiles.append(new Tag("div").id("east").title(t("Move east")).content(""));
tiles.append(new Tag("div").id("north").title(t("Move north")).content("🢁")); tiles.append(new Tag("div").id("north").title(t("Move north")).content(""));
tiles.append(new Tag("div").id("south").title(t("Move south")).content("🢃")); tiles.append(new Tag("div").id("south").title(t("Move south")).content(""));
return new Tag("div").clazz("list").content(tiles.toString()).addTo(tileMenu); return new Tag("div").clazz("list").content(tiles.toString()).addTo(tileMenu);
} }
@ -510,6 +511,7 @@ public class Plan {
tiles.append(new TurnoutLS().tag(null)); tiles.append(new TurnoutLS().tag(null));
tiles.append(new TurnoutLW().tag(null)); tiles.append(new TurnoutLW().tag(null));
tiles.append(new TurnoutLE().tag(null)); tiles.append(new TurnoutLE().tag(null));
tiles.append(new Turnout3E().tag(null));
tiles.append(new CrossH().tag(null)); tiles.append(new CrossH().tag(null));
tiles.append(new CrossV().tag(null)); tiles.append(new CrossV().tag(null));
tiles.append(new Eraser().tag(null)); tiles.append(new Eraser().tag(null));

29
src/main/java/de/srsoftware/web4rail/tiles/Turnout3E.java

@ -0,0 +1,29 @@
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 Turnout3E 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,
new Connector(x,y-1,Direction.SOUTH),State.RIGHT);
case NORTH:
return Map.of(new Connector(x+1,y,Direction.WEST),State.RIGHT);
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<>();
}
}
}
Loading…
Cancel
Save