没有合适的资源?快使用搜索试试~ 我知道了~
计算设计与工程杂志,卷。号12(2014)103~115www.jcde.org协同CAD系统袁成1,何发智1,*,徐斌1,韩顺宏2,蔡仙桃1,陈依林11武汉大学计算机科学与技术学院2韩国科学技术高等研究院机械工程系,韩国大田(2013年9月16日接收;2013年10月31日修订;2013年11月1日接受摘要工程设计过程是一个创造性的过程,设计人员必须反复应用Undo/Redo操作来修改CAD模型以探索新的解决方案。Undo/Redo已成为交互式图形和CAD系统中最重要的功能之一。在协同CAD系统中,Undo/Redo也非常有助于一组协同设计者之间的协作意识,以消除误解并从设计错误中恢复然而,在协同CAD系统中的撤销/重做要复杂得多这是因为单个错误操作会传播到其他远程站点,并且操作会在不同站点交叉进行本文提出了一种全分布式协同CAD系统中多用户选择性Undo/Redo方法我们使用站点ID和状态向量来定位每个站点的Undo/Redo目标通过分析复杂CAD模型的组成,提出了一种树形结构的特征组合层次来描述CAD模型的分解在此基础上,明确了特征间的依赖关系在特征组合层次的帮助下,简化了B-Rep重新评估实验结果表明,所提出的Undo/Redo方法满足协同系统的意图保持和一致性维护的关键词:撤消/重做;协同CAD;意图保持;配置管理1. 介绍当第一次探索一个新系统时,用户需要反复执行和取消操作,以完全理解每个功能。“任何具有复杂交互界面的系统都应该提供Undo/Redo支持”的想法是在20世纪80年代后期提出的[1]。事实上,“协同CAD系统是地理上分散的设计人员协同工作的重要平台作为协作系统中的一个重要功能,撤销/重做可以帮助减少错误和消除误解[3- 4]。目前已经提出了几种组撤销/重做模型,其中选择性撤销/重做模型被广泛采用。在协同CAD系统中支持Undo/Redo被认为比在单用户环境中协同设计中的工件具有复杂的结构。*通讯作者。联系电话:+8618986211761E-mail地址:fzhe@whu.edu.cn© 2014 CAD/CAM工程师协会Techno-Press doi:10.7315/JCDE. 2014. 011特征被组合以形成CAD模型的边界表示新特征的创建取决于现有特征。当一个操作被选为撤销目标时,依赖于它的操作必须被获取。在这种情况下,复杂设计工件的结构应该清楚地呈现出来。一般的协作环境的基本正确性标准Undo和Redo命令的目的是消除和重新创建由特定建模操作创建的特征操作在不同的站点上交错,并且在执行了若干操作之后可以检测到错误。Undo/Redo的含义应该明确地解释作为我们以前工作的延续[5- 7],提出了一种用于3D协同CAD环境的多用户选择性Undo/Redo方法在我们的方法中,Undo/Redo目标可以在每个站点上唯一标识本文还研究了复杂设计工件的结构,构造了一个树形结构的特征组合层次来表示CAD模型的分解在此基础上,明确了特征和操作之间的依赖关系边界模型必须在每次撤销或重做时进行细化,这可以104C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115在拟议结构的协助下实现本文是在我们会议工作的基础上加以推广的在本文中,更详细地介绍了特征组合层次的构造(第3节),针对我们的会议工作优化了Un- do/Redo算法(第4节),并给出了一个更详细的例子(第5节)。本文的其余部分组织如下。第二节介绍了Undo/Redo操作的基本概念和研究领域在第3节中,介绍了特征组合层次结构在第四节中,我们的撤销/重做方法的三维协同系统的介绍。在第5节中,所提出的方法的测试结果。最后,主要贡献的摘要在第6.2. 相关作品撤销/重做模型确定可撤销操作的数量和顺序。在撤销/重做模型的研究领域已经有了很多的努力Undo/Redo模型的最初研究是在单用户环境中[9-10]。单用户环境中的Undo/Redo模型分为4类:1)单步Undo/Redo模型[2],2)线性Undo/Redo模型[3],3)US R(Undo,Skip,Redo)模型[11]和4)历史Undo/Redo模型[12]。然而,在多用户协作编辑系统中本地站点上的最后一个操作不一定是其他站点上执行的最后一个操作因此 , 选 择 性 Undo/Redo 模 型 是 最 常 用 的 多 用 户Undo/Redo模型。它的灵活性受到Undo/Redo范围的限制;即局部Undo/Redo和全局Undo/Redo [11,15- 17]。AnyUndo是一个将Undo策略与Undo机制分离的框架。它允许用户设计一个单一的撤销算法,以支持本地和全局撤销/重做以及上面提到的多个模型[4,13]。此外,它允许在任何时候撤销任何操作。这一概念在文献[7,14]中得到了扩展表1给出了选择性撤销/重做模型和代表性原型的特性的详细描述。不同的应用系统具有不同的特点。在工序识别、工序识别性分析和处理方面也有不同的方法在每个选择的撤消/重做模型中都需要操作ID。符号““表示操作ID被模型采用,但没有描述实现方法。详细的实现方法在文献[2,18,19,21]中给出。Abowd [2]和Choudhary [18]提出的多用户撤销/重做模型没有考虑操作之间的相关性,而GINA提出的选择性撤销模型[19]任何撤销模型[4]都可以。然而,在选择性撤销模型中,当操作与之后执行的操作有关系时,该操作不能被撤销或重做在最后两个模型中,当进行重做操作时,操作参数被传输。当遇到无法解决的冲突时,他们采用多版本方法作为解决方案。多级模型[20]和级联选择性Un- do模型[21]是为单用户环境设计的操作间相关性的解决是基于任务ID和任务相关性。也就是说,当撤消操作时,与之相关的所有任务都将撤消。爱德华兹的模型支持重做,而卡斯的模型不支持据我们所知,在多用户Undo/Redo领域,协同CAD系统的研究工作很少。我们以前对多用户Undo/Redo解决方案的研究仍然存在缺陷[7]。首先,在澄清操作之间的依赖关系时,检查每个附加特征以查看其是否引用由Undo目标创建的拓扑实体。这将导致低效率。其次,模型恢复是通过存储模型状态后,每一个建模操作的执行撤销目标的影响是通过首先在执行时获取模型状态并重新执行所有有效操作来消除的如果Undo目标位于历史缓冲区的前端,并且依赖于它的操作较少,则恢复效率将非常低。然而,还有两种方法可以恢复模型[23]。方法之一是重新执行表1. Undo/Redo在多用户协作系统中的实现。模型多用户撤销选择性撤销选择性撤销任何撤销多级撤销级联选择性撤销文学[18个国家][11,19][第十五条][4]美国[20个][21日]操作位置用户ID√用户+对象ID√√任务ID依赖处理××√√√√对象数据记录文本2D图形文本中风幻灯片原型套房DistEdit吉娜基于Web的REDUCEFlatland白板基于Little-JIL的应用C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115105历史缓冲区。尽管计算量巨大,但由于硬件速度加速,它仍然是可行的。第二种方法是通过存储临时几何模型或相邻建模操作之间的增量值。华中科技大学国家CAD工程中心的Wang采用了这种方法[22]。3. 三维协同CAD系统在协同CAD系统中,功能和数据在每个站点都是重复的建模操作在发送到其他远程站点之前立即在本地站点执行CAD模型是由协作站点创建的特征组合的复杂设计工件。辅助复杂工件设计的特征造型操作包括几何操作和布尔操作。几何运算是从已有的实体模型中选择拓扑实体作为运算对象.例如,选择要圆角的拓扑边。有三种类型的布尔运算,即联合,减法和交集。通过执行布尔运算,从两个现有的实体生成一个新的实体典型的例子包括预处理和孔连接操作。虽然历史缓冲区可以诚实地记录所有建模操作到达协同站点的顺序,但它仍然不足以表示设计工件的结构和特征之间我们使用ACIS的边界表示来表示CAD模型的形状在货物预报信息系统中,实体附有一个属性,以描述其系统定义或用户定义的特征。在此基础上,通过一定的建模操作创建的每个实体都以(Create_SiteID,Create_SEQ ) 的 形 式 与 一 个 CREATE_ATTRIB 相 关联,作为其ID的辅助信息,因此,无论采用何种持久命名机制,只要定位到拓扑实体,就可以获得其协作CAD系统中的工作流程的详细信息在4.1小节中给出在在这一节中,我们研究了复杂设计工件的结构,并介绍了特征组合层次数据结构,简称为FCH。3.1 要素组合层次结构的简要视图FCH是一种树状数据结构,用于表示3D对象如何组合以及它们在CAD模型中的关系。对象,也称为子配置,在协同设计过程中创建的分类为原始对象和复合对象。一个基元对象不能在逻辑上分解成任何基元对象或连接。通过相互依赖的建模操作创建的特征它也可以被分解成它的组成部分,这些组成部分又可以递归地分解,以便单独寻址。在协同CAD系统中创建的CAD模型是以先创建基本特征,然后逐步添加其他特征的方式构建的在此基础委托子配置的构造性基本特征的特殊原始对象有两种类型的组合对象:复杂的CAD模型和子配置建立中间通过组合几个相互依赖的功能。图1说明了如何将CAD模型(在本例中称为PART)分解为不同的子配置。BaseCylinder特征是PART模型的构造性基础特征。因此,相应的BaseCylinder对象被标记为PART对象的Base Object 即 使 它 是 由 两 个 建 模 操 作 构 造 的 , 但BidderChamfer子配置也是一个基本对象这意味着首先需要创建一个圆柱体,然后对圆柱体顶面的边缘进行圆角处理。BidderUnion子配置是一个可以进一步分解的复合对象。BonderBoss1是BonderUnion子配置的基本对象图1.一个复杂工件分解的例子106C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115树形数据结构和主要特点概括如下:1) 层次结构的根是一个复合对象del-避免复杂的设计工件。声明一个类来表示根。根节点有几个分支。每个分支都是复杂设计工件的分解子配置。第一个分支总是零件的基本结构特征。其他分支是子配置,具体取决于基本功能.根拥有指向其分支的指针。不同的分支处于非交互关系。2) 层次结构中的中间节点所代表的对象可以分为三种类型:a)由布尔并运算生成的可进一步分解的复合对象; b)由布尔减法或布尔交运算生成的本原对象; c)由执行几何运算生成的本原对象。3) 叶节点是一个添加功能体添加到复杂的设计工件,或减功能体从artifact。4) 在FCH中,复合对象总是通过布尔联合操作创建的。它应该以根被分解的方式分解。然而,对于一个原始对象而言,如果它是由许多建模操作创建的,那么它的演化过程也是清晰的。这将在第3.2小节中说明。5) 给定子配置SC分解为SC的基本对象也是SC1和SC2的基本对象。6) 在零件的演化过程中,每次造型操作执行后,零件都要进行更新。因此,相应的FCH也是最新的。通过我们以前工作中的一致性维护机制,每个站点的CAD模型是一致的。因此,每个站点的FCH也是一致的。3.2 基本特征造型操作表示为最终CAD模型和基本/复合对象分别声明单独的类,如下所Struct{int n;//指针指向子对象//configurationlong int BaseObjectPointer;//指向子配置int n;//建模操作//从先前//版本号CString OperationType;(一)(b)第(1)款图2.通过不同类型的建模操作创建的对象的分解:(a)通过布尔操作创建的对象的分解,(b)通过几何操作创建的对象的分解。C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115107//一个几何运算或布尔并集,//求差或求交操作int n = 0;//子配置所在的分支std::list Sub_Configuration>m_listSubConfPointer;//指向分解的子配置,如果//一个复合对象,如果是原始对象,则Sub_Configuration *next;//指针指向此子进程//执行一个consequent//建模操作} Sub_Configuration ;Struct{int n;//指针指向子对象//configurationlong int boundary;//指向零件的基本特征的指针std::list Sub_Configuration> m_listSubConfPointer;//指向已分解的子配置的}{\displaystyle {\frac {0}基于这两个类,通过执行不同类型的特征建模操作获得的对象分解如图2所示较高级别的节点将更新的子配置委托给执行的任何类型的特征建模操作。图2(a)示出了通过执行布尔并集、减法和交集获得的对象的分解在执行布尔联合操作之后获得的对象是被分解为基本对象和附加特征的在执行布尔减法或交集运算后获得的对象是基本对象。然而,还示出了所获得的基元对象灰色阴影的节点意味着特征从子配置中体积移除图2(b)示出了由几何运算创建的原始对象的演化过程4. 复制式协同建模系统在提出Undo/Redo方法之前,有必要讨论我们在协同CAD系统中采用的一致性维护机制协同CAD系统需要执行建模操作以满足因果关系保持和意图保持。所有副本在协作任务结束时达到收敛状态为了确定苏妥坦的序列-在复制的协同CAD系统中,由协同站点发布的操作,采用基于Lamport状态向量的时间戳排序技术[25]状态向量是N个分量向量,其中N表示所有协作站点的总数,并且每个站点具有范围从0到N-1的唯一ID。每个站点都保持一个状态向量,其中第i个分量表示在该站点上执行了多少来自站点i的操作。两个状态向量SVi和SVj以如下方式进行比较:1)SVi= SVj,如果SV i的每个元素等于SVj中的对应元素; 2)SVi< SVj,如果SV i的每个元素等于或小于SVj中的对应元素,并且SV i的至少一个分量小于SV j中的分量; 3)SVi> SVj,如果SV i的每个元素大于SVj中的对应元素。每当一个建模操作被发送到远程站点时,一个在其生成时刻的状态向量被附加到它。一个操作只能在容量就绪的条件下执行,例如当它的状态向量不大于该远程站点保存的状态向量时。采用本课题组[26,27]提出的乐观串行化并发控制方法,达到意图保持的目的当一个特征从边界模型中被消除时,依赖于它的特征就没有意义了。协同建模环境中的Undo/Redo方法需要考虑操作之间的依赖关系。如3.2小节所示,复合子配置中的对象都依赖于其基本对象。甚至一个基本对象也是在某个基本对象的基础上构造的。当选择建模操作作为撤销目标时,第一步是检查相应的特征是否是某些子配置的基本对象之后,所有依赖于undo目标的已执行操作都应该被撤消。当一个撤消命令发出时,其目的是消除一个或多个操作的影响,并恢复到以前的状态。这些要求包括:1)正确地定位撤消目标操作;以及2)成功地消除撤消目标和依赖于它的操作的影响,而不影响非交互的子配置。当发出“重做”命令时,其目的是撤消同一用户最近发出的撤消操作。在本节中,我们提出了一个本地Undo/Redo方法,用户只能从后面到前面撤销他/她发出的操作这更类似于单用户环境。此方法有一个前提条件,即当调用撤消命令时,协作站点已达到收敛状态4.1 定位撤消/重做目标为了满足意图保持要求1,撤销/重做目标应该被正确定位。由于网络延迟和基于状态向量的因果关系保存,每个协作站点处的操作历史具有以下特征:108C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~1151) 同一站点的建模操作在所有站点上以相同的顺序执行2) 来自不同协作站点的建模操作在不同站点以不同顺序交错执行由于用户所瞄准的Undo目标不一定是每个站点执行列表中的最后一个操作,因此在定位Undo目标时,需要考虑两个方面:1)定位本地站点的Undo目标;2)定位远程站点的Undo目标建模操作在其发出后立即在其生成站点执行因此,Undo对象只存在于本地站点的执行列表以协同CAD系统CS为例。CS中有N个协作站点。Ai,j(0≤j≤M-1)表示从站点Si发送的建模操作,M为操作总数。对于Si,它发送的所有操作都放在它的执行列表ExecuteList i中,从Ai,0到Ai,M,依次为一个.一 旦 Si 发 出 一 个 Undo 命 令 , 就 很 容 易 搜 索 它 的ExecuteListi,最后一个满足Ai.siteId == i的操作就是Undo目标。给定网络延迟和总结的特征(2),撤销目标可以存在于任何远程站点的两个列表一个可能的列表是执行列表,另一个是等待列表,用于保存尚未准备好因果关系的等待操作当某个随机远程站点Sj接收到撤销请求时,可能识别的撤销目标可能不是最后执行的因此,它只能位于Exe-cuteListj或WaitListj中。采用站点ID和操作状态向量相结合的方法定位撤销目标。 来自Si的 操 作以Ai(SiteId,StateVector)的格式发送到S j。 当Ai到达Sj时,将首先搜索ExecuteListj。如果此列表中没有操作满足O.siteId== i和O.StateVector==Ai.StateVector,则WaitListj将(一)(b)第(1)款图3. Undo对象在远程站点的位置:(a)应用undo命令之前的初始状态,(b)应用undo命令之后的模型状态。C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115109算法1:获取Undo目标的依赖操作集。输入:已识别的Undo目标操作Op,当前FCH输出:DOS(Op)1:Op_Node = FCH中Op的对象节点; 2:DOS(Op)=空;第三章:i =Op_Node.SubConf_No;第四章:root = FCH的根节点;5:SubConf_Node = root.m_listSubConfPointer[i];6:Temp_Node = Op_Node.next;第七章:while(Temp_Node!= SubConf_Node)8:if(Temp_Node->BaseModelPointer == Op_Node)9:Temp_Node被放入DOS(Op);10:if(Temp_Node->BaseModelPointer!= 操作节点)11:Temp_Base_Node = Temp_Node-> BaseDataPointe;12:while(Temp_Base_Node!=空)13:if(Temp_Base_Node-> BaseDataPointer == Op_Node)14:Temp_Base_Node被置于DOS(Op);15:其他16:Temp_Base_Node=Temp_Base_Node-> BaseDataPointe;17:endif18:结束19:endif20:endif21:Temp_Node = Temp_Node->next22:结束为了找到Undo目标,需要搜索图3显示了一个将操作ID和状态向量应用于Undo流程的示例。例如,Cubid-Slot(1)来自站点1,CubidSlot(2)来自站点2。撤消命令由站点2发出4.2 撤消目标保留算法2:在协作站点的撤销方法i.输入:撤销请求,站点i的历史缓冲区HB i,当前FCH输出:重新评估的几何模型1:Op =历史缓冲区中标识的撤销目标; 2:DOS(Op)= Op第三章:Op_Node = FCH中Op的对象节点;4://获取更新后的子配置,不受Op第六章:root = FCH的根节点;第七章: SubConf_Node =root.m_listSubConfPointer[i]; 8:Base_Ob =SubConf_Node的基对象; 9:Temp_Node =Base_Ob->Next;10:Temp_SubConf = bouchroom模型Base_Ob委托; 11:while(Temp_Node!= SubConf_Node)12:如果(Temp_Node处于DOS(Op ||Temp_Node ==Op))13:从FCH中删除Temp_Node;14:其他15:Temp_SubConf =通过执行特征造型操作而获得的更新的边界模型保存在Temp_SubConf上的Temp_Node中16、根据Temp_SubConf新建节点并插入FCH; 17、endif18:Temp_Node = Temp_Node->Next; 19:endwhile二十:root.m_listSubConfPointer[i] = Temp_Node;第二十一章:组合所有现有的子配置以获得重新评估的边界模型;110C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115算法3:在协作站点方法输入:重做请求,站点i处的历史缓冲区HB i,当前FCH i输出:重新评估的几何模型一曰: if2:Ob_Base = new SubConfiguration(); 3:Ob_Base.BaseModelPointer = NULL;4:Ob_Base.BoundaryModelPointer =基础特征模型的物理地址5:Ob_Base.ModelingCommandString = Op的高级建模命令; 6:Ob_Arti = new modify(); //创建根节点7:Ob_Arti.BaseModelPointer = Ob_Base; 8:endif第九章: if(Op. ReferenceValidityList!= NULL)10:标识创建被引用拓扑实体的操作; 11:Temp_Node =操作的对象节点;12:Temp_Command_String =操作的高级建模命令;13:Temp_Type_String =解析Temp_Command_String得到的操作类型; 14:Ob_New = newSubConfiguration();15:Ob_New.BaseModelPointer = Temp_Node;16:Ob_New.BoundaryModelPointer =指向新子配置的指针; 17:Ob_New.ModelingCommandString =高级建模命令;18:Ob_New.OperationType = Temp_Type_String;19:if(Op. ReferencePointer. lis的拓扑实体来自基础特征)20:i =m_listSubConfPointer.count();21:Ob_Arti.the_i+1th_Configuration _Pointer = new SubConfiguration(); 22:Ob_Arti. the_i+1th_Configuration _Pointer = Ob_New;23:其他24:Ob_Arti.This_SubsidiationPointer = Ob.New; 25:endif26:endif撤销/重做命令的目的是消除/重新创建某个特征的效果。这意味着B-Rep重新评估是Un- do/Redo流程中不可避免的步骤。就意图保留要求2而言,根据各小节4.1和4.3,分别给出了两个算法来介绍我们的撤销和重做方法。算法2描述了在协作站点的撤销实现,算法3描述了在协作站点的重做实现Redo方法的前提条件是,由于依赖关系而撤消的操作不能重做。5. 实施和测试结果为了证明所提出的撤销/重做解决方案的有效性和可行性,我们在使用ACIS 6.0和Visual C++6.0构建的原型中进行了几次有3个协作站点,表示为站点0、站点1和站点2,参与实验。实验开始与图4所示的协作建模过程。在协同建模过程中,特征建模命令在本地生成后立即执行。然后将其发送到另外两个远程站点,执行.在一个站点生成多少操作以及所有接收到的操作的执行顺序如表2所示。发出三个撤销命令,并按以下方式执行(Step 1)站点0发送撤销命令以撤销它发出的最后一个操作。识别目标操作O4,并获得站点的特征组合层次结构中的表示为Sub_Braction4的对应节点。该identi-fied节点表示在第四子配置中的一个对象,并且DOS(O4)为空。因此,在重新评估过程期间跳过子配置。最后,如图6所示重新组合其他四个子配置表2.在每个站点生成和执行操作。站点ID现场产生的操作执行顺序在现场的业务网站0O0:基块(0)O 1:圆柱体(0)O4:多边形挤出(0)O0、O 1、O 4、O 2、O 5、O 3、O 6Site1O2:气缸(1)O5:圆孔(0)O0、O 1、O 2、O 5、O 4、O 3、O 6Site2O3:多边形挤出(1)O6:挤出(0)O0、O 2、O 1、O 3、O 4、O 5、O 6C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115111(Step2)站点1发送其第二个撤销命令。识别目标操作O2,并在当前特征组合层次中获得对应的节点Cylin-der2。由于DOS(O2)= O6,因此在重新评估过程中跳过第5个子配置。结果如图7所示。(步骤3)站点2发送撤销命令以撤销其发出的最后操作。识别目标操作O3,并获得表示为子操作2的对应节点。所标识的节点表示第二子配置分支中的一个对象,并且DOS(O3)为空。因此,在重新评估过程期间跳过子配置最后,如图8所示6. 结论提出了一种复制式协同三维建模系统中的选择性多用 户 撤 销 / 重 做 方 法 它 在 本 地 站 点 上 唯 一 地 标 识Undo/Redo目标操作,并通过站点ID和Lamport状态向量来远程站点,以便保留用户在特征组合层次的帮助下,设计工件的结构和特征关系被阐明。通过这种方式,依赖于Undo目标的操作可以很容易地获得,并且也将被完全撤销最后,我们的算法的正确性进行了证明与实验中执行的原型,我们建立。致谢本文得到了国家自然科学基金(批准号:200000000)的资助。61070078)。引用[1]杨耀撤消支持模型。国际人机工程学报.[2]Abowd G,Dix AJ.给予撤销注意力。与计算机交互. 1998;4(3):317-342.[3]伯拉格湾基于命令对象的图形用户界面的选择性撤消机制 。 ACM Transactions on Computer-Human Interaction(TOCHI)1994; 1(3):269-294.[4]Sun CZ.在组编辑器中随时撤消任何操作。在:2000年计算机支持合作工作ACM会议论文集; 2000年;费城,PA;第191 -200页。[5]景世祥,何富忠,刘宏杰。复制式协同实体造型系统的协同命名。在:ASME国际设计工程技术会议计算机和信息工程会议; 2008年8月3日至6日;纽约,纽约; p. 141-150[6]何福忠,景世祥。复制式协同实体造型中拓扑实体2008;中国专利。申请号:200810047976.9。[7]程英,何富忠,蔡孝泰,张德杰。三维协同建模系统中的群体撤销/重做方法及其性能评价网络与计算机应用杂志。二〇一三年;36(6):1512-1522。[8]程毅,何富忠。协同CAD系统的多用户选择性撤销/重做方法。在:2013年亚洲设计与数字工程会议(ACDDE2013 ) 的 会 议 记 录 ; 2013 年 8 月 12 日 至 14 日 ; 韩 国 首尔;p.593-603[9]Archer Jr JE,Conway R,Schneider FB.交互系统中的用户恢复和逆转。美国计算机学会程序设计语言与系统汇刊.1984; 6(1):1-19.[10] 孔托吉安尼斯·T从系统的角度来管理安全关键领域的错误恢复和运营团队的战术重新规划。安全研究杂志2011;42:73-85.[11] Prakash A,Knister MJ.在协作工作中取消行动计算机科学与工程系。部电气工程和计算机科学系。密歇根大学。一九九四年[12] Lanvin DF,Castnedo RL.扩展具有向后错误恢复集成支持的面向对象计算机语言,系统结构。2010; 36:123-141.[13] Sun CZ. 在 组 编 辑 器 中 作 为 并 发 反 向 撤 消 。 ACMTransactionsonComputer-HumanInteraction.2002;9(4):309-361.[14] 韦斯Logoot-undo:P2P网络上的分布式协同编辑系统。IEEE Transactions on Parallel and Distributed Systems并行与分布式系统汇刊。2010; 21(8):1162-1174.[15] 杨R,惠林顿J。使用知识分析预测文本编辑器使用中的概念错误在:SIGCHI计算机系统中的人为因素会议:赋予人们权力; 1990年4月1-5日;西雅图,华盛顿州;第91 -98页。[16] Prakash A,Knister MJ.在协作工作中取消行动1992年ACM计算机支持的协同工作会议(CSCW '92); 1992年;p.273-280。[17] Ressel M,Gunzenhauser R.减少组撤消的问题。在:国际ACM SIGGROUP会议体育团体工作; 1999年11月14-17日;凤凰城,亚利桑那州; p.131- 139.[18] Choudhary R,Dewan P.一个通用的多用户撤销/重做模型。在:计算机支持的合作工作欧洲会议论文集; 1995年9月11日至15日;斯德哥尔摩,瑞典; p.231-246。[19] Prakash A,Knister MJ.协作系统中撤销操作的框架。计算机-人的相互作用汇刊. 1994; 1(4):295-330.[20] Edward WK,Igarashi T.一个多层次撤消和重做的时态模型。在:ACM用户界面软件和技术研讨会; 2000年11月5日至8日;圣地亚哥,加利福尼亚州; p.31比40[21] Cass AG,Fernandes CST.使用任务模型级联选择撤消。LNCS。2007; 4385:186-198[22] 王天艳,吴俊杰。CAD/CAM中Undo/Redo技术研究。武汉大学学报. 1998; 31(3):65-66.[23] Bidarra R,Bronsvoort W.语义特征建模计算机辅助设计.2000; 32(3):201-225.[24] 景世祥,何富忠,刘宏杰。拓扑实体持久命名问题综述计算机辅助设计杂志计算机图形学。2007; 19(5):545-552.112C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115[25] 兰波特湖时间、时钟和分布系统中事件的顺序。ACM的通信。1978; 21(7):558-565.[26] 景世祥,何富忠,韩世勋。一种复制式协同CAD系统中拓扑实体对应的方法。工业中的计算机2009; 60(7):467-475.[27] 郑耀,何富忠,蔡孝堂,郑耀.协同建模系统中对象引用的一种方法计算机研究与发展杂志。2011; 48(11):2031-2038.图4.协作建模过程的一个例子C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115113图5.协同建模过程后每个站点的特征组合层次114C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115图6.第一个撤消命令后的特征组合层次图7.第二个“撤消”命令后的特征组合层次C. Yuan等人/Journal of Computational Design and Engineering,Vol.号12(2014)103~115115图8.最后一个“撤消”命令之后的特征组合层次
下载后可阅读完整内容,剩余1页未读,立即下载
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- 京瓷TASKalfa系列维修手册:安全与操作指南
- 小波变换在视频压缩中的应用
- Microsoft OfficeXP详解:WordXP、ExcelXP和PowerPointXP
- 雀巢在线媒介投放策划:门户网站与广告效果分析
- 用友NC-V56供应链功能升级详解(84页)
- 计算机病毒与防御策略探索
- 企业网NAT技术实践:2022年部署互联网出口策略
- 软件测试面试必备:概念、原则与常见问题解析
- 2022年Windows IIS服务器内外网配置详解与Serv-U FTP服务器安装
- 中国联通:企业级ICT转型与创新实践
- C#图形图像编程深入解析:GDI+与多媒体应用
- Xilinx AXI Interconnect v2.1用户指南
- DIY编程电缆全攻略:接口类型与自制指南
- 电脑维护与硬盘数据恢复指南
- 计算机网络技术专业剖析:人才培养与改革
- 量化多因子指数增强策略:微观视角的实证分析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)