+
+ double height = inputs.length * 10;
+ if(height < 10)
+ height = 10;
+ this.height = height;
+
+ List<WireArray> connectedWireArraysModifiable = new ArrayList<>();
+ List<Point> wireArrayConnectionPointsModifiable = new ArrayList<>();
+
+ connectedWireArraysModifiable.add(out);
+ wireArrayConnectionPointsModifiable.add(new Point(20, 10 + height / 2));
+
+ connectedWireArraysModifiable.add(select);
+ wireArrayConnectionPointsModifiable.add(new Point(10, 5));
+
+ {
+ connectedWireArraysModifiable.addAll(Arrays.asList(inputs));
+ double inputHeightIncrement = height / (inputs.length - 1);
+ double inputHeight = 10;
+ for(int i = 0; i < inputs.length; i ++, inputHeight += inputHeightIncrement)
+ wireArrayConnectionPointsModifiable.add(new Point(0, inputHeight));
+ }
+
+ this.connectedWireArrays = Collections.unmodifiableList(connectedWireArraysModifiable);
+ this.wireArrayConnectionPoints = Collections.unmodifiableList(wireArrayConnectionPointsModifiable);