Browser-based collaborative development of a 3D model
First Claim
1. A tangible non-transitory computer-readable medium storing instructions for collaborative three-dimensional (3D) modeling in a browser application that executes on one or more processors of a first computing device, the instructions comprising:
- a browser interface module that executes on the one or more processors to receive user commands from the browser application for modifying a 3D model and cause a rendering of the 3D model to be displayed in a window controlled by the browser application, wherein the 3D model includes model data having a plurality of components, each component having a plurality of elements;
a modeling engine module that executes on the one or more processors to interpret model data corresponding to the 3D model to generate the rendering of the 3D model, and modify the model data in accordance with the received user commands; and
a collaboration module that executes on the one or more processors to cause the modified 3D model to be synchronized in real time between the first computing device and a second computing device at which the 3D model is being concurrently developed, wherein to cause the modified 3D model to be synchronized between the first computing device and the second computing device, the collaboration module generates a serialized representation of a model component including an ordered listing of elements included in the model component, generates a description of a modification specified relative to the elements included in the model component, and provides the description of the modification to the browser interface module, andwherein the first computing device and the second computing device operate independently of each other on a communication network.
4 Assignments
0 Petitions
Accused Products
Abstract
A system for collaborative three-dimensional (3D) modeling in a browser application is stored as instructions on a computer-readable medium. The instructions include a browser interface module that executes on the one or more processors to receive user commands from the browser application for modifying a 3D model and cause a rendering of the 3D model to be displayed in a window controlled by the browser application. The instructions further include a modeling engine module that executes on the one or more processors to interpret model data corresponding to the 3D model to generate the rendering of the 3D model, and modify the model data in accordance with the received user commands. Still further, the instructions include a collaboration module that executes on the one or more processors to cause the modified 3D model to be synchronized in real time.
-
Citations
21 Claims
-
1. A tangible non-transitory computer-readable medium storing instructions for collaborative three-dimensional (3D) modeling in a browser application that executes on one or more processors of a first computing device, the instructions comprising:
-
a browser interface module that executes on the one or more processors to receive user commands from the browser application for modifying a 3D model and cause a rendering of the 3D model to be displayed in a window controlled by the browser application, wherein the 3D model includes model data having a plurality of components, each component having a plurality of elements; a modeling engine module that executes on the one or more processors to interpret model data corresponding to the 3D model to generate the rendering of the 3D model, and modify the model data in accordance with the received user commands; and a collaboration module that executes on the one or more processors to cause the modified 3D model to be synchronized in real time between the first computing device and a second computing device at which the 3D model is being concurrently developed, wherein to cause the modified 3D model to be synchronized between the first computing device and the second computing device, the collaboration module generates a serialized representation of a model component including an ordered listing of elements included in the model component, generates a description of a modification specified relative to the elements included in the model component, and provides the description of the modification to the browser interface module, and wherein the first computing device and the second computing device operate independently of each other on a communication network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computing device for collaborative development of 3D models, the computing device comprising:
-
a network interface coupled to a communication network; one or more processors; a memory coupled to the one or more processors; a display device coupled to the one or more processors; a browser application stored in the memory that executes on the one or more processors to retrieve content from remote hosts via the communications network interface and render the retrieved content on the display device; and a 3D modeling software module stored in the memory that executes on the one or more processors, the 3D modeling software module including; a browser interface module configured to receive user commands from the browser application for modifying a 3D model and cause a rendering of the 3D model to be displayed in a window controlled by the browser application, wherein the 3D model includes model data having a plurality of components, each component having a plurality of elements; a modeling engine module configured to modify model data corresponding to the 3D model in accordance with the received user commands, wherein the model data is stored in the memory in a non-image format; and a collaboration module configured to generate an indication of the modified model data to be transmitted via the communication network to cause the modified 3D model to be synchronized in real time with another computing device at which the 3D model is being concurrently developed, wherein to cause the modified 3D model to be synchronized with the another computing device, the collaboration module generates a serialized representation of a model component including an ordered listing of elements included in the model component, generates a description of a modification specified relative to the elements included in the model component, and provides the description of the modification to the browser interface module. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A method for browser-based collaborative development of a 3D model in a computing device operating on a communication network and having a memory and one or more processors, wherein model data corresponding to the 3D model is stored in a non-image format in the memory, and wherein the 3D model includes a plurality of components, each component having a plurality of elements, the method comprising:
-
receiving, via a user interface of a browser application, a user command for modifying model data corresponding to at least one component of a 3D model; modifying the model data in accordance with the user command, including modifying respective portions of the model data to change one or more of dimensionality, positioning, and color of at least one of the plurality of elements; automatically generating a serialized representation of the at least one component, wherein the serialized representation of the at least one component includes an ordered listing of elements included in the at least one component; automatically generating a description of the modification specified relative to the ordered listing of elements included in the at least one component of the model data; and automatically causing the description of the modification of the model data to be transmitted via the browser application in an electronic message to another device operating on the communication network, including not receiving a user command to transmit the description of the modification from the user interface; whereby the 3D model is synchronized between the computing device and at least one other device at which the 3D model is being concurrently developed. - View Dependent Claims (18, 19, 20, 21)
-
Specification