CN109241571B - CRDT-based real-time collaborative editing method for CAD model supporting features - Google Patents
CRDT-based real-time collaborative editing method for CAD model supporting features Download PDFInfo
- Publication number
- CN109241571B CN109241571B CN201810890392.1A CN201810890392A CN109241571B CN 109241571 B CN109241571 B CN 109241571B CN 201810890392 A CN201810890392 A CN 201810890392A CN 109241571 B CN109241571 B CN 109241571B
- Authority
- CN
- China
- Prior art keywords
- operations
- key
- modeling
- linked list
- empty
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention provides a real-time collaborative editing method of a support feature CAD model based on CRDT, which links newly inserted modeling operation to double chained list according to the whole sequence in the local operation processing and remote operation processing processes; the invention can support multi-user real-time collaborative editing of the shared CAD model in a large-scale peer-to-peer network environment; the invention can ensure the consistency of the CAD model of multi-user collaborative editing and the consistency of the CAD modeling history; the invention can provide good user interactivity.
Description
Technical Field
The invention belongs to the technical field of information, relates to a computer-supported cooperative working method, and particularly relates to a real-time cooperative editing method for supporting a feature CAD model based on CRDT.
Background
Real-time collaborative CAD systems are an important application area in computer-supported collaborative work. Real-time collaborative CAD systems differ from traditional distributed systems by allowing designers in different geographic locations to edit the same CAD model at the same time, with each collaborative site storing a copy of the shared CAD model. Maintaining consistency of a shared CAD model presents challenges because multiple users can edit copies of the shared CAD model simultaneously.
The exchangeable Replicated Data Type (CRDT) method is an emerging consistency maintenance method in recent years. The main idea is that the consistency of operation intents can be maintained and the result of consistency can be converged by assigning unique global ID to the operation object and mapping the operation object into an internal data structure in a full order. Compared with the traditional consistency maintenance method, the CRDT method has higher calculation efficiency and better operation responsiveness. However, most CRDT methods are used in collaborative text editing systems, and few studies have been made to apply CRDT methods to collaborative CAD systems.
Disclosure of Invention
The invention aims to provide a CRDT-based real-time collaborative editing method for a CAD model supporting features, which can not only maintain the consistency of the CAD model, but also realize the consistency of the CAD modeling history; the method can provide good operation responsiveness and is suitable for a large-scale collaborative CAD editing environment.
The technical scheme adopted by the invention is as follows: a real-time collaborative editing method for a CAD model supporting features based on CRDT is characterized in that: each site distributes and manages a feature dependent graph CoFDG, a hash table, a double linked list and an interaction overview in real time; the characteristic dependency graph CoFDG is a tuple (n, p), wherein n is a set of characteristic nodes, and p is a set of pointers for pointing to the characteristic nodes; storing modeling characteristics and dependency relations among the characteristics in the CoFDG; the hash table randomly stores all modeling operations; the double linked list stores all modeling operations in full order; the interaction interface provides an interactive interface of the collaborative designer; assigning a unique identifier ID to each modeling operation;
defining a characteristic dependency ≠ t: given the two characteristic nodes node1 and node2 in the CoFDG, node1 and node2 have a characteristic dependence written as node1 × node2, if and only if: (1) there is a pointer from node1 to node 2; (2) there is node3 in the CoFDG, one pointer from node1 to node3 and one pointer from node3 to node 2; (3) node1 and node2 are the same characteristic node;
defining dependency conflict relationshipsGiven that the two modeling operations MO1 and MO2 are from the same state S, they have a dependency-conflict relationship written asIf and only if: (1) there is a dependency between their target characteristics; (2) s (MO1, MO2) ≠ S (MO2, MO 1);
defining mutually exclusive relationshipsGiven that the two modeling operations MO1 and MO2 are from the same state S, they have mutually exclusive relationshipsMakingIf and only if there is only one operation performed in the S state;
define compatible relationship [: given that two modeling operations MO1 and MO2 come from the same state S, they have a compatible relationship as MO1 |, MO2, if and only if:
defining a complete order relation: given any three operations MO1, MO2, and MO3, if a full-order relationship exists, if and only if: (1)or(2) Exist of Then
Defining a modeling operation MO: MO is a tuple < t, l, t _ key, c _ key, pre _ key, visible, next, prior, link, l _ key, s >; wherein, (1) t is the operation type of MO, including insert operation, delete operation and modify operation; (2) l is a Boolean variable with a value of true or false, wherein the value of true represents local operation, and the value of false represents remote operation; (3) t _ key is an identifier of the target modeling operation; (4) c _ key is the unique identifier of MO; (5) pre _ key is the unique identifier of the previous operation, used for integrating the local operation; (6) the visibility is the visibility of the MO, and when the MO is an unreasonable operation, the visibility is 0, otherwise, the visibility is 1; (7) next is a pointer pointing to the modeling operation of the next link in the double linked list; (8) the prior is a pointer and points to the modeling operation of the previous link in the double linked list; (9) link is a pointer for modeling operation in the link hash table; (10) l _ key is the identifier of the dependent sub-operation of the MO; (11) s is the current state of the CAD model when MO is executed;
the method comprises a local operation process and a remote operation process;
the local operation processing comprises the following substeps:
step A1: judging whether the double linked list is empty or not, if so, executing a local operation MO and linking the local operation MO to the back of a head node in the double linked list; if not, go to step A2;
step A2: executing the local operation MO and linking the local operation MO to a tail node of the double linked list;
the remote operation processing comprises the following substeps:
step B1: finding a target modeling operation Tar of the MO through the hash table and the MO.t _ key, and marking the subsequent operation of the Tar as NT (NT is equal to tar.next);
step B2: judging whether Tar is tombstone operation, if yes, MO cannot be executed, meanwhile, MO is also set as tombstone operation and inserted into a corresponding position in a double linked list; if Tar is not a tombstone operation, proceed to step B3;
step B3: judging whether NT is empty, if NT is empty, executing MO and linking MO to the rear of Tar; if NT is not empty, go to step B4;
and step B4: the MO target execution position is found in the double linked list, and then the MO is executed and linked to the back of the target execution position.
The invention has the beneficial effects that: the invention can support collaborative editing based on the characteristic CAD model; the consistency of the result of the CAD model can be achieved, and the consistency of the CAD modeling history can be guaranteed.
Drawings
FIG. 1 is a schematic diagram of the overall framework and control process of an embodiment of the invention;
FIG. 2 is a schematic diagram of a first cooperative working scenario of three sites according to an embodiment of the present invention;
fig. 3 is a schematic diagram of a second cooperative working scenario of three stations according to an embodiment of the present invention.
Detailed Description
In order to facilitate the understanding and implementation of the present invention for those of ordinary skill in the art, the present invention is further described in detail with reference to the accompanying drawings and examples, it is to be understood that the embodiments described herein are merely illustrative and explanatory of the present invention and are not restrictive thereof.
Referring to fig. 1, the real-time collaborative editing method for a support feature CAD model based on CRDT according to the present invention is characterized in that: each site distributes and manages a feature dependent graph CoFDG, a hash table, a double linked list and an interaction overview in real time; the characteristic dependency graph CoFDG is a tuple (n, p), wherein n is a set of characteristic nodes, and p is a set of pointers for pointing to the characteristic nodes; storing modeling characteristics and dependency relations among the characteristics in the CoFDG; the hash table randomly stores all modeling operations; the double linked list stores all modeling operations in full order; the interaction interface provides an interactive interface of the collaborative designer; assigning a unique identifier ID to each modeling operation;
defining a characteristic dependency ≠ t: given the two characteristic nodes node1 and node2 in the CoFDG, node1 and node2 have a characteristic dependence written as node1 × node2, if and only if: (1) there is a pointer from node1 to node 2; (2) there is node3 in the CoFDG, one pointer from node1 to node3 and one pointer from node3 to node 2; (3) node1 and node2 are the same characteristic node;
defining dependency conflict relationshipsGiven that the two modeling operations MO1 and MO2 are from the same state S, they have a dependency-conflict relationship written asIf and only if: (1) there is a dependency between their target characteristics; (2) s (MO1, MO2) ≠ S (MO2, MO 1); (the same result is obtained by executing MO1 and MO2 in S state as executing MO2 and MO1 in S state.)
Defining mutually exclusive relationshipsGiven that the two modeling operations MO1 and MO2 are from the same state S, they have a mutually exclusive relationship denoted asIf and only if there is only one operation performed in the S state;
define compatible relationship [: given that two modeling operations MO1 and MO2 come from the same state S, they have a compatible relationship as MO1 | -MO 2, if and only if: (dependency conflict relationships and mutual exclusion relationships have been defined above, so that a compatible relationship therein indicates that two operations are compatible if neither a dependency conflict relationship nor a mutual exclusion relationship exists)
Defining a complete order relation: given any three operations MO1, MO2, and MO3, if a full-order relationship exists, if and only if: (1)or(2) Exist of Then(Typical is a partial order relationship)
Defining a modeling operation MO: MO is a tuple < t, l, t _ key, c _ key, pre _ key, visible, next, prior, link, l _ key, s >; wherein, (1) t is the operation type of MO, including insert operation, delete operation and modify operation; (2) l is a Boolean variable with a value of true or false, wherein the value of true represents local operation, and the value of false represents remote operation; (3) t _ key is an identifier of the target modeling operation; (4) c _ key is the unique identifier of MO; (5) pre _ key is the unique identifier of the previous operation, used for integrating the local operation; (6) the visibility is the visibility of the MO, and when the MO is an unreasonable operation, the visibility is 0, otherwise, the visibility is 1; (7) next is a pointer, pointing to the modeling operation of the next link in the double linked list; (8) the prior is a pointer and points to the modeling operation of the previous link in the double linked list; (9) link is a pointer for modeling operation in the link hash table; (10) l _ key is an identifier of a dependent sub-operation of the MO; (11) s is the current state of the CAD model when MO is executed;
the method comprises a local operation process and a remote operation process;
the local operation processing comprises the following substeps:
step A1: judging whether the double linked list is empty or not, if so, executing a local operation MO and linking the local operation MO to the back of a head node in the double linked list; if not, go to step A2;
step A2: executing the local operation MO and linking the local operation MO to a tail node of the double linked list;
the specific implementation comprises the following substeps:
step A2.1: if the MO, pre _ key is empty, executing MO and linking the MO to the rear of the tail node by scanning a double linked list until the tail node is found;
step A2.2: and if the MO.pre _ key is not empty, after finding the target node through the hash table and the MO.pre _ key, executing the MO and linking the MO to the back of the target node.
The remote operation processing comprises the following substeps:
step B1: finding a target modeling operation Tar of the MO through the hash table and the MO.t _ key, and marking the subsequent operation of the Tar as NT (NT is equal to tar.next);
step B2: judging whether the Tar is the tombstone operation or not, if so, not executing the MO, setting the MO as the tombstone operation, and inserting the MO into a corresponding position in the double linked list; if Tar is not a tombstone operation, proceed to step B3;
step B3: judging whether NT is empty, if NT is empty, executing MO and linking MO to the rear of Tar; if NT is not empty, go to step B4;
and step B4: finding an MO target execution position in a double linked list, then executing the MO, and linking the MO behind the target execution position;
the specific implementation comprises the following substeps:
step B4.1: if NT is not empty and NT.c _ key < MO.c _ key, go to step B4.2; otherwise, turning to the step B4.3;
step B4.2:
(1) if it is notCalling a conflict function MutualExclusionResolve of the mutual exclusion relationship to solve the mutual exclusion conflict of the NT and the MO, and turning to the step B4.3;
(2) if it is notAnd then divided into two cases: if the target feature of NT depends on the target feature of MO, NT ═ nt.next, go to step B4.1; otherwise, withdraw NT, carry out MO, carry out NT again, before linking MO to NT, turn to step B4.3;
(3) if NT | _ MO, then NT ═ NT. next, go to step B4.1;
step B4.3: if NT is empty, MO is executed and the process goes to step B4.5 before MO is linked to NT; if NT is not empty, go to step B4.4;
step B4.4: judging the conflict relationship between NT and MO, ifCalling a conflict function MutualExclusionResolve of the mutual exclusion relationship to solve the mutual exclusion conflict of the NT and the MO, and turning to the step B4.5; if it is notCalling a dependency conflict resolution function dependencyconflictresve to resolve the dependency conflict between NT and MO, and turning to step B4.5; if NT | _ MO, call compatiblesesolve to resolve the compatibility between NT and MO, go to step B4.5;
step B4.5: and recursively detecting whether the dependent sub-operations of the NT and the MO are reasonable operations or not in sequence, canceling the unreasonable sub-operations, and setting the abnormal sub-operations as tombstone operations.
Reasonable operation: it is sequentially recursively detected whether dependent sub-operations of the NT and MO become non-executable operations due to the execution of the NT and MO (non-executable operations means that these operations cannot be executed because they cannot find the target feature due to the execution of the NT and MO), and if the sub-operations are non-executable operations, they are revoked and set as tombstone operations.
Fig. 2 is a first cooperative work scenario of three sites in a session. Assume that the session count is 1 and the site number size is site1<site2<site 3. Here, the modeling operations that have been performed are connected with "-", where L represents the modeling history,represents the jth state of the ith station,the representative MO is a tombstone. Three sites generate local operations as MO1=create(Cut1),MO2=create(Extrude2);MO3Delete (extreme 1). SV of each operation is SV (MO)1)=(1,0,0),SV(MO2)=(0,1,0),SV(MO3) (0,0, 1). The ID assigned to each operation object is ID MO1=(1,1,1),IDMO2=(1,1,2),IDMO3=(1,1,3)。
The first collaborative work scenario is performed as follows.
At site1, when the MO is executed1,L1=MO1. When receiving MO2,MO2Post-execution linking to MOs1After, L1=MO1-MO2. When receiving MO3,MO3Not allowed to execute, set as tombstone and linked to MO2After that, the air conditioner is started to work,
at site2, when the MO is executed2,L2=MO2. When receiving MO1Withdrawing MO2Execute MO1Then, MO is executed2,L2=MO1-MO2. When receiving MO3,MO3Disallow execution, set to link to MO behind tombstone2After that, the air conditioner is started to work,
at site3, when the MO is executed3,L3=MO3. When receiving MO1Withdrawing MO3Execute MO1,MO3Set as a tombstone and linked to an MO1After that, the air conditioner is started to work,when receiving MO2Execute MO2Mixing MO2Linking to MO1After that, the air conditioner is started to work,
fig. 3 is a second cooperative working scenario of three sites in a session. Assume that the session count is 2 and the site number size is site1<site2<site 3. Three sites generate local operations ofMO4=create(Extrude3),MO5=modify(Extrude2);MO6Create (fillet). SV of each operation is SV (MO)4)=(2,1,1),SV(MO5)=(1,2,1),SV(MO6) (1,1, 2). The ID assigned to each operation object is IDMO4=(2,4,1),IDMO5=(2,4,2),IDMO6=(2,4,3)。
The second collaborative work scenario is performed as follows.
At site1, when the MO is executed4,When receiving MO5,MO5Post-execution linking to MOs4After that, the air conditioner is started to work,when receiving MO36Execute MO6And linked to MO5After that, the air conditioner is started to work,
at site2, when the MO is executed5,When receiving MO4Withdrawing MO5Execute MO4Then, MO is executed5,When receiving MO6Execute MO6And linked to MO5After that, the air conditioner is started to work,
at site3, when the MO is executed6,When receiving MO4Withdrawing MO6Execute MO4Then, MO is executed6,When receiving MO5Withdrawing MO6Execute MO5Execute MO6Mixing MO6Linking to MO5After that, the air conditioner is started to work,
through the two cooperative working scenes, the sites are converged to a consistent CAD model and a modeling history
It should be understood that parts of the specification not set forth in detail are well within the prior art.
It should be understood that the above description of the preferred embodiments is given for clarity and not for any purpose of limitation, and that various changes, substitutions and alterations can be made herein without departing from the spirit and scope of the invention as defined by the appended claims.
Claims (4)
1. A real-time collaborative editing method for a CAD model supporting features based on CRDT is characterized in that: each site distributes and manages a feature dependent graph CoFDG, a hash table, a double linked list and an interaction overview in real time; the characteristic dependency graph CoFDG is a tuple (n, p), wherein n is a set of characteristic nodes, and p is a set of pointers for pointing to the characteristic nodes; storing modeling characteristics and dependency relations among the characteristics in the CoFDG; the hash table randomly stores all modeling operations; the double linked list stores all modeling operations in full order; the interaction interface provides an interactive interface of the collaborative designer; assigning a unique identifier ID to each modeling operation;
defining a characteristic dependency ≠ t: given the two characteristic nodes node1 and node2 in the CoFDG, node1 and node2 have a characteristic dependence written as node1 × node2, if and only if: (1) there is a pointer from node1 to node 2; (2) there is node3 in the CoFDG, one pointer from node1 to node3 and one pointer from node3 to node 2; (3) node1 and node2 are the same characteristic node;
defining dependency conflict relationshipsGiven that the two modeling operations MO1 and MO2 are from the same state S, they have a dependency-conflict relationship written asMO2 if and only if: (1) there is a dependency between their target characteristics; (2) s (MO1, MO2) ≠ S (MO2, MO 1);
defining mutually exclusive relationshipsGiven that the two modeling operations MO1 and MO2 are from the same state S, they have a mutually exclusive relationship denoted asIf and only if there is only one operation performed in the S state;
define compatible relationship [: given that two modeling operations MO1 and MO2 come from the same state S, they have a compatible relationship as MO1 | -MO 2, if and only if: (1)(2)
defining a complete order relation: given any three operations MO1, MO2, and MO3, if a full-order relationship exists, if and only if: (1)or(2) Exist of Then
Defining a modeling operation MO: MO is a tuple < t, l, t _ key, c _ key, pre _ key, visible, next, prior, link, l _ key, s >; wherein, (1) t is the operation type of MO, including insert operation, delete operation and modify operation; (2) l is a Boolean variable with a value of true or false, wherein the value of true represents local operation, and the value of false represents remote operation; (3) t _ key is an identifier of the target modeling operation; (4) c _ key is the unique identifier of MO; (5) pre _ key is the unique identifier of the previous operation, used for integrating the local operation; (6) the visibility is the visibility of the MO, and when the MO is an unreasonable operation, the visibility is 0, otherwise, the visibility is 1; (7) next is a pointer, pointing to the modeling operation of the next link in the double linked list; (8) the prior is a pointer and points to the modeling operation of the previous link in the double linked list; (9) link is a pointer for modeling operation in the link hash table; (10) l _ key is the identifier of the dependent sub-operation of the MO; (11) s is the current state of the CAD model when MO is executed;
the method comprises a local operation process and a remote operation process;
the local operation processing comprises the following substeps:
step A1: judging whether the double linked list is empty or not, if so, executing a local operation MO and linking the local operation MO to the back of a head node in the double linked list; if not, go to step A2;
step A2: executing the local operation MO and linking the local operation MO to a tail node of the double linked list;
the remote operation processing comprises the following substeps:
step B1: finding a target modeling operation Tar of the MO through the hash table and the MO.t _ key, and marking the subsequent operation of the Tar as NT (NT is equal to tar.next);
step B2: judging whether Tar is tombstone operation, if yes, MO cannot be executed, meanwhile, MO is also set as tombstone operation and inserted into a corresponding position in a double linked list; if Tar is not a tombstone operation, proceed to step B3;
step B3: judging whether NT is empty, if NT is empty, executing MO and linking MO to the rear of Tar; if NT is not empty, go to step B4;
and step B4: the MO target execution position is found in the double linked list, and then the MO is executed and linked to the back of the target execution position.
2. The CRDT-based real-time collaborative editing method for feature-supported CAD models according to claim 1, wherein the detailed implementation of step a2 includes the following sub-steps:
step A2.1: if MO, pre _ key is empty, executing MO and linking MO to the back of the tail node by scanning double linked list until the tail node is found;
step A2.2: and if the MO.pre _ key is not empty, after finding the target node through the hash table and the MO.pre _ key, executing the MO and linking the MO to the back of the target node.
3. The CRDT-based real-time collaborative editing method for feature-supported CAD models according to claim 1, wherein the detailed implementation of step B4 comprises the following sub-steps:
step B4.1: if NT is not empty and NT.c _ key < MO.c _ key, go to step B4.2; otherwise, turning to the step B4.3;
step B4.2:
(1) if it is notCalling a conflict function MutualExclusionResolve of the mutual exclusion relationship to solve the mutual exclusion conflict of the NT and the MO, and turning to the step B4.3;
(2) if it is notAnd then divided into two cases: if the target feature of NT depends on the target feature of MO, NT ═ nt.next, go to step B4.1; otherwise, withdraw NT, carry out MO, carry out NT again, before linking MO to NT, turn to step B4.3;
(3) if NT ═ MO, then NT ═ NT. next, go to step B4.1;
step B4.3: if NT is empty, MO is executed and the process goes to step B4.5 before MO is linked to NT; if NT is not empty, go to step B4.4;
step B4.4: judging the conflict relationship between NT and MO, ifCalling a conflict function MutualExclusionResolve of the mutual exclusion relationship to solve the mutual exclusion conflict of the NT and the MO, and turning to the step B4.5; if it is notCalling a dependency conflict resolution function dependencyconflictresve to resolve the dependency conflict between NT and MO, and turning to step B4.5; if NT | _ MO, call compatiblesesolve to resolve the compatibility between NT and MO, go to step B4.5;
step B4.5: and detecting whether the dependent sub-operations of the NT and the MO are reasonable operations or not in sequence recursively, canceling the unreasonable sub-operations, and setting the sub-operations as tombstone operations.
4. The CRDT-based method for collaborative editing in real-time of feature-enabled CAD models according to claim 3, wherein: the rational operation described in step B4.5, in turn, recursively detects whether dependent sub-operations of NT and MO become unexecutable operations due to execution of NT and MO, the unexecutable operations meaning that these operations cannot be executed because the target characteristics cannot be found by the execution of NT and MO, and if the sub-operations are unexecutable, they are revoked and set as tombstone operations.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810890392.1A CN109241571B (en) | 2018-08-07 | 2018-08-07 | CRDT-based real-time collaborative editing method for CAD model supporting features |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810890392.1A CN109241571B (en) | 2018-08-07 | 2018-08-07 | CRDT-based real-time collaborative editing method for CAD model supporting features |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109241571A CN109241571A (en) | 2019-01-18 |
CN109241571B true CN109241571B (en) | 2022-05-13 |
Family
ID=65069980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810890392.1A Active CN109241571B (en) | 2018-08-07 | 2018-08-07 | CRDT-based real-time collaborative editing method for CAD model supporting features |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109241571B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112738234B (en) * | 2020-12-29 | 2022-08-23 | 中国人民解放军海军工程大学 | Lightweight asynchronous mobile collaborative editing method based on CRDT |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101894186A (en) * | 2010-07-02 | 2010-11-24 | 武汉大学 | Operation transformation method based on three-dimensional semantic in cooperative computer-aided design editing system |
CN104142813A (en) * | 2014-08-06 | 2014-11-12 | 武汉大学 | Concurrency control method for replicated collaborative CAD system |
CN105955828A (en) * | 2016-04-18 | 2016-09-21 | 武汉大学 | Real-time cooperative editing consistency maintenance method supporting string operation |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5067131B2 (en) * | 2007-11-07 | 2012-11-07 | 富士通セミコンダクター株式会社 | Semiconductor memory, semiconductor memory operating method and system |
US9648059B2 (en) * | 2013-02-05 | 2017-05-09 | Brigham Young University | System and methods for multi-user CAx editing conflict management |
-
2018
- 2018-08-07 CN CN201810890392.1A patent/CN109241571B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101894186A (en) * | 2010-07-02 | 2010-11-24 | 武汉大学 | Operation transformation method based on three-dimensional semantic in cooperative computer-aided design editing system |
CN104142813A (en) * | 2014-08-06 | 2014-11-12 | 武汉大学 | Concurrency control method for replicated collaborative CAD system |
CN105955828A (en) * | 2016-04-18 | 2016-09-21 | 武汉大学 | Real-time cooperative editing consistency maintenance method supporting string operation |
Non-Patent Citations (2)
Title |
---|
CRDT-based conflict detection and resolution for massive-scale real-time collaborative CAD systems;Xiao Lv等;《Proceedings of the 12th Chinese Conference on Computer Supported Cooperative Work and Social Computing》;20170922;全文 * |
支持操作意图一致性的实时协同编辑算法综述;何发智等;《计算机学报》;20170120;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109241571A (en) | 2019-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9648059B2 (en) | System and methods for multi-user CAx editing conflict management | |
JP2016505930A (en) | System, method, and apparatus for collaborative CAX editing | |
CN102170462B (en) | Remote collaboration method of product design model | |
CN110866320A (en) | Intelligent platform area graph automatic generation method and system | |
US20160098494A1 (en) | Integration of analysis with multi-user cad | |
CN102866944A (en) | Pressure testing system and method | |
CN102984737B (en) | A kind of improve parameter unification collocation method of wireless network and device | |
US10706020B2 (en) | Data sharing in CAx applications | |
CN109241571B (en) | CRDT-based real-time collaborative editing method for CAD model supporting features | |
CN101119365B (en) | Cooperation interaction optimizing method under vast scale cooperative surroundings | |
CN110569615B (en) | Multi-source heterogeneous embedded software collaborative simulation test method | |
CN105955828B (en) | A kind of Real-time co-authoring consistency maintaining method for supporting string operation | |
CN105242958A (en) | Virtual testing system and HLA simulation system data exchange method | |
CN114239237A (en) | Power distribution network simulation scene generation system and method supporting digital twinning | |
CN107391136A (en) | A kind of programing system and method based on streaming | |
Cai et al. | A semi-transparent selective undo algorithm for multi-user collaborative editors | |
CN115934637A (en) | Drawing file management method and device, storage medium and electronic equipment | |
CN112765766B (en) | Dynamic interactive fine-grained discrete event system time sequence advancing method | |
CN111880883B (en) | Dynamic combination primitive realization method based on equipment object | |
CN113568921A (en) | Multi-person cooperative operation method for geographic information data production and update | |
CN113730920B (en) | Method and system for presetting component synchronization attribute | |
US20150271221A1 (en) | Selection triggered collaborative cax editing | |
Nédelec et al. | Concurrency effects over variable-size identifiers in distributed collaborative editing | |
CN112738234B (en) | Lightweight asynchronous mobile collaborative editing method based on CRDT | |
CN116992514B (en) | Three-dimensional CAD collaborative design method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |