Dynamic Edge Routing via Candidate Connection Regions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software applications for designing diagrams and charts lack flexibility in managing node and edge positioning, as changes to one node can inadvertently affect other nodes' edge paths, leading to suboptimal visual representations.

Innovation Solution

A computer system identifies candidate connection regions for nodes with constraints, allowing dynamic repositioning and rerouting of edges based on factors like edge crossings, shortest path, and bends to optimize aesthetic appeal and functionality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Shape

If a user moves a node in a node-link diagram, then the position of that node is improved, but the edge paths connecting to other nodes become suboptimal and may cross unnecessarily

Engineering Contradiction:
Improvenode positionVSAvoidedge routing quality
Core Design Contradiction:
ShapeVSEase of operation

Solution Approach 1:

The system dynamically adjusts edge routing based on node movements. When a node is repositioned, the system automatically recalculates and reroutes edges to maintain optimal paths, transforming the static edge configuration into a dynamic system that adapts to node position changes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs self-adjustment by automatically rerouting edges when nodes are moved. The edge routing system monitors node positions and autonomously optimizes edge paths without requiring manual intervention, allowing the diagram to self-correct and maintain aesthetic quality.

Inventive Principle:
Principle #25Self-service

2Ease of operation

If the system automatically reroutes edges when nodes are moved, then edge routing quality is improved, but the system complexity increases

Engineering Contradiction:
Improveedge routing qualityVSAvoidsystem complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system implements self-service by automatically detecting node movements and triggering edge rerouting operations. This autonomous behavior eliminates the need for complex manual control mechanisms, allowing the system to maintain high edge routing quality through automated responses to user actions.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system employs feedback mechanisms where edge routing is continuously monitored and adjusted based on current node positions. When nodes are moved, the system receives feedback about the new configuration and automatically adjusts edge paths to optimize the overall diagram layout.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If multiple candidate connection regions are provided for nodes, then edge routing flexibility is improved, but the visual representation becomes more complex

Engineering Contradiction:
Improveedge routing flexibilityVSAvoidvisual representation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments the connection points on nodes into multiple discrete candidate connection regions. Instead of allowing edges to connect at any arbitrary point, the system divides the node perimeter into specific segments or regions where connections can be established, providing structured flexibility while maintaining visual clarity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different regions of a node are assigned different connection characteristics. The system applies local quality by designating specific areas of nodes as candidate connection regions, where each region may have different routing properties or preferences, allowing optimized edge routing while maintaining simple visual representation through selective highlighting or indication of these regions.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8365129B2Edge routing using connection regions
Publication Date: 2013.01.29 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8365129B2 patent drawing
  • US8365129B2 patent drawing
  • US8365129B2 patent drawing

AI summary

A computer system identifies a source node that is to be connected to a target node, where the target node is connected to the source node using an edge that links a connection region associated with the source node to a candidate connection region of the target node. The computer system identifies candidate connection region constraints that place restrictions on where the candidate connection regions can be positioned on the target node and determines, based on the identified candidate connection region constraints, the position of each candidate connection region relative to the target node. At least two of the candidate connection regions are disconnected so that an edge's connection to the target node can change between the disconnected connection regions. The computer system also visually represents the position of each of the candidate connection regions of the target node.