COLLABORATION PLATFORM
First Claim
1. A system for collaborating among computers, comprising:
- a server computer coupled via a communications network to one or more client computers, wherein;
the server computer and the client computers each maintain a copy of a model comprised of a graphical design, wherein the graphical design is composed of two-dimensional (2D) and/or three-dimensional (3D) objects;
the server computer and the client computers each maintain a history of changes made to the model, wherein the history is comprised of one or more deltas containing only results of operations making modifications to the objects, but not the operations themselves;
at least one of the client computers transmits only the deltas to the server computer to update the copy of the model maintained by the server computer, in order to reflect changes made to the copy of the model maintained by the at least one of the client computers; and
the server computer accepts or rejects the transmitted deltas, updates the copy of the model and the history maintained by the server computer using only the accepted deltas, but not by replaying the operations making modifications to the objects, and then transmits only the accepted deltas to one or more others of the client computers to update the copy of the model maintained by the one or more others of the client computers, in order to reflect changes made to the copy of the model maintained by the server computer.
1 Assignment
0 Petitions
Accused Products
Abstract
One or more embodiments of the invention provide a collaboration platform that permits multiple users to collaborate on multiple copies of a model simultaneously. The collaboration application provides a full set of two-dimensional (2D) and three-dimensional (3D) tools for a client to manipulate a model and transmit the results of such manipulations to a server. Both the clients and the server maintain a history of the manipulations results. Once object changes are received by the server from one or more clients, the server distributes the object changes to the remaining clients. Thereafter, the clients modify their local version of the model in accordance with the object changes received from the server. The history maintained by the clients or the server may then be used to undo or redo any of the object changes, or to rebuild a model space in the event of a network failure.
-
Citations
22 Claims
-
1. A system for collaborating among computers, comprising:
-
a server computer coupled via a communications network to one or more client computers, wherein; the server computer and the client computers each maintain a copy of a model comprised of a graphical design, wherein the graphical design is composed of two-dimensional (2D) and/or three-dimensional (3D) objects; the server computer and the client computers each maintain a history of changes made to the model, wherein the history is comprised of one or more deltas containing only results of operations making modifications to the objects, but not the operations themselves; at least one of the client computers transmits only the deltas to the server computer to update the copy of the model maintained by the server computer, in order to reflect changes made to the copy of the model maintained by the at least one of the client computers; and the server computer accepts or rejects the transmitted deltas, updates the copy of the model and the history maintained by the server computer using only the accepted deltas, but not by replaying the operations making modifications to the objects, and then transmits only the accepted deltas to one or more others of the client computers to update the copy of the model maintained by the one or more others of the client computers, in order to reflect changes made to the copy of the model maintained by the server computer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A method for collaborating among computers, comprising:
-
coupling one or more client computers to a server computer via a communications network, wherein; the client computers and the server computer each maintain a copy of a model comprised of a graphical design, wherein the graphical design is composed of two-dimensional (2D) and/or three-dimensional (3D) objects; the client computers and the server computer each maintain a history of changes made to the model, wherein the history is comprised of one or more deltas containing only results of operations making modifications to the objects, but not the operations themselves; at least one of the client computers transmits only the deltas to the server computer to update the copy of the model maintained by the server computer, in order to reflect changes made to the copy of the model maintained by the at least one of the client computers; and the server computer accepts or rejects the transmitted deltas, updates the copy of the model and the history maintained by the server computer using only the accepted deltas, but not by replaying the operations making modifications to the objects, and then transmits only the accepted deltas to one or more others of the client computers to update the copy of the model maintained by the one or more others of the client computers, in order to reflect changes made to the copy of the model maintained by the server computer.
-
-
22. An article of manufacture comprising a program storage medium readable by a computer and tangibly embodying one or more instructions executable by the computer to perform a method for collaborating among computers, the method comprising:
-
coupling one or more client computers to a server computer via a communications network, wherein; the client computers and the server computer each maintain a copy of a model comprised of a graphical design, wherein the graphical design is composed of two-dimensional (2D) and/or three-dimensional (3D) objects; the client computers and the server computer each maintain a history of changes made to the model, wherein the history is comprised of one or more deltas containing only results of operations making modifications to the objects, but not the operations themselves; at least one of the client computers transmits only the deltas to the server computer to update the copy of the model maintained by the server computer, in order to reflect changes made to the copy of the model maintained by the at least one of the client computers; and the server computer accepts or rejects the transmitted deltas, updates the copy of the model and the history maintained by the server computer using only the accepted deltas, but not by replaying the operations making modifications to the objects, and then transmits only the accepted deltas to one or more others of the client computers to update the copy of the model maintained by the one or more others of the client computers, in order to reflect changes made to the copy of the model maintained by the server computer.
-
Specification