Support multiple user-defined connection points on objects
Background
To be a true contender for engineering use (especially electrical engineering), Inkscape must support multiple user-defined connectors on objects. Logic gates (such as AND and OR gates) and transistors have multiple pins, thus requiring multiple connection pins. Other disciplines have similar symbols and requirements.
Microsoft Visio continues to be the industry standard for schematic work. Inkscape would be a contender if it had this feature.
Example Visio drawing with schematic symbols: connectors.vsdx
Details
I can provide more examples upon request.
Visio provides the two tools specific to connectors and connection points:
- The Connector Tool (right-angled lines) is used to create and modify point-to-point connections.
- The Connection Point Tool (blue X) is used to create, modify, remove the connection points themselves.
01_connector_tool.gif
- When the Pointer Tool (arrow) is active, connection points are not shown.
- When the Connector Tool (right-angled lines) is active, connection points are shown when the pointer is near them.
- The Connector Tool allows you to make new connections or change existing connections.
02_connector_overlap.gif
- When two connectors are connected to the same pin, the pin of the selected connector is the one that will be moved when you select and drag.
- Visio automatically puts half-circle overlap "hops" on the horizontal connector when two connectors overlap.
- This "hop" property can be enabled or disabled on a per-object basis.
03_connector_rerouting.gif
- Connectors have span control points, located at the middle of each span, that allow you to adjust the routing.
- When a span control point is moved and one end of the span is constrained (such as connected to a connection point), a new route jog is added. (This is an important behavior to implement.)
- Visio adds and removes (simplifies) the route spans as needed.
- Span adjustment respects any snapping features that are enabled.
04_object_movement.gif
- When objects are moved, Visio tries to preserve the routes of associated connectors as much as possible, to minimize disturbance to previously made route adjustments.
05_modifying_connection_points.gif
- The Connection Point tool allows you to see and modify the connection points on the selected object.
- To select a connection point, click on it; the selected connection point turns red. Multiple connection points can be shift-selected.
- Pressing Del will delete the selected connection point(s).
- To add a new connection point, Ctrl-click where desired. Visio snaps to guides and geometries to help place the point.
- For complex or curved objects, sometimes I draw temporary "helper" lines to snap the connection point to an intersection.
06_connection_points_and_grouping.gif
- The Connection Point tool can apply connection points to groups.
- When a group is ungrouped, its connection points disappear but the connection points on its children remain intact.
07_connection_points_selected_obj.gif
- With the Connection Point tool, Ctrl-click always adds the connection point to the currently selected object (relative to its position).
08_pointer_tool_connectors.gif
- The Pointer Tool (arrow) is not specific to connectors or connection points.
- But as a convenience, the Pointer Tool allows connectors to be reconnected, rerouted, or moved entirely.
- When a connector is moved in its entirety with the Pointer Tool, it tries to connect to existing connection points at the new location.
- Only the Pointer Tool moves a connector in its entirety; the Connector Tool does not.
Inkscape Version and Operating System:
- Inkscape Version: 0.92.4
- Operating System: Windows 10
- Operating System version: 10.0.17763 Build 17763
Edited by Chris Papademetrious