FIX: auto-evaluation from Part-change -> Circuit
This commit is contained in:
parent
8da0cf8071
commit
de5d1bfc2c
@ -42,7 +42,7 @@ public class Circuit {
|
||||
public Circuit(final CircuitDto dto) {
|
||||
created = dto.getCreated();
|
||||
for (PartDto partDto : dto.getParts()) {
|
||||
final Part part = Part.of(partDto);
|
||||
final Part part = Part.of(this, partDto);
|
||||
verifyFree(part.getPosition());
|
||||
parts.add(part);
|
||||
}
|
||||
@ -56,7 +56,7 @@ public class Circuit {
|
||||
|
||||
public void connect(final Junction a, final Junction b) {
|
||||
wires.add(new Wire(a, b));
|
||||
setDirty();
|
||||
evaluate();
|
||||
}
|
||||
|
||||
public void disconnect(final Wire wire) {
|
||||
@ -66,7 +66,7 @@ public class Circuit {
|
||||
wires.remove(wire);
|
||||
wire.getA().getWires().remove(wire);
|
||||
wire.getB().getWires().remove(wire);
|
||||
setDirty();
|
||||
evaluate();
|
||||
}
|
||||
|
||||
public <T extends Part> T addPart(final T part) {
|
||||
@ -76,7 +76,7 @@ public class Circuit {
|
||||
verifyFree(part.getPosition());
|
||||
parts.add(part);
|
||||
part.render();
|
||||
setDirty();
|
||||
evaluate();
|
||||
return part;
|
||||
}
|
||||
|
||||
@ -86,15 +86,11 @@ public class Circuit {
|
||||
}
|
||||
verifyFree(position);
|
||||
part.setPosition(position);
|
||||
setDirty();
|
||||
}
|
||||
|
||||
private void setDirty() {
|
||||
evaluate();
|
||||
dirty = true;
|
||||
}
|
||||
|
||||
public void evaluate() {
|
||||
dirty = true;
|
||||
Calculation.calculate(this);
|
||||
parts.forEach(Part::render);
|
||||
}
|
||||
|
||||
@ -8,7 +8,7 @@ import java.io.OutputStream;
|
||||
|
||||
public class CircuitIOService {
|
||||
|
||||
private static final ObjectMapper objectMapper = new ObjectMapper();
|
||||
private static final ObjectMapper objectMapper = new ObjectMapper().findAndRegisterModules();
|
||||
|
||||
public static void write(final Circuit circuit, final OutputStream stream) throws IOException {
|
||||
objectMapper.writeValue(stream, new CircuitDto(circuit));
|
||||
|
||||
@ -20,9 +20,9 @@ public class CircuitPanel extends JPanel {
|
||||
|
||||
public CircuitPanel() {
|
||||
new CircuitPanelDropTarget(this, circuit);
|
||||
final Battery battery = circuit.addPart(new Battery(RST(2, 0)));
|
||||
final Light light = circuit.addPart(new Light(RST(0, 2)));
|
||||
final Poti poti = circuit.addPart(new Poti(RST(2, 2)));
|
||||
final Battery battery = circuit.addPart(new Battery(circuit, RST(2, 0)));
|
||||
final Light light = circuit.addPart(new Light(circuit, RST(0, 2)));
|
||||
final Poti poti = circuit.addPart(new Poti(circuit, RST(2, 2)));
|
||||
poti.rotate();
|
||||
poti.rotate();
|
||||
light.rotate();
|
||||
|
||||
@ -23,23 +23,23 @@ public class CircuitPanelDropTarget extends AbstractDropTarget {
|
||||
protected boolean drop(final Point point, final String data) {
|
||||
final Position position = new Position(point);
|
||||
if (data.equals(Battery.class.getSimpleName())) {
|
||||
circuit.addPart(new Battery(position));
|
||||
circuit.addPart(new Battery(circuit, position));
|
||||
} else if (data.equals(ConnectorCorner.class.getSimpleName())) {
|
||||
circuit.addPart(new ConnectorCorner(position));
|
||||
circuit.addPart(new ConnectorCorner(circuit, position));
|
||||
} else if (data.equals(ConnectorEdge.class.getSimpleName())) {
|
||||
circuit.addPart(new ConnectorEdge(position));
|
||||
circuit.addPart(new ConnectorEdge(circuit, position));
|
||||
} else if (data.equals(ConnectorMiddle.class.getSimpleName())) {
|
||||
circuit.addPart(new ConnectorMiddle(position));
|
||||
circuit.addPart(new ConnectorMiddle(circuit, position));
|
||||
} else if (data.equals(Light.class.getSimpleName())) {
|
||||
circuit.addPart(new Light(position));
|
||||
circuit.addPart(new Light(circuit, position));
|
||||
} else if (data.equals(Switch1x1.class.getSimpleName())) {
|
||||
circuit.addPart(new Switch1x1(position));
|
||||
circuit.addPart(new Switch1x1(circuit, position));
|
||||
} else if (data.equals(Switch1x2.class.getSimpleName())) {
|
||||
circuit.addPart(new Switch1x2(position));
|
||||
circuit.addPart(new Switch1x2(circuit, position));
|
||||
} else if (data.equals(SwitchCross.class.getSimpleName())) {
|
||||
circuit.addPart(new SwitchCross(position));
|
||||
circuit.addPart(new SwitchCross(circuit, position));
|
||||
} else if (data.equals(Poti.class.getSimpleName())) {
|
||||
circuit.addPart(new Poti(position));
|
||||
circuit.addPart(new Poti(circuit, position));
|
||||
} else {
|
||||
throw new RuntimeException();
|
||||
}
|
||||
|
||||
@ -56,7 +56,6 @@ class CircuitPanelMouseAdapter extends MouseAdapter {
|
||||
switch (event.getButton()) {
|
||||
case BUTTON1:
|
||||
part.action();
|
||||
circuit.evaluate();
|
||||
circuitPanel.repaint();
|
||||
break;
|
||||
case BUTTON3:
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package de.ph87.electro.circuit.part;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.junction.Junction;
|
||||
import de.ph87.electro.circuit.part.junction.JunctionDto;
|
||||
import de.ph87.electro.circuit.part.parts.*;
|
||||
@ -15,32 +16,40 @@ import static de.ph87.electro.CONFIG.PART_BACKGROUND;
|
||||
import static de.ph87.electro.CONFIG.RASTER;
|
||||
import static de.ph87.electro.circuit.part.Position.ZERO;
|
||||
|
||||
@Getter
|
||||
@ToString(onlyExplicitlyIncluded = true)
|
||||
public abstract class Part {
|
||||
|
||||
private final Circuit circuit;
|
||||
|
||||
@Getter
|
||||
@ToString.Include
|
||||
private final String uuid;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@ToString.Include
|
||||
private String name;
|
||||
|
||||
@Getter
|
||||
private Position position;
|
||||
|
||||
@Getter
|
||||
private Orientation orientation = Orientation.R0;
|
||||
|
||||
@Getter
|
||||
private final List<Junction> junctions = new ArrayList<>();
|
||||
|
||||
protected final Render render = new Render();
|
||||
|
||||
protected Part(final String name, final Position position) {
|
||||
protected Part(final Circuit circuit, final String name, final Position position) {
|
||||
this.circuit = circuit;
|
||||
this.uuid = UUID.randomUUID().toString();
|
||||
this.name = name;
|
||||
setPosition(position);
|
||||
}
|
||||
|
||||
protected Part(final PartDto dto) {
|
||||
protected Part(final Circuit circuit, final PartDto dto) {
|
||||
this.circuit = circuit;
|
||||
this.uuid = dto.getUuid();
|
||||
this.name = dto.getName();
|
||||
this.orientation = dto.getOrientation();
|
||||
@ -96,7 +105,12 @@ public abstract class Part {
|
||||
return junctions.stream().filter(junction -> junction.intersects(position)).findFirst();
|
||||
}
|
||||
|
||||
public void action() {
|
||||
public final void action() {
|
||||
_action();
|
||||
evaluate();
|
||||
}
|
||||
|
||||
public void _action() {
|
||||
// may be overwritten
|
||||
}
|
||||
|
||||
@ -112,20 +126,26 @@ public abstract class Part {
|
||||
// may be overwritten
|
||||
}
|
||||
|
||||
protected void evaluate() {
|
||||
if (circuit != null) {
|
||||
circuit.evaluate();
|
||||
}
|
||||
}
|
||||
|
||||
public List<InnerConnection> getInnerConnections() {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
public static Part of(final PartDto abstractDto) {
|
||||
public static Part of(final Circuit circuit, final PartDto abstractDto) {
|
||||
return switch (abstractDto) {
|
||||
case final BatteryDto dto -> new Battery(dto);
|
||||
case final ConnectorCornerDto dto -> new ConnectorCorner(dto);
|
||||
case final ConnectorEdgeDto dto -> new ConnectorEdge(dto);
|
||||
case final ConnectorMiddleDto dto -> new ConnectorMiddle(dto);
|
||||
case final LightDto dto -> new Light(dto);
|
||||
case final Switch1x1Dto dto -> new Switch1x1(dto);
|
||||
case final Switch1x2Dto dto -> new Switch1x2(dto);
|
||||
case final SwitchCrossDto dto -> new SwitchCross(dto);
|
||||
case final BatteryDto dto -> new Battery(circuit, dto);
|
||||
case final ConnectorCornerDto dto -> new ConnectorCorner(circuit, dto);
|
||||
case final ConnectorEdgeDto dto -> new ConnectorEdge(circuit, dto);
|
||||
case final ConnectorMiddleDto dto -> new ConnectorMiddle(circuit, dto);
|
||||
case final LightDto dto -> new Light(circuit, dto);
|
||||
case final Switch1x1Dto dto -> new Switch1x1(circuit, dto);
|
||||
case final Switch1x2Dto dto -> new Switch1x2(circuit, dto);
|
||||
case final SwitchCrossDto dto -> new SwitchCross(circuit, dto);
|
||||
case null, default -> throw new RuntimeException();
|
||||
};
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package de.ph87.electro.circuit.part.parts;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.Orientation;
|
||||
import de.ph87.electro.circuit.part.Part;
|
||||
import de.ph87.electro.circuit.part.Position;
|
||||
@ -40,14 +41,14 @@ public class Battery extends Part {
|
||||
@ToString.Include
|
||||
private double resistance = 0.05;
|
||||
|
||||
public Battery(final Position position) {
|
||||
super("Batterie", position);
|
||||
public Battery(final Circuit circuit, final Position position) {
|
||||
super(circuit, "Batterie", position);
|
||||
minus = addJunction("MINUS", P10, P50);
|
||||
plus = addJunction("PLUS", P90, P50);
|
||||
}
|
||||
|
||||
public Battery(final BatteryDto dto) {
|
||||
super(dto);
|
||||
public Battery(final Circuit circuit, final BatteryDto dto) {
|
||||
super(circuit, dto);
|
||||
minus = addJunction(dto.getMinus(), P10, P50);
|
||||
plus = addJunction(dto.getPlus(), P90, P50);
|
||||
voltage = dto.getVoltage();
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package de.ph87.electro.circuit.part.parts;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.Part;
|
||||
import de.ph87.electro.circuit.part.Position;
|
||||
import de.ph87.electro.circuit.part.junction.Junction;
|
||||
@ -17,14 +18,14 @@ public class ConnectorCorner extends Part {
|
||||
|
||||
private final Junction j1;
|
||||
|
||||
public ConnectorCorner(final Position position) {
|
||||
super("", position);
|
||||
public ConnectorCorner(final Circuit circuit, final Position position) {
|
||||
super(circuit, "", position);
|
||||
j0 = addJunction("J0", P10, P10);
|
||||
j1 = addJunction("J1", P90, P90);
|
||||
}
|
||||
|
||||
public ConnectorCorner(final ConnectorCornerDto dto) {
|
||||
super(dto);
|
||||
public ConnectorCorner(final Circuit circuit, final ConnectorCornerDto dto) {
|
||||
super(circuit, dto);
|
||||
j0 = addJunction(dto.getJ0(), P10, P10);
|
||||
j1 = addJunction(dto.getJ1(), P90, P90);
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package de.ph87.electro.circuit.part.parts;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.Part;
|
||||
import de.ph87.electro.circuit.part.Position;
|
||||
import de.ph87.electro.circuit.part.junction.Junction;
|
||||
@ -17,14 +18,14 @@ public class ConnectorEdge extends Part {
|
||||
|
||||
private final Junction j1;
|
||||
|
||||
public ConnectorEdge(final Position position) {
|
||||
super("", position);
|
||||
public ConnectorEdge(final Circuit circuit, final Position position) {
|
||||
super(circuit, "", position);
|
||||
j0 = addJunction("J0", P10, P50);
|
||||
j1 = addJunction("J1", P50, P10);
|
||||
}
|
||||
|
||||
public ConnectorEdge(final ConnectorEdgeDto dto) {
|
||||
super(dto);
|
||||
public ConnectorEdge(final Circuit circuit, final ConnectorEdgeDto dto) {
|
||||
super(circuit, dto);
|
||||
j0 = addJunction(dto.getJ0(), P10, P50);
|
||||
j1 = addJunction(dto.getJ1(), P50, P10);
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package de.ph87.electro.circuit.part.parts;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.Part;
|
||||
import de.ph87.electro.circuit.part.Position;
|
||||
import de.ph87.electro.circuit.part.junction.Junction;
|
||||
@ -14,13 +15,13 @@ public class ConnectorMiddle extends Part {
|
||||
|
||||
private final Junction junction;
|
||||
|
||||
public ConnectorMiddle(final Position position) {
|
||||
super("", position);
|
||||
public ConnectorMiddle(final Circuit circuit, final Position position) {
|
||||
super(circuit, "", position);
|
||||
junction = addJunction("J", P50, P50);
|
||||
}
|
||||
|
||||
public ConnectorMiddle(final ConnectorMiddleDto dto) {
|
||||
super(dto);
|
||||
public ConnectorMiddle(final Circuit circuit, final ConnectorMiddleDto dto) {
|
||||
super(circuit, dto);
|
||||
junction = addJunction(dto.getJunction(), P50, P50);
|
||||
}
|
||||
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package de.ph87.electro.circuit.part.parts;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.InnerConnection;
|
||||
import de.ph87.electro.circuit.part.Orientation;
|
||||
import de.ph87.electro.circuit.part.Part;
|
||||
@ -51,14 +52,14 @@ public class Light extends Part {
|
||||
|
||||
private Color color = BULB_OFF_COLOR;
|
||||
|
||||
public Light(final Position position) {
|
||||
super("Licht", position);
|
||||
public Light(final Circuit circuit, final Position position) {
|
||||
super(circuit, "Licht", position);
|
||||
a = addJunction("A", P10, P50);
|
||||
b = addJunction("B", P90, P50);
|
||||
}
|
||||
|
||||
public Light(final LightDto dto) {
|
||||
super(dto);
|
||||
public Light(final Circuit circuit, final LightDto dto) {
|
||||
super(circuit, dto);
|
||||
a = addJunction(dto.getB(), P10, P50);
|
||||
b = addJunction(dto.getA(), P90, P50);
|
||||
resistance = dto.getResistance();
|
||||
@ -67,7 +68,7 @@ public class Light extends Part {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void action() {
|
||||
public void _action() {
|
||||
defect = false;
|
||||
}
|
||||
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package de.ph87.electro.circuit.part.parts;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.InnerConnection;
|
||||
import de.ph87.electro.circuit.part.Part;
|
||||
import de.ph87.electro.circuit.part.Position;
|
||||
@ -28,25 +29,29 @@ public class Poti extends Part {
|
||||
@Setter
|
||||
private double resistance = 10;
|
||||
|
||||
@Setter
|
||||
private double ratio = 0.0;
|
||||
|
||||
public Poti(final Position position) {
|
||||
super("Poti", position);
|
||||
public Poti(final Circuit circuit, final Position position) {
|
||||
super(circuit, "Poti", position);
|
||||
common = addJunction("C", P10, P50);
|
||||
middle = addJunction("M", P50, P10);
|
||||
end = addJunction("E", P90, P50);
|
||||
}
|
||||
|
||||
protected Poti(final PotiDto dto) {
|
||||
super(dto);
|
||||
protected Poti(final Circuit circuit, final PotiDto dto) {
|
||||
super(circuit, dto);
|
||||
common = addJunction(dto.getCommon().getName(), P10, P50);
|
||||
middle = addJunction(dto.getMiddle().getName(), P50, P10);
|
||||
end = addJunction(dto.getEnd().getName(), P90, P50);
|
||||
}
|
||||
|
||||
public void setRatio(final double ratio) {
|
||||
this.ratio = ratio;
|
||||
evaluate();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void action() {
|
||||
public void _action() {
|
||||
if (ratio > 0.95) {
|
||||
ratio = 0;
|
||||
} else {
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
package de.ph87.electro.circuit.part.parts;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.InnerConnection;
|
||||
import de.ph87.electro.circuit.part.Part;
|
||||
import de.ph87.electro.circuit.part.Position;
|
||||
import de.ph87.electro.circuit.part.junction.Junction;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.awt.*;
|
||||
@ -22,24 +22,28 @@ public class Switch1x1 extends Part {
|
||||
|
||||
private final Junction output;
|
||||
|
||||
@Setter
|
||||
private boolean state = false;
|
||||
|
||||
public Switch1x1(final Position position) {
|
||||
super("Ausschalter", position);
|
||||
public Switch1x1(final Circuit circuit, final Position position) {
|
||||
super(circuit, "Ausschalter", position);
|
||||
common = addJunction("C", P10, P50);
|
||||
output = addJunction("O", P90, P50);
|
||||
}
|
||||
|
||||
public Switch1x1(final Switch1x1Dto dto) {
|
||||
super(dto);
|
||||
public Switch1x1(final Circuit circuit, final Switch1x1Dto dto) {
|
||||
super(circuit, dto);
|
||||
common = addJunction(dto.getCommon(), P10, P50);
|
||||
output = addJunction(dto.getOutput(), P90, P50);
|
||||
state = dto.isState();
|
||||
}
|
||||
|
||||
public void setState(final boolean state) {
|
||||
this.state = state;
|
||||
evaluate();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void action() {
|
||||
public void _action() {
|
||||
state = !state;
|
||||
}
|
||||
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package de.ph87.electro.circuit.part.parts;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.InnerConnection;
|
||||
import de.ph87.electro.circuit.part.Part;
|
||||
import de.ph87.electro.circuit.part.Position;
|
||||
@ -23,26 +24,30 @@ public class Switch1x2 extends Part {
|
||||
|
||||
private final Junction output1;
|
||||
|
||||
@Setter
|
||||
private boolean state = false;
|
||||
|
||||
public Switch1x2(final Position position) {
|
||||
super("Wechselschalter", position);
|
||||
public Switch1x2(final Circuit circuit, final Position position) {
|
||||
super(circuit, "Wechselschalter", position);
|
||||
common = addJunction("C", P10, P50);
|
||||
output0 = addJunction("O0", P90, P25);
|
||||
output1 = addJunction("O1", P90, P75);
|
||||
}
|
||||
|
||||
public Switch1x2(final Switch1x2Dto dto) {
|
||||
super(dto);
|
||||
public Switch1x2(final Circuit circuit, final Switch1x2Dto dto) {
|
||||
super(circuit, dto);
|
||||
common = addJunction(dto.getCommon(), P10, P50);
|
||||
output0 = addJunction(dto.getOutput0(), P90, P25);
|
||||
output1 = addJunction(dto.getOutput1(), P90, P75);
|
||||
state = dto.isState();
|
||||
}
|
||||
|
||||
public void setState(final boolean state) {
|
||||
this.state = state;
|
||||
evaluate();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void action() {
|
||||
public void _action() {
|
||||
state = !state;
|
||||
}
|
||||
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package de.ph87.electro.circuit.part.parts;
|
||||
|
||||
import de.ph87.electro.circuit.Circuit;
|
||||
import de.ph87.electro.circuit.part.InnerConnection;
|
||||
import de.ph87.electro.circuit.part.Part;
|
||||
import de.ph87.electro.circuit.part.Position;
|
||||
@ -25,19 +26,18 @@ public class SwitchCross extends Part {
|
||||
|
||||
private final Junction output1;
|
||||
|
||||
@Setter
|
||||
private boolean state = false;
|
||||
|
||||
public SwitchCross(final Position position) {
|
||||
super("Kreuzschalter", position);
|
||||
public SwitchCross(final Circuit circuit, final Position position) {
|
||||
super(circuit, "Kreuzschalter", position);
|
||||
common0 = addJunction("C0", P10, P25);
|
||||
common1 = addJunction("C1", P10, P75);
|
||||
output0 = addJunction("O0", P90, P25);
|
||||
output1 = addJunction("O1", P90, P75);
|
||||
}
|
||||
|
||||
public SwitchCross(final SwitchCrossDto dto) {
|
||||
super(dto);
|
||||
public SwitchCross(final Circuit circuit, final SwitchCrossDto dto) {
|
||||
super(circuit, dto);
|
||||
common0 = addJunction(dto.getCommon0(), P10, P25);
|
||||
common1 = addJunction(dto.getCommon1(), P10, P75);
|
||||
output0 = addJunction(dto.getOutput0(), P90, P25);
|
||||
@ -45,8 +45,13 @@ public class SwitchCross extends Part {
|
||||
state = dto.isState();
|
||||
}
|
||||
|
||||
public void setState(final boolean state) {
|
||||
this.state = state;
|
||||
evaluate();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void action() {
|
||||
public void _action() {
|
||||
state = !state;
|
||||
}
|
||||
|
||||
|
||||
@ -28,15 +28,15 @@ public class Sidebar extends JPanel {
|
||||
});
|
||||
add(toggleDetails);
|
||||
|
||||
add(new Battery(Position.ZERO));
|
||||
add(new ConnectorCorner(Position.ZERO));
|
||||
add(new ConnectorEdge(Position.ZERO));
|
||||
add(new ConnectorMiddle(Position.ZERO));
|
||||
add(new Light(Position.ZERO));
|
||||
add(new Switch1x1(Position.ZERO));
|
||||
add(new Switch1x2(Position.ZERO));
|
||||
add(new SwitchCross(Position.ZERO));
|
||||
add(new Poti(Position.ZERO));
|
||||
add(new Battery(null, Position.ZERO));
|
||||
add(new ConnectorCorner(null, Position.ZERO));
|
||||
add(new ConnectorEdge(null, Position.ZERO));
|
||||
add(new ConnectorMiddle(null, Position.ZERO));
|
||||
add(new Light(null, Position.ZERO));
|
||||
add(new Switch1x1(null, Position.ZERO));
|
||||
add(new Switch1x2(null, Position.ZERO));
|
||||
add(new SwitchCross(null, Position.ZERO));
|
||||
add(new Poti(null, Position.ZERO));
|
||||
setPreferredSize(new Dimension(0, 200));
|
||||
}
|
||||
|
||||
|
||||
@ -16,8 +16,8 @@ class CalculationServiceTest {
|
||||
@Test
|
||||
void test() {
|
||||
final Circuit circuit = new Circuit();
|
||||
final Battery battery = circuit.addPart(new Battery(RST(0, 0)));
|
||||
final Light light = circuit.addPart(new Light(RST(0, 1)));
|
||||
final Battery battery = circuit.addPart(new Battery(circuit, RST(0, 0)));
|
||||
final Light light = circuit.addPart(new Light(circuit, RST(0, 1)));
|
||||
circuit.connect(battery.getMinus(), light.getA());
|
||||
circuit.connect(battery.getPlus(), light.getB());
|
||||
|
||||
|
||||
@ -22,8 +22,8 @@ class CircuitIOServiceTest {
|
||||
@Test
|
||||
void serialization() throws IOException {
|
||||
final Circuit circuit = new Circuit();
|
||||
final Battery battery = circuit.addPart(new Battery(RST(0, 0)));
|
||||
final Light light = circuit.addPart(new Light(RST(0, 1)));
|
||||
final Battery battery = circuit.addPart(new Battery(circuit, RST(0, 0)));
|
||||
final Light light = circuit.addPart(new Light(circuit, RST(0, 1)));
|
||||
circuit.connect(battery.getPlus(), light.getB());
|
||||
circuit.connect(light.getA(), battery.getMinus());
|
||||
check(circuit);
|
||||
|
||||
@ -14,9 +14,9 @@ public class BatteryLightTest {
|
||||
|
||||
private static final Circuit CIRCUIT = new Circuit();
|
||||
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(RST(0, 0)));
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(CIRCUIT, RST(0, 0)));
|
||||
|
||||
private static final Light light = CIRCUIT.addPart(new Light(RST(0, 1)));
|
||||
private static final Light light = CIRCUIT.addPart(new Light(CIRCUIT, RST(0, 1)));
|
||||
|
||||
@BeforeAll
|
||||
public static void setUp() {
|
||||
|
||||
@ -15,11 +15,11 @@ public class BatterySwitcher1x1Test {
|
||||
|
||||
private static final Circuit CIRCUIT = new Circuit();
|
||||
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(RST(0, 0)));
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(CIRCUIT, RST(0, 0)));
|
||||
|
||||
private static final Switch1x1 switcher = CIRCUIT.addPart(new Switch1x1(RST(0, 1)));
|
||||
private static final Switch1x1 switcher = CIRCUIT.addPart(new Switch1x1(CIRCUIT, RST(0, 1)));
|
||||
|
||||
private static final Light light = CIRCUIT.addPart(new Light(RST(1, 0)));
|
||||
private static final Light light = CIRCUIT.addPart(new Light(CIRCUIT, RST(1, 0)));
|
||||
|
||||
@BeforeAll
|
||||
public static void setUp() {
|
||||
|
||||
@ -15,13 +15,13 @@ public class BatterySwitcher1x2Test {
|
||||
|
||||
private static final Circuit CIRCUIT = new Circuit();
|
||||
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(RST(0, 0)));
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(CIRCUIT, RST(0, 0)));
|
||||
|
||||
private static final Switch1x2 switcher = CIRCUIT.addPart(new Switch1x2(RST(0, 2)));
|
||||
private static final Switch1x2 switcher = CIRCUIT.addPart(new Switch1x2(CIRCUIT, RST(0, 2)));
|
||||
|
||||
private static final Light light0 = CIRCUIT.addPart(new Light(RST(1, 1)));
|
||||
private static final Light light0 = CIRCUIT.addPart(new Light(CIRCUIT, RST(1, 1)));
|
||||
|
||||
private static final Light light1 = CIRCUIT.addPart(new Light(RST(1, 3)));
|
||||
private static final Light light1 = CIRCUIT.addPart(new Light(CIRCUIT, RST(1, 3)));
|
||||
|
||||
@BeforeAll
|
||||
public static void setUp() {
|
||||
|
||||
@ -15,13 +15,13 @@ public class BatterySwitcher2x2Test {
|
||||
|
||||
private static final Circuit CIRCUIT = new Circuit();
|
||||
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(RST(0, 0)));
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(CIRCUIT, RST(0, 0)));
|
||||
|
||||
private static final Switch1x2 switcher0 = CIRCUIT.addPart(new Switch1x2(RST(0, 1)));
|
||||
private static final Switch1x2 switcher0 = CIRCUIT.addPart(new Switch1x2(CIRCUIT, RST(0, 1)));
|
||||
|
||||
private static final Switch1x2 switcher1 = CIRCUIT.addPart(new Switch1x2(RST(1, 1)));
|
||||
private static final Switch1x2 switcher1 = CIRCUIT.addPart(new Switch1x2(CIRCUIT, RST(1, 1)));
|
||||
|
||||
private static final Light light = CIRCUIT.addPart(new Light(RST(1, 0)));
|
||||
private static final Light light = CIRCUIT.addPart(new Light(CIRCUIT, RST(1, 0)));
|
||||
|
||||
@BeforeAll
|
||||
public static void setUp() {
|
||||
|
||||
@ -15,15 +15,15 @@ public class BatterySwitcherCrossTest {
|
||||
|
||||
private static final Circuit CIRCUIT = new Circuit();
|
||||
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(RST(0, 0)));
|
||||
private static final Battery battery = CIRCUIT.addPart(new Battery(CIRCUIT, RST(0, 0)));
|
||||
|
||||
private static final Switch1x2 switcher0 = CIRCUIT.addPart(new Switch1x2(RST(0, 1)));
|
||||
private static final Switch1x2 switcher0 = CIRCUIT.addPart(new Switch1x2(CIRCUIT, RST(0, 1)));
|
||||
|
||||
private static final SwitchCross switcherX = CIRCUIT.addPart(new SwitchCross(RST(1, 1)));
|
||||
private static final SwitchCross switcherX = CIRCUIT.addPart(new SwitchCross(CIRCUIT, RST(1, 1)));
|
||||
|
||||
private static final Switch1x2 switcher1 = CIRCUIT.addPart(new Switch1x2(RST(2, 1)));
|
||||
private static final Switch1x2 switcher1 = CIRCUIT.addPart(new Switch1x2(CIRCUIT, RST(2, 1)));
|
||||
|
||||
private static final Light light = CIRCUIT.addPart(new Light(RST(2, 0)));
|
||||
private static final Light light = CIRCUIT.addPart(new Light(CIRCUIT, RST(2, 0)));
|
||||
|
||||
@BeforeAll
|
||||
public static void setUp() {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user