The signal toolbox enables complicated signal routing.
For example, signal sources can be connected to any number of different input ports. Similarly, signal sinks and some arithmetic components allow for unlimited different source inputs. This quickly leads to signal wires being overlaid and a great loss of information in the GUI about the actual signal path.
The GUI has a feature that enables the movement of the signal wires after connection - but only in some cases of icon placement or port input angle. The rules are not clear to the user and are not so intuitive. As we are able to modify the wire placement in some cases more often than not many wires are left overlaid as they approach the component.
An immediate solution is proposed in two new signal components.
*Signal1in3out maps one input port to three outputs
Whilst trivial from a signal processing viewpoint they enable much greater flexibility in the signal path layout and can greatly enhance clarity.
The first screenshot whilst appearing clear has many overlaid wires. The actual signal path is not easily determined.
Employing the proposed signal splitter we can reduce the incidence of overlaid paths and clearly demark where the signal is split. I.e. where one output is mapped to more than one input.
The 1in1out component forces the wires to take a new path at right angles and we can again improve clarity by moving its position.
In summary, we can now combine complex signal routing with clearly laid out signal paths.
I like the idea. A long time ago I was thinking about making it possible to add connections directly from existing connectors, similar to e.g. Simulink, but that turned out to be too complicated.
Some comments:
Is the 1in1out component really needed? Can't the 1in3out version be used?
There is a misspelling in "SIGNAL1IN3OUT__HPP_INCLUDED" (an extra underscore on line 34)
We don't need to check if the input is connected. It will automatically be converted to a parameter if not connected.
The signal toolbox enables complicated signal routing.
For example, signal sources can be connected to any number of different input ports. Similarly, signal sinks and some arithmetic components allow for unlimited different source inputs. This quickly leads to signal wires being overlaid and a great loss of information in the GUI about the actual signal path.
The GUI has a feature that enables the movement of the signal wires after connection - but only in some cases of icon placement or port input angle. The rules are not clear to the user and are not so intuitive. As we are able to modify the wire placement in some cases more often than not many wires are left overlaid as they approach the component.
An immediate solution is proposed in two new signal components.
*Signal1in3out maps one input port to three outputs
*Signal1in1out maps one input to one output.
SignalSplitters.zip
Whilst trivial from a signal processing viewpoint they enable much greater flexibility in the signal path layout and can greatly enhance clarity.
The first screenshot whilst appearing clear has many overlaid wires. The actual signal path is not easily determined.
Employing the proposed signal splitter we can reduce the incidence of overlaid paths and clearly demark where the signal is split. I.e. where one output is mapped to more than one input.
The 1in1out component forces the wires to take a new path at right angles and we can again improve clarity by moving its position.
In summary, we can now combine complex signal routing with clearly laid out signal paths.
SignalSplitters.zip