System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本说明书涉及数据同步,尤其涉及一种云cad的数据同步方法、设备及介质。
技术介绍
1、在cad产品研发和制造过程中,对于传统cad软件,多用户通过直接在原始三维模型或相关文档上添加批注来进行协作,并由一人负责汇总和更新这些信息,汇总人员需要手动收集、整理这些信息,并逐一更新到原始模型中。在这个过程中,很容易出现信息遗漏或错误,而且沟通成本极高,一旦某个环节出现问题,就需要花费大量时间进行排查和修正。
2、为解决传统cad软件的缺点,当前的云cad引入了实时协同设计,其支持多用户同时在线对同一个三维模型或文档进行操作,无需像传统cad那样一人汇总更新,极大提高了协作效率。但是当前的云cad在建模过程中模型数据存储在唯一建模服务进程中,此时由于数据集中存储在一个建模服务进程中,可能会出现数据访问冲突和覆盖,从而导致用户修改的数据丢失。并且当涉及到top-down设计时由于各建模服务间数据隔离,模型间数据不能及时同步。
技术实现思路
1、为了解决上述技术问题,本说明书一个或多个实施例提供了一种云cad的数据同步方法、设备及介质。
2、本说明书一个或多个实施例采用下述技术方案:
3、本说明书一个或多个实施例提供一种云cad的数据同步方法,方法包括:
4、基于浏览器端上传的当前top-down编辑信息,获取当前建模操作所对应的模型数据文档,以确定是否具有与所述模型数据文档相对应的建模服务;
5、若具有与所述模型数据文档相对应的建模服
6、若不具有与所述模型数据文档相对应的建模服务,则基于所述top-down编辑信息确定所述模型数据文档所对应的当前装配数据文档,以创建其建模服务的副本作为所述模型数据文档相对应的建模服务;
7、基于所述相对应的建模服务执行所述当前建模操作,获得与所述当前建模操作相对应的增量数据;
8、获取所述浏览器端的top-down编辑状态,以根据所述top-down编辑状态将所述增量数据基于对应的推送策略进行数据同步。
9、可选地,在本说明书一个或多个实施例中,基于浏览器端上传的当前top-down编辑信息,获取当前建模操作所对应的模型数据文档,以确定是否具有与所述模型数据文档相对应的建模服务,具体包括:
10、决策服务器接收各浏览器端的连接指令,以根据所述连接指令与所述当前装配数据文档的所对应的连接条件,将所述浏览器端连接到所述当前装配数据文档;
11、将所述浏览器端与所述当前装配数据文档的连接信息进行记录,并为所述浏览器端分配唯一的初始建模服务;
12、将所述当前装配数据文档所对应的各级模型数据文档,加载到所述初始建模服务;
13、通过解析所述当前top-down编辑信息,获取所述初始建模服务内与所述当前建模操作相对应的模型数据文档;
14、通过解析决策服务器的资源情况,获得为各浏览器端分配的建模服务;
15、以查询为各浏览器端分配的建模服务中,是否具有与所述模型数据文档相对应的建模服务。
16、可选地,在本说明书一个或多个实施例中,根据相对应的建模服务的并发冲突所对应的操作流程,控制所述当前建模操作的启动,并复用所述相对应的建模服务,具体包括:
17、根据所述建模服务所对应的连接信息,确定所述相对应的建模服务所对应的多个浏览器端;
18、根据所述建模服务所对应的多个浏览器端是否存在建模操作,确定所述相对应的建模服务是否存在加锁标识;
19、若存在所述加锁标识,则确定所述相对应的建模服务存在并发冲突,将所述当前建模操作指令加入所述相对应的建模服务所对应的等待队列;
20、依次执行所述等待队列内的建模操作,以启动所述当前建模操作,并复用所述相对应的建模服务。
21、可选地,在本说明书一个或多个实施例中,基于所述相对应的建模服务执行所述建模操作,获得与所述建模操作相对应的增量数据之前,所述方法还包括:
22、记录所述当前装配数据文档的建模服务与所述模型数据文档相对应的建模服务之间的地址映射;
23、以根据所述地址映射,确定所述当前装配数据文档的建模服务与所述模型数据文档的服务上下文路径;
24、基于所述服务上下文路径,建立服务间通信记录。
25、可选地,在本说明书一个或多个实施例中,基于所述相对应的建模服务执行所述当前建模操作,获得与所述当前建模操作相对应的增量数据,具体包括:
26、基于所述模型数据文档确定与所述建模操作相对应的原始场景数据,并通过相对应的建模服务执行所述当前建模操作,获得与所述建模操作相对应的当前场景数据;
27、对比所述原始场景数据与所述当前场景数据,以确定所述当前建模操作所对应的增量数据;
28、其中,确定所述当前建模操作所对应的增量数据之后,所述方法还包括:
29、将所述模型数据文档所对应的第一数据版本信息,与所述增量数据的第二数据版本信息作为版本验证信息。
30、可选地,在本说明书一个或多个实施例中,对比所述原始场景数据与所述当前场景数据,以确定所述当前建模操作所对应的增量数据之后,所述方法还包括:
31、根据所述增量数据的属性信息与变化类型,对所述增量数据进行分类,获得结构增量数据与非结构增量数据;其中,所述属性信息包括:实体、元素、视图,所述变化类型包括:增加类型、删除类型与更改类型;
32、确定所述结构增量数据所对应的变更对象,以根据所述变更对象所对应的几何规则对所述结构增量数据进行过滤,获得过滤后的结构增量数据;
33、确定过滤后的结构增量数据的连通关系与邻接关系,并根据所述连通关系与所述邻接关系对过滤后的结构增量数据进行筛选,获得第一增量数据;
34、提取与所述第一增量数据相关的非结构增量数据,获得第二增量数据,并基于所述模型数据文档所对应的渲染条件对所述非结构增量数据进行筛选,以对所述第二增量数据进行补全;
35、汇总所述第一增量数据与补全后的第二增量数据确定与所述当前建模操作相对应的有效增量数据。
36、可选地,在本说明书一个或多个实施例中,获取所述浏览器端的top-down编辑状态,以根据所述top-down编辑状态将所述增量数据基于对应的推送策略进行数据同步,具体包括:
37、获取所述浏览器端的top-down编辑状态;其中,所述top-down编辑状态包括:使用状态与退出状态;
38、当所述浏览器端的top-down编辑状态为使用状态时,将所述增量数据根据所述相对应的建模服务所对应的通信记录,推送给链路中的其他建模服务,并根据所述建模服务与所述其他建模服务所对应的用户连接记录,对所述增量数据进行推送;
...【技术保护点】
1.一种云CAD的数据同步方法,其特征在于,所述方法包括:
2.根据权利要求1所述的一种云CAD的数据同步方法,其特征在于,基于浏览器端上传的当前Top-Down编辑信息,获取当前建模操作所对应的模型数据文档,以确定是否具有与所述模型数据文档相对应的建模服务,具体包括:
3.根据权利要求1所述的一种云CAD的数据同步方法,其特征在于,根据相对应的建模服务的并发冲突所对应的操作流程,控制所述当前建模操作的启动,并复用所述相对应的建模服务,具体包括:
4.根据权利要求1所述的一种云CAD的数据同步方法,其特征在于,基于所述相对应的建模服务执行所述建模操作,获得与所述建模操作相对应的增量数据之前,所述方法还包括:
5.根据权利要求1所述的一种云CAD的数据同步方法,其特征在于,基于所述相对应的建模服务执行所述当前建模操作,获得与所述当前建模操作相对应的增量数据,具体包括:
6.根据权利要求5所述的一种云CAD的数据同步方法,其特征在于,对比所述原始场景数据与所述当前场景数据,以确定所述当前建模操作所对应的增量数据之后,所述方法
7.根据权利要求3所述的一种云CAD的数据同步方法,其特征在于,获取所述浏览器端的Top-Down编辑状态,以根据所述Top-Down编辑状态将所述增量数据基于对应的推送策略进行数据同步,具体包括:
8.根据权利要求5所述的一种云CAD的数据同步方法,其特征在于,对所述增量数据进行推送之后,所述方法还包括:
9.一种云CAD的数据同步设备,其特征在于,所述设备包括:
10.一种非易失性存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令能够执行上述权利要求1-8任一所述的方法。
...【技术特征摘要】
1.一种云cad的数据同步方法,其特征在于,所述方法包括:
2.根据权利要求1所述的一种云cad的数据同步方法,其特征在于,基于浏览器端上传的当前top-down编辑信息,获取当前建模操作所对应的模型数据文档,以确定是否具有与所述模型数据文档相对应的建模服务,具体包括:
3.根据权利要求1所述的一种云cad的数据同步方法,其特征在于,根据相对应的建模服务的并发冲突所对应的操作流程,控制所述当前建模操作的启动,并复用所述相对应的建模服务,具体包括:
4.根据权利要求1所述的一种云cad的数据同步方法,其特征在于,基于所述相对应的建模服务执行所述建模操作,获得与所述建模操作相对应的增量数据之前,所述方法还包括:
5.根据权利要求1所述的一种云cad的数据同步方法,其特征在于,基于所述相对应的建模服务执行所述当前建模操作,...
【专利技术属性】
技术研发人员:梅敬成,苏新新,杨亚伦,刘敏,耿夏,董月,
申请(专利权)人:山东华云三维科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。