发明名称 通用型协同交流系统中模型批注与操作传输的方法
摘要 本发明属于CAD协同产品设计领域,其特征在于:在客户端和服务器之间采用模型同步和操作同步分别传输的机制来实现产品的实时协同设计,还应用流式套接字来实现信息交流。对三维模型,在服务器端和各客户端都分别设有:基于VRML文件的模型显示模块、用户交互模块和通讯模块;对二维模型,则设有通讯模块、基于VECT库的批注模块以及通讯模块。本发明不仅提高了产品设计人员之间的实时交流效率,缩短了产品开发周期,还可用于各部门非设计人员之间或者企业与供应商和客户之间的意见交流,对于提高企业竞争力有重要意义。
申请公布号 CN1731733A 申请公布日期 2006.02.08
申请号 CN200510086338.4 申请日期 2005.09.02
申请人 清华大学 发明人 田凌;吕振远
分类号 H04L12/18(2006.01);H04L12/56(2006.01);G06F17/50(2006.01) 主分类号 H04L12/18(2006.01)
代理机构 代理人
主权项 1.通用型协同交流系统中模型批注和操作传输的方法,其特征在于:所表达的方法是在采用TCP/IP协议的网络中,在服务器端和各客户端之间基于模型同步/操作同步分别传输的机制上,采用套接字技术依次按以下步骤实现的:步骤1.初始化在基于产品三维模型的协同交流工具的浏览批注系统结构中,在所述服务器端和各客户端都分别设有下述软件模块:模型显示模块,该模块利用虚拟现实建模语言浏览器对VRML文件进行解释,实现VRML模型的读取、显示和渲染,其中,VRML即虚拟现实建模语言;用户交互模块,用于处理用户的输入,并把输出返回给用户;通讯模块,实现用户间的通讯,传输的数据包括:客户端向服务器端发送参加会议的请求,服务器端相应请求并向各客户端传送模型信息,客户端/服务器端视点改变,客户端/服务器端添加和激活批注;同时,该通讯模块把用户的包含视点转换、视图缩放、插入批注和激活批注在内的各种操作经过编码后传送给其它用户并在计算机上显示;在基于产品二维模型的协同交流工具的浏览批注系统结构中,在所述服务器端和各客户端都分别设有下述软件模块:浏览模块,处理包含图形文档显示、本地用户和远程用户的浏览交互操作;批注模块,显示批注信息并处理本地和远程用户的批注交互操作;通讯模块,在客户/服务器间传递经编码的各种操作信息。上述通讯模块是根据TCP协议提供的套接字API接口作为双方通信用的流式套接字网络编程接口,利用VC++网络通信编程技术,来实现通讯的;设定在各客户端和服务器端传输和操作的数据包格式,所述的操作包括:服务器端发起协同会议、各个客户端相继加入会议、在线人数、用户名、用户权限、源IP地址、目的IP地址、协同模式、操作类型、操作命令集和退出会议;步骤2.服务器端和客户端建立连接,依次含有以下步骤:步骤2.1服务器端使用Socket()函数首先创建套接字;步骤2.2服务器端使用Bind()函数将本地地址绑定到它所创建的套接字上,从而在网络上标识该套接字;步骤2.3服务器使用Listen()函数把套接字置于监听模式并准备接受连接请求;步骤2.4客户端用Socket()函数创建客户端套接字;步骤2.5客户端把自己的地址绑定到所建套接字上,以便在网络上标识该套接字;步骤2.6客户端使用Connect()函数向服务器提出连接请求;步骤2.7服务器收到步骤2.6提出的连接请求后,用accept()函数生成一个新的套接字与客户端建立连接,并向客户端返回接收信号;步骤2.8客户端和服务器端进行数据传输;步骤2.9传输完毕,客户端和服务器端各自用Close()函数关闭套接字。步骤3.客户端打开模型文件把它传到服务器端,并通过服务器端传输其它客户端,使各客户端及服务器端之间实现模型同步;步骤4.客户端对模型进行浏览和批注操作:客户端把各种操作编码后传给服务器,并经由服务器传递给其他用户,操作经解码后在其它用户的计算机上显示模型的最新状态,以实现操作同步;对三维模型,本步骤基于VRML文件;对二维模型,本步骤基于VECT库;步骤5.客户端填写要向服务器端传输的操作数据包中各域的值,经过编码后用Sendmsg()函数发送;步骤6.服务器端收到步骤5发来的数据包后,转发给其他客户端;步骤7.其他客户端使用Recvmsg()函数接收数据包,并针对不同的操作类型,使用命令解释器解析数据包,转化为相应的操作类型和操作命令集,完成相应的模型更新和数据更新,刷新本地模型,实现所有用户端模型的同步显示。
地址 100084北京市北京100084-82信箱