3D Modeling Graph Strong Component Traversal

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer-aided design (CAD) systems face challenges in efficiently integrating procedural and live relationships, leading to unpredictable and unstable behavior when modifying complex geometries, as existing algorithms fail to provide generic and acceptable solutions for cyclic data flows.

Innovation Solution

A computer-implemented method is introduced that represents 3D modeled objects using a modeling graph with unidirectional procedural and bidirectional live relationships, allowing for the determination of a strong graph and updating the object through a traversal of this graph, ensuring predictable and robust updates by alternating procedural evaluations and live solving.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If existing algorithms are used to integrate procedural and live relationships in CAD systems, then the design process can proceed with standard tools, but the system produces unpredictable and unstable behavior when modifying complex geometries

Engineering Contradiction:
Improvepredictability of updatesVSAvoidcomplexity of relationship integration
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the modeling graph into multiple strongly connected components (SCCs). Each SCC is processed independently through sequential evaluation, breaking down the complex integration of procedural and live relationships into manageable, isolated units. This segmentation eliminates unpredictable behavior by ensuring that updates propagate in a controlled, deterministic sequence through the graph structure.

Inventive Principle:
Principle #1Segmentation

2Productivity

If procedural relationships are used to define complex geometries efficiently, then design speed is improved, but modifying the geometry becomes unstable when cyclic data flows are involved

Engineering Contradiction:
Improvedesign speedVSAvoidstability of geometry modification
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The patent performs preliminary topological analysis to identify strongly connected components in the modeling graph before processing modifications. By pre-establishing the evaluation sequence based on the graph structure, the system determines the correct propagation order of updates in advance. This preliminary action ensures that when procedural relationships are modified, the changes propagate stably through the geometry without causing instability from cyclic data flows.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If live relationships are integrated with procedural relationships, then the system becomes more versatile, but existing solvers cannot handle the cyclic data flows resulting from this integration

Engineering Contradiction:
Improveintegration capabilityVSAvoiddata flow structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces the strongly connected component structure as an intermediary layer between procedural and live relationships. This intermediary organization allows the system to maintain both types of relationships while providing a clear evaluation sequence. The SCC structure acts as a mediator that resolves the conflict between versatility (integrating both relationship types) and solver compatibility (handling cyclic data flows), as existing solvers can process each SCC independently in sequence.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10534893B2Execution of sequential update
Publication Date: 2020.01.14 DASSAULT SYSTEMES SA
  • US10534893B2 patent drawing
  • US10534893B2 patent drawing
  • US10534893B2 patent drawing

AI summary

A computer-implemented method for designing a three-dimensional modeled object. The method comprises providing a modeling graph having nodes that represent geometrical objects and arcs that each represent a relationship linking the two geometrical objects represented by the incident nodes of the arc, wherein procedural relationships are represented by unidirectional arcs having the same orientation as the procedural relationships, and wherein the relationships linking the geometrical objects further include live relationships that are represented by bidirectional arcs. The method also comprises upon a modification of the data defining the 3D modeled object, determining a strong graph, wherein the strong graph is the graph of strong components of the modeling graph, and updating the 3D modeled object according to a traversal of the strong graph.