Web-Based Client-Server Geometric Design Data Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computer-aided design systems face challenges in efficiently managing and updating designs across client-server interactions, particularly in minimizing client demands and ensuring effective representation of design elements and nodes within user interfaces.
Innovation Solution
A method involving sending commands from a server to a client for creating or modifying design elements, updating data structures, and rendering raster or vector graphics data to enable user interface representation, with the client requesting and processing data to interactively modify designs while the server handles data storage and processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If design data is stored and processed on the client side, then design elements can be represented in the user interface, but client resource demands and computational load increase
Solution Approach 1:
The patent extracts the heavy computational processing and data storage functions from the client side and relocates them to the server side. The client only receives and displays rendered design elements, while the server handles data structure updates, rendering operations, and command processing. This extraction resolves the contradiction by maintaining user interface representation capability while eliminating the associated computational burden from the client.
Solution Approach 2:
The patent introduces a server as an intermediary between the design data source and the client user interface. The server acts as a mediator that receives design commands, updates data structures, performs rendering operations, and sends back only the necessary representation data to the client. This intermediary architecture allows the client to display design elements without bearing the computational load of processing and rendering operations.
2Reliability
If multiple design elements and nodes are managed through client-server interactions, then design collaboration and security are improved, but communication overhead and data synchronization complexity increase
Solution Approach 1:
The patent implements a feedback mechanism where the server sends commands to the client and receives acknowledgments or additional commands in return. The server maintains the authoritative data structure and sends updated design element data back to the client after processing commands. This feedback loop ensures data consistency and security while managing the complexity of synchronization through a centralized control approach.
Solution Approach 2:
The patent extracts the complexity of data synchronization and security management from the client-side architecture and consolidates it on the server side. By centralizing data structure management, rendering operations, and command validation on the server, the system improves security and reliability while reducing the synchronization complexity that would otherwise be distributed across multiple clients.
3Speed
If design commands are processed locally on the client, then processing speed is improved, but design security and centralized control are compromised
Solution Approach 1:
The patent applies preliminary action by having the server pre-process and validate design commands before sending them to the client for execution. The server updates the data structure, performs rendering operations, and prepares the design element data in advance. This preliminary processing on the server ensures security and centralized control while maintaining efficient execution, as the client only needs to display pre-validated and pre-rendered data rather than performing complex processing operations.
Data Source
AI summary
A method comprises: sending, to a client, data specifying a plurality of commands for use in producing a design; receiving, from the client, one of the plurality of commands, wherein the received command is for creating or modifying a new or existing element of the design, respectively; updating a data structure associated with the design in accordance with the command, wherein the update comprises adding or modifying data associated with the new or existing element, respectively; and sending, to the client, data for enabling the new or modified element to be represented via a user interface.


