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