diff --git a/src/main/java/de/ph87/electro/circuit/CircuitPainter.java b/src/main/java/de/ph87/electro/circuit/CircuitPainter.java index c094f9e..d483a28 100644 --- a/src/main/java/de/ph87/electro/circuit/CircuitPainter.java +++ b/src/main/java/de/ph87/electro/circuit/CircuitPainter.java @@ -3,6 +3,7 @@ package de.ph87.electro.circuit; import de.ph87.electro.circuit.node.Node; import de.ph87.electro.circuit.part.Orientation; import de.ph87.electro.circuit.part.Part; +import de.ph87.electro.circuit.part.PartNode; import java.awt.*; import java.awt.geom.AffineTransform; @@ -92,12 +93,12 @@ public class CircuitPainter { } } - public static void drawLine(final Graphics2D g, final Node a, final Node b, final Color color, final Stroke stroke) { - drawLine(g, a.getPosition(), b.getPosition(), color, stroke); + public static void drawLine(final Graphics2D g, final PartNode a, final PartNode b, final Color color, final Stroke stroke) { + drawLine(g, a.getInside(), b.getInside(), color, stroke); } - public static void drawLine(final Graphics2D g, final Node a, final Point b, final Color color, final Stroke stroke) { - drawLine(g, a.getPosition(), b, color, stroke); + public static void drawLine(final Graphics2D g, final PartNode a, final Point b, final Color color, final Stroke stroke) { + drawLine(g, a.getInside(), b, color, stroke); } public static void drawLine(final Graphics2D g, final Point a, final Point b, final Color color, final Stroke stroke) { diff --git a/src/main/java/de/ph87/electro/circuit/part/Part.java b/src/main/java/de/ph87/electro/circuit/part/Part.java index 84052db..a1d6796 100644 --- a/src/main/java/de/ph87/electro/circuit/part/Part.java +++ b/src/main/java/de/ph87/electro/circuit/part/Part.java @@ -1,6 +1,5 @@ package de.ph87.electro.circuit.part; -import de.ph87.electro.circuit.node.Node; import de.ph87.electro.circuit.node.NodeDto; import de.ph87.electro.circuit.part.parts.*; import lombok.Getter; @@ -99,12 +98,12 @@ public abstract class Part { } @NonNull - protected Node addNode(@NonNull final String name, final int x, final int y) { + protected PartNode addNode(@NonNull final String name, final int x, final int y) { return addNode(new PartNode(this, name, new Point(x, y))); } @NonNull - protected Node addNode(@NonNull final NodeDto dto, final int x, final int y) { + protected PartNode addNode(@NonNull final NodeDto dto, final int x, final int y) { return addNode(new PartNode(this, dto, new Point(x, y))); } diff --git a/src/main/java/de/ph87/electro/circuit/part/parts/Light.java b/src/main/java/de/ph87/electro/circuit/part/parts/Light.java index 23436f2..dcdd64e 100644 --- a/src/main/java/de/ph87/electro/circuit/part/parts/Light.java +++ b/src/main/java/de/ph87/electro/circuit/part/parts/Light.java @@ -1,9 +1,9 @@ package de.ph87.electro.circuit.part.parts; -import de.ph87.electro.circuit.node.Node; import de.ph87.electro.circuit.part.InnerConnection; import de.ph87.electro.circuit.part.Orientation; import de.ph87.electro.circuit.part.Part; +import de.ph87.electro.circuit.part.PartNode; import lombok.Getter; import lombok.ToString; @@ -36,9 +36,9 @@ public class Light extends Part { private static final Color BULB_OFF_COLOR = Color.DARK_GRAY; - private final Node a; + private final PartNode a; - private final Node b; + private final PartNode b; private double resistance = 15; diff --git a/src/main/java/de/ph87/electro/circuit/part/parts/Switch1x1.java b/src/main/java/de/ph87/electro/circuit/part/parts/Switch1x1.java index bc57b14..a46df1d 100644 --- a/src/main/java/de/ph87/electro/circuit/part/parts/Switch1x1.java +++ b/src/main/java/de/ph87/electro/circuit/part/parts/Switch1x1.java @@ -1,8 +1,8 @@ package de.ph87.electro.circuit.part.parts; -import de.ph87.electro.circuit.node.Node; import de.ph87.electro.circuit.part.InnerConnection; import de.ph87.electro.circuit.part.Part; +import de.ph87.electro.circuit.part.PartNode; import lombok.Getter; import lombok.ToString; @@ -18,9 +18,9 @@ public class Switch1x1 extends Part { private static final Point END = new Point(P90, P25); - private final Node common; + private final PartNode common; - private final Node output; + private final PartNode output; private boolean state = false; @@ -49,8 +49,7 @@ public class Switch1x1 extends Part { @Override protected void _render(final Graphics2D g) { if (!state) { - final Point end = getOrientation().rotate(END); - drawLine(g, common.getPosition(), end, common.getColor(), SWITCH_STROKE); + drawLine(g, common, END, common.getColor(), SWITCH_STROKE); } else { drawLine(g, common, output, common.getColor(), SWITCH_STROKE); } diff --git a/src/main/java/de/ph87/electro/circuit/part/parts/Switch1x2.java b/src/main/java/de/ph87/electro/circuit/part/parts/Switch1x2.java index 47fb9b8..117a9c3 100644 --- a/src/main/java/de/ph87/electro/circuit/part/parts/Switch1x2.java +++ b/src/main/java/de/ph87/electro/circuit/part/parts/Switch1x2.java @@ -1,8 +1,8 @@ package de.ph87.electro.circuit.part.parts; -import de.ph87.electro.circuit.node.Node; import de.ph87.electro.circuit.part.InnerConnection; import de.ph87.electro.circuit.part.Part; +import de.ph87.electro.circuit.part.PartNode; import lombok.Getter; import lombok.ToString; @@ -16,11 +16,11 @@ import static de.ph87.electro.circuit.CircuitPainter.drawLine; @ToString(callSuper = true) public class Switch1x2 extends Part { - private final Node common; + private final PartNode common; - private final Node output0; + private final PartNode output0; - private final Node output1; + private final PartNode output1; private boolean state = false; diff --git a/src/main/java/de/ph87/electro/circuit/part/parts/SwitchCross.java b/src/main/java/de/ph87/electro/circuit/part/parts/SwitchCross.java index 616f018..e7134b5 100644 --- a/src/main/java/de/ph87/electro/circuit/part/parts/SwitchCross.java +++ b/src/main/java/de/ph87/electro/circuit/part/parts/SwitchCross.java @@ -1,8 +1,8 @@ package de.ph87.electro.circuit.part.parts; -import de.ph87.electro.circuit.node.Node; import de.ph87.electro.circuit.part.InnerConnection; import de.ph87.electro.circuit.part.Part; +import de.ph87.electro.circuit.part.PartNode; import lombok.Getter; import lombok.ToString; @@ -16,13 +16,13 @@ import static de.ph87.electro.circuit.CircuitPainter.drawLine; @ToString(callSuper = true) public class SwitchCross extends Part { - private final Node common0; + private final PartNode common0; - private final Node common1; + private final PartNode common1; - private final Node output0; + private final PartNode output0; - private final Node output1; + private final PartNode output1; private boolean state = false;