两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

協(xié)同的cad編輯系統(tǒng)中基于3d語義的操作轉(zhuǎn)換的方法

文檔序號(hào):6605573閱讀:228來源:國知局
專利名稱:協(xié)同的cad編輯系統(tǒng)中基于3d語義的操作轉(zhuǎn)換的方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)支持協(xié)同工作CSCW(Computer Supported Cooperative Work) 技術(shù)領(lǐng)域,尤其涉及一種在協(xié)同的CAD編輯系統(tǒng)中基于3D語義的操作轉(zhuǎn)換的方法。
背景技術(shù)
并發(fā)控制和一致性維護(hù)是實(shí)時(shí)CSCW系統(tǒng)和傳統(tǒng)的分布式系統(tǒng)的一個(gè)主要的區(qū) 別。前者的目標(biāo)是為多用戶交互找到一個(gè)自然,自由并且快速的交互界面,尤其是在復(fù)制式 CSCW系統(tǒng)中。在這種情況下,協(xié)同編輯,尤其是協(xié)同文本編輯,已經(jīng)作為一個(gè)典型的CSCW平 臺(tái),被廣泛的研究。同時(shí),協(xié)同圖形編輯也開始被研究。一些文章已經(jīng)談到了簡單的二維圖 形,圖表和圖像。然而,真正的三維圖形和文本,二維圖形都有著很大的區(qū)別,這是因?yàn)檎鎸?shí)的世界 是在三維空間中表示的。一個(gè)完備的三維實(shí)體模型是基于點(diǎn)集理論來構(gòu)建的。因此,一個(gè) 三維實(shí)體可以被唯一的定義成一個(gè)有規(guī)律的點(diǎn)集,此點(diǎn)集具有以下特性有界,半解析,在 歐幾里得空間中具有封閉的規(guī)則子集。根據(jù)投影幾何原理,一個(gè)三維實(shí)體被投影到一個(gè)平 面上可以得到一個(gè)二維圖形,但是它將會(huì)丟失完備性。這個(gè)原因促使了大量的圖形應(yīng)用軟 件由二維轉(zhuǎn)向三維,特別是在CAD,CAM和VR產(chǎn)業(yè)中。在同一時(shí)期,由于網(wǎng)絡(luò)的快速發(fā)展,三 維圖形應(yīng)用軟件也轉(zhuǎn)向分布式,協(xié)同應(yīng)用環(huán)境中。因此,協(xié)同的CAD編輯已經(jīng)成為三維圖形 編輯系統(tǒng)中亟待解決的問題。就我們所知,針對協(xié)同的CAD編輯系統(tǒng)的研究才剛剛起步,至今還沒有可以應(yīng)用 于協(xié)同CAD編輯的很好的方法。傳統(tǒng)的基于網(wǎng)絡(luò)的三維CAD應(yīng)用方法十分嚴(yán)格,例如鎖機(jī) 制和發(fā)言權(quán)控制,它們都會(huì)導(dǎo)致呆滯并且不自然的用戶交互。與以前的方法相比,我們提出 的方法的主要優(yōu)勢是為協(xié)同CAD編輯提供了一種低約束的并發(fā)控制和一致性維護(hù),因而可 以避免呆滯并且不自然的用戶交互。操作轉(zhuǎn)換方法是協(xié)同編輯中解決并發(fā)控制和一致性維護(hù)的一種主要方法。在協(xié) 同文本編輯中,操作轉(zhuǎn)換方法可以分為(1)針對線性文本結(jié)構(gòu)的基本操作轉(zhuǎn)換方法。(2) 針對于樹形結(jié)構(gòu)的復(fù)合操作轉(zhuǎn)換方法。與之對應(yīng),三維實(shí)體圖形也可以分為三維實(shí)體模型 (線性表示)和三維裝備體模型(樹形表示)。因此,針對CAD的操作轉(zhuǎn)換也可以分為兩個(gè) 方向來研究(1)針對三維實(shí)體的基本操作轉(zhuǎn)換;(2)針對三維裝備體的復(fù)合操作轉(zhuǎn)換。通 過運(yùn)用三維語義,復(fù)合操作轉(zhuǎn)換方法也可以運(yùn)用到裝備體中?;趐arker教授提出的狀態(tài)向量(參見文獻(xiàn)1),每一對操作之間的關(guān)系可以分 為⑴因果關(guān)系,表示為“一”;(2)并發(fā)關(guān)系,表示為“| |”;然而,僅僅根據(jù)狀態(tài)向量,我們 是不可能決定并發(fā)操作之間的先后順序的。所以,我們應(yīng)該應(yīng)用操作語義來定義每對操作 之間的可交換關(guān)系交換和不可交換。這些關(guān)系可以用來解決CSCW系統(tǒng)中的不一致性問 題,例如,因果違背,不收斂和意圖違背?;镜牟僮鬓D(zhuǎn)換方法可以應(yīng)用到線性結(jié)構(gòu)的文本文檔中,一些基本的操作轉(zhuǎn)換方 法,例如dOPT算法,GOT算法,GOTO算法,adOPTed算法,S0CT2, S0CT3, S0CT4也相繼被提
3出。總體而言,以上的這些核心的操作轉(zhuǎn)換算法有著異曲同工的效果,那就是基本的文本操 作轉(zhuǎn)換的方法通過調(diào)整“插入”和“刪除”操作的參數(shù)來達(dá)到一致性的結(jié)果。與之對應(yīng),本 發(fā)明是以三維語義操作為協(xié)同CAD操作轉(zhuǎn)換的依據(jù)(添加和刪除實(shí)體)。一些學(xué)者的研究討論了針對其他文本結(jié)構(gòu)的復(fù)合操作轉(zhuǎn)換方法。然而,復(fù)合的操 作轉(zhuǎn)換可以減化為基本的操作轉(zhuǎn)換方法。例如,復(fù)合的操作轉(zhuǎn)換可以將樹形結(jié)構(gòu)中的每一 個(gè)節(jié)點(diǎn)當(dāng)做一個(gè)“字符”來處理。和以上兩種文本結(jié)構(gòu)類似,針對CAD的三維基本操作轉(zhuǎn)換 (以實(shí)體為單位)是三維復(fù)合操作轉(zhuǎn)換(以裝備體為單位)的基礎(chǔ)。本發(fā)明主要討論和解 決針對三維實(shí)體的基本操作轉(zhuǎn)換。根據(jù)幾何理論,二維圖形只是三維空間的實(shí)體在二維空間中的一個(gè)投影。投影后, 實(shí)體的幾何完備性和三維語義將會(huì)丟失。一個(gè)簡單的二維圖形系統(tǒng)是一個(gè)具有獨(dú)立數(shù)據(jù)結(jié) 構(gòu)的二維物體的集合。這些物體具有一些屬性,例如,顏色,位置,形狀和不同角度觀看時(shí)的 重疊信息。在這種情況下,多版本的方法無疑是解決多用戶交互的一個(gè)好辦法。一些學(xué)者 也解決了相關(guān)的二維圖表的協(xié)同問題。然而,作為一個(gè)典型的并發(fā)三維系統(tǒng),協(xié)同CAD編輯 系統(tǒng)希望讓地理上分散的用戶能夠在共享的工作環(huán)境下構(gòu)造,觀看并且修改幾何模型。并 發(fā)的協(xié)同CAD編輯系統(tǒng)能夠支持交互式的并發(fā)協(xié)同建模和協(xié)同修改功能。至今為止,用于 傳統(tǒng)的復(fù)制式CAD系統(tǒng)中的典型的并發(fā)控制方法都十分的嚴(yán)格。例如,用于T0BAC0系統(tǒng)中 的話語權(quán)控制方法只能夠讓一個(gè)當(dāng)前的用戶和共享的集合模型進(jìn)行操作,其他用戶將被鎖 起,無法操作,進(jìn)而來避免事件的沖突。應(yīng)用于協(xié)同ARCADE系統(tǒng)中的悲觀鎖機(jī)制需要用戶 發(fā)送的請求獲得批準(zhǔn)后,此用戶才能對特定的實(shí)體進(jìn)行操作。在此用戶操作的同時(shí),其他用 戶將被禁止對此實(shí)體進(jìn)行操作。另外,一些學(xué)者提出可以利用語音通話來一起協(xié)商。然而, 這些方法太嚴(yán)格,從而阻止了對共享CAD數(shù)據(jù)的同時(shí)操作。從另一方面,鎖機(jī)制和話語權(quán)控 制的嚴(yán)格控制也讓多用戶交互變得了然無趣。至今,嚴(yán)格的控制方法仍然被用于主流的多 用戶交互的CAD編輯的研究中。本發(fā)明的工作就是提出一種低約束的并發(fā)控制方法并取得 結(jié)果的收斂。一般來說,用于文本的操作轉(zhuǎn)換的核心思想是通過調(diào)整參數(shù)來用不同的執(zhí)行順序 取得結(jié)果的收斂。在我們協(xié)同的CAD操作轉(zhuǎn)換中相似的方法也被用到。在我們的系統(tǒng)中, 不同站點(diǎn)上的執(zhí)行順序是不同的,但通過協(xié)同CAD操作轉(zhuǎn)換方法,可以取得結(jié)果的收斂。參考文獻(xiàn) 1 :D. S. Parker, et al, Detection of Mutual Inconsistency in Distributed Systems, IEEE Transaction on Software Engineering (1983),9 (3) 240-24
發(fā)明內(nèi)容
針對上述存在的技術(shù)問題,本發(fā)明的目的是提供一種在協(xié)同的CAD編輯系統(tǒng)中基 于3D語義的操作轉(zhuǎn)換的方法,使其能夠?qū)崿F(xiàn)協(xié)同環(huán)境中的多用戶自由的并發(fā)操作,并保證 不同站點(diǎn)上結(jié)果的一致性。為達(dá)到上述目的,本發(fā)明采用如下的技術(shù)方案所述協(xié)同CAD編輯系統(tǒng)中的每個(gè)站點(diǎn)上都包括生成隊(duì)列,收到隊(duì)列,合成隊(duì)列,執(zhí) 行隊(duì)列和等待隊(duì)列;①所述協(xié)同CAD編輯系統(tǒng)中每個(gè)站點(diǎn)的用戶自由發(fā)出操作,所述操作生成后,按
4照所述每個(gè)站點(diǎn)的時(shí)間順序加入到站點(diǎn)各自的合成隊(duì)列中,并同時(shí)發(fā)送到其它的協(xié)同站點(diǎn) 上;②當(dāng)前站點(diǎn)收到其它協(xié)同站點(diǎn)的操作后,根據(jù)當(dāng)前站點(diǎn)的時(shí)間順序自動(dòng)加入到當(dāng) 前站點(diǎn)的合成隊(duì)列中;③自動(dòng)從合成隊(duì)列的開始取出一個(gè)操作,并自動(dòng)判斷此操作可以被立即執(zhí)行還是 需要放入等待隊(duì)列;④當(dāng)取出的操作可以被立即執(zhí)行時(shí),站點(diǎn)自動(dòng)判斷此操作是否需要被進(jìn)行操作轉(zhuǎn) 換如果需要進(jìn)行操作轉(zhuǎn)換,將按照3D協(xié)同CAD的操作轉(zhuǎn)換規(guī)則對其轉(zhuǎn)換,并執(zhí)行轉(zhuǎn)換后的 狀態(tài);否則,此操作可以被直接執(zhí)行,并放入到執(zhí)行隊(duì)列中;⑤如果當(dāng)前操作被執(zhí)行后,所述協(xié)同CAD編輯系統(tǒng)要立即查看當(dāng)前站點(diǎn)上等待隊(duì) 列中是否有被觸發(fā)的操作;如果有,則按照等待隊(duì)列中操作選擇的3D語義優(yōu)先級(jí)來選擇需 要被執(zhí)行的操作,然后跳到步驟④;如果沒有,則執(zhí)行下述步驟;⑥在合成隊(duì)列中查看是否還有沒有執(zhí)行的操作,如果有,執(zhí)行步驟③;否則,執(zhí)行 步驟⑦;⑦完成協(xié)同CAD編輯。所述生成隊(duì)列用于保存當(dāng)前站點(diǎn)發(fā)出的操作;所述收到隊(duì)列用于保存從其他協(xié)同 站點(diǎn)發(fā)到本站點(diǎn)上的操作;所述合成隊(duì)列為生成隊(duì)列和收到隊(duì)列的集合,其操作的排列順 序基于本站點(diǎn)發(fā)出操作和收到操作的時(shí)間順序;所述執(zhí)行隊(duì)列為從合成隊(duì)列中每取出一個(gè) 操作,執(zhí)行后就放入執(zhí)行隊(duì)列;所述等待隊(duì)列存放需要等待的操作。所述協(xié)同CAD編輯系統(tǒng)可以快速的將合成隊(duì)列里即將操作的事件和執(zhí)行隊(duì)列里 已經(jīng)執(zhí)行的事件相比較,它們之間的狀態(tài)有包括A.它們之間不存在因果關(guān)系,那么即將操作的事件可以被直接執(zhí)行并移動(dòng)到已執(zhí) 行的隊(duì)列中;B.如果它們之間存在因果關(guān)系,并且即將執(zhí)行的操作的所有的因操作都已經(jīng)被執(zhí) 行,那么此操作也可以被執(zhí)行并移動(dòng)到執(zhí)行隊(duì)列中;C.如果他們之間存在因果關(guān)系,并且即將操作的操作的其中一個(gè)因操作還沒有被 執(zhí)行,那么此操作將會(huì)等待它的因操作都被執(zhí)行,在此期間,它將被放到等待隊(duì)列中。本發(fā)明具有以下優(yōu)點(diǎn)和積極效果1)給用戶提供了一個(gè)自然,自由并且快速的交互界面;2)為協(xié)同CAD編輯提供了一種低約束的并發(fā)控制和一致性維護(hù);3)通過調(diào)整CAD建模時(shí)的操作命令的參數(shù)來用不同的執(zhí)行順序和執(zhí)行效果來取 得結(jié)果的收斂。


圖IA是不同執(zhí)行順序的時(shí)間序列圖。圖IB是圖IA中不同執(zhí)行順序?qū)е碌牟煌瑘?zhí)行結(jié)果的示意圖。圖2是實(shí)時(shí)協(xié)同CAD編輯系統(tǒng)得時(shí)間序列圖。圖3是基于合成隊(duì)列的執(zhí)行結(jié)果示意圖。圖4是基于因果關(guān)系和多果優(yōu)先權(quán)的執(zhí)行結(jié)果示意圖。
圖5是基于因果關(guān)系和多果優(yōu)先權(quán)并應(yīng)用了三維CAD協(xié)同轉(zhuǎn)換的執(zhí)行結(jié)果示意 圖。
具體實(shí)施例方式本發(fā)明提供的一種在協(xié)同的CAD編輯系統(tǒng)中基于3D語義的操作轉(zhuǎn)換的方法,包括 以下步驟步驟1 每個(gè)站點(diǎn)上都有5個(gè)隊(duì)列生成隊(duì)列,收到隊(duì)列,合成隊(duì)列,執(zhí)行隊(duì)列和等 待隊(duì)列。每個(gè)站點(diǎn)上的用戶都可以自由的發(fā)出操作。此操作一旦生成,會(huì)按照本站點(diǎn)的時(shí) 間順序加入到本站點(diǎn)的合成隊(duì)列并同時(shí)發(fā)送到其他的協(xié)同站點(diǎn)上;當(dāng)前站點(diǎn)收到其他協(xié)同 站點(diǎn)的操作后,根據(jù)本站點(diǎn)的時(shí)間順序自動(dòng)加入到本站點(diǎn)的合成隊(duì)列。步驟2 系統(tǒng)將自動(dòng)從合成隊(duì)列的開始取出一個(gè)操作,并自動(dòng)判斷此操作可以被 立即執(zhí)行還是需要放入等待隊(duì)列;步驟3 當(dāng)此操作可以被立即執(zhí)行時(shí),站點(diǎn)自動(dòng)判斷此操作是否需要被進(jìn)行操作 轉(zhuǎn)換如果需要進(jìn)行操作轉(zhuǎn)換,將按照3D協(xié)同CAD的操作轉(zhuǎn)換規(guī)則對其轉(zhuǎn)換,并執(zhí)行轉(zhuǎn)換后 的狀態(tài);否則,此操作可以被直接執(zhí)行,并放入到執(zhí)行隊(duì)列中。步驟4:如果當(dāng)前操作被執(zhí)行后,系統(tǒng)要立即查看當(dāng)前站點(diǎn)上等待隊(duì)列中是否有 被觸發(fā)的操作。如有,則按照等待隊(duì)列中操作選擇的3D語義優(yōu)先級(jí)來選擇需要被執(zhí)行的操 作,然后跳到步驟3。否則,在合成隊(duì)列中查看是否還有沒有執(zhí)行的操作,如有,跳到步驟2 ; 否則,跳到步驟5;步驟5 協(xié)同CAD編輯完成。步驟1所說的5個(gè)隊(duì)列生成隊(duì)列,收到隊(duì)列,合成隊(duì)列,執(zhí)行隊(duì)列和等待隊(duì)列,這 5個(gè)隊(duì)列存在于每個(gè)協(xié)同的用戶站點(diǎn)上,并且每個(gè)隊(duì)列中的操作都基于時(shí)間排列。生成隊(duì)列 用于保存當(dāng)前站點(diǎn)發(fā)出的操作。收到隊(duì)列用于保存從其他協(xié)同站點(diǎn)發(fā)到本站點(diǎn)上的操作。 合成隊(duì)列為生成隊(duì)列和收到隊(duì)列的集合,其操作的排列順序基于本站點(diǎn)發(fā)出操作和收到操 作的時(shí)間順序。從合成隊(duì)列中每取出一個(gè)操作,執(zhí)行后就放入執(zhí)行隊(duì)列。等待隊(duì)列存放需 要等待的操作。步驟1中所述的每個(gè)站點(diǎn)上的用戶都可以自由的發(fā)出操作,例如生成實(shí)體,或在 已生成的實(shí)體中挖去一部分。與這兩種操作對應(yīng)的是兩種基本的布爾運(yùn)算,即加運(yùn)算和減 運(yùn)算。當(dāng)前CAD系統(tǒng)中的主流技術(shù)是基于歷史事件的實(shí)體造型,過程表示(即一系列的布 爾運(yùn)算)被用于描述和構(gòu)造實(shí)體模型。在建模的過程中,用戶需要交互的加入和刪除實(shí)體, 實(shí)體的特征也被分為兩類正特征/加特征和負(fù)特征/減特征。在語義學(xué)上,用戶在原來 實(shí)體上添加另外一個(gè)實(shí)體等同于對這兩個(gè)實(shí)體做并運(yùn)算。用戶刪除一個(gè)實(shí)體等同于在原來 的實(shí)體上做減運(yùn)算。在布爾運(yùn)算中,并運(yùn)算和減運(yùn)算對應(yīng)于實(shí)體造型中的添加和刪除操作。 在真實(shí)的三維CAD系統(tǒng)中,交運(yùn)算一般不會(huì)被用于基于歷史事件的實(shí)體造型中,實(shí)際上它 等同于從原來的實(shí)體中減去冗余的部分而得到相交后的共同的那一部分實(shí)體。所以,從本 質(zhì)上,交運(yùn)算可以簡化為減運(yùn)算。在這種意義上,我們需要考慮的操作和協(xié)同文本系統(tǒng)中的 插入和刪除操作類似。在協(xié)同CAD編輯系統(tǒng)中,每個(gè)布爾運(yùn)算都包括以下屬性特性一在協(xié)同CAD系統(tǒng)中,每個(gè)布爾運(yùn)算都包括以下兩個(gè)屬性(1)針對的物體,即三維CAD編輯系統(tǒng)中的實(shí)體;(2)與實(shí)體相連的操作類型。因此一個(gè)操作可以表示為0 = {0entity,OtypJ。Omtity代表操作0針對的實(shí)體;Otype代表布爾操作0的類型,即并操作和減操 作。特性二 我們把在多用戶協(xié)同CAD編輯系統(tǒng)中的操作的唯一線性組織順序叫做協(xié) 同文本。因此,它具有三個(gè)特征(1)不同站點(diǎn)產(chǎn)生的一系列操作;(2)操作序列;(3)操作類型。根據(jù)特性一和特性二,在三維交互過程中我們有三種類別的協(xié)同文本 (CollaborationContext,簡禾爾 CC)。CC-I所有操作的類型都是并操作;CC-2所有操作的類型都是減操作;CC-3操作的類型即包括并操作,又包括減操作。根據(jù)布爾運(yùn)算的兩個(gè)基本特性(交換性和結(jié)合性),僅僅在CC-3中,操作序列可能 會(huì)導(dǎo)致最后的結(jié)果不收斂。因此,它是潛在的可能導(dǎo)致分歧的文本。協(xié)同CAD編輯系統(tǒng)中的實(shí)體與協(xié)同文本編輯系統(tǒng)中的字符不一樣,它是在三維空 間中產(chǎn)生和操作的。根據(jù)實(shí)體是否重疊,并發(fā)操作可能會(huì)在重疊的部分產(chǎn)生沖突,并且導(dǎo)致 結(jié)果的不收斂。在CC-3的情況下,如果操作的實(shí)體重疊,并發(fā)的操作之間將會(huì)產(chǎn)生影響。因 此,我們要定義一個(gè)基于三維圖形的語義關(guān)系。語義關(guān)系1不可交換的并發(fā)兩個(gè)操作不可交換,當(dāng)且僅當(dāng)他們滿足(I)O11 O2 ; (2) Entity (O1) Π Entity(O2) ^ NULL ; (3) Boolean (O1) ^ Boolean (O2).語義關(guān)系2可交換的并發(fā)兩個(gè)并發(fā)操作他們可以交換,當(dāng)且僅當(dāng)他 們滿 H :(l)0j Io2 ; (2) Entity(O1) Π Entity(O2) = NULL ; or (I)O1II 02; (2) Entity(O1) Π Entity(O2) ^ NULL ; (3) Boolean (O1) = Boolean (O2);為了取得對于不可交換的并發(fā)操作的一致性維護(hù),我們也引入了操作轉(zhuǎn)換的思 想。我們用圖1來加以解釋。假設(shè)在兩個(gè)站點(diǎn)上實(shí)體的構(gòu)建過程具有同一笛卡爾坐標(biāo)系, 用戶1在站點(diǎn)1產(chǎn)生操作O1,并把它傳送到站點(diǎn)2.當(dāng)O1在站點(diǎn)1和站點(diǎn)2被執(zhí)行后,將會(huì) 產(chǎn)生一個(gè)中心點(diǎn)在(0,0,0),長寬高分別為80,80,20的立方體&1。用戶1接著在站點(diǎn)1上 產(chǎn)生操作02,02在立方體al上挖去一個(gè)小的立方體a2,它是以中心點(diǎn)為(0,0,10)的長寬 高分別為50,50,20的立方體。同時(shí),用戶2在站點(diǎn)2產(chǎn)生操作O3,它是產(chǎn)生一個(gè)中心點(diǎn)在 (0,0,50)的圓柱體bl,此圓柱體底面半徑為20,高為100,并把它加到立方體al上。當(dāng)兩 個(gè)站點(diǎn)交換操作并執(zhí)行后,兩個(gè)站點(diǎn)上最終結(jié)果將不收斂,如圖1所示?;谝陨系那闆r, 我們的解決辦法是在站點(diǎn)2上,當(dāng)O3在O2之前執(zhí)行時(shí),O2將會(huì)執(zhí)行操作轉(zhuǎn)換來消除O3操 作帶來的結(jié)果不一致的影響。這里,我們可以表示為02’ = 02-03,“_”代表從02操作中消 除了 O3的影響。在運(yùn)用操作轉(zhuǎn)換的思想后,在站點(diǎn)2上執(zhí)行的操作不是O2,而是02’。怎樣找出O2操作,并且怎樣利用協(xié)同CAD操作轉(zhuǎn)換的方法對O2消除O3的影響。我 們分步闡述我們的思想。步驟⑴沒有任何技術(shù)的多用戶交互過程。很明顯,不同用戶站點(diǎn)上的結(jié)果將不 收斂;步驟(2)基于因果關(guān)系和多用戶優(yōu)先權(quán)的多用戶交互過程。不同用戶站點(diǎn)上的結(jié) 果仍然不收斂;
7
步驟(3)基于因果關(guān)系,多用戶優(yōu)先權(quán)和協(xié)同cad操作轉(zhuǎn)換規(guī)則的多用戶交互過 程,不同用戶站點(diǎn)上將得到收斂的結(jié)果。在步驟(2)中基于因果關(guān)系和多用戶優(yōu)先權(quán)的多用戶交互過程。在我們的協(xié)同 CAD系統(tǒng)中,狀態(tài)向量和它在協(xié)同文本中有同樣的功效,即被用來確定因果關(guān)系(“原因”和 “結(jié)果”)。根據(jù)其作用,協(xié)同CAD系統(tǒng)可以快速的將合成隊(duì)列里即將操作的事件和執(zhí)行隊(duì)列 里已經(jīng)執(zhí)行的事件相比較。它們之間的狀態(tài)有如下三種(1)它們之間不存在因果關(guān)系,那么即將操作的事件可以被直接執(zhí)行并移動(dòng)到已 執(zhí)行的隊(duì)列中;(2)如果它們之間存在因果關(guān)系,并且即將執(zhí)行的操作的所有的因操作都已經(jīng)被 執(zhí)行,那么此操作也可以被執(zhí)行并移動(dòng)到執(zhí)行隊(duì)列中。(3)如果他們之間存在因果關(guān)系,并且即將操作的其中一個(gè)因操作還沒有被執(zhí)行, 那么此操作將會(huì)等待它的因操作都被執(zhí)行,在此期間,它將被放到等待隊(duì)列中。當(dāng)一個(gè)“因操作”觸發(fā)等待隊(duì)列中的多個(gè)“果操作”,讓它們可以被同時(shí)執(zhí)行時(shí),新 的問題也會(huì)產(chǎn)生。所以,我們針對協(xié)同CAD編輯系統(tǒng)引入了語義優(yōu)先權(quán)來決定執(zhí)行的順序。多果優(yōu)先權(quán)1 如果多個(gè)“果操作”是并操作和減操作的集合,那么協(xié)同CAD系統(tǒng)將 先執(zhí)行并操作,然后執(zhí)行減操作。如果我們只考慮每個(gè)站點(diǎn)上的收斂情況,我們也能夠這樣選擇優(yōu)先權(quán)例如,減操 作優(yōu)于并操作。在這種情況下,我們也可以取得一致性收斂的結(jié)果。然而,我們所考慮的是 三維空間中的交換語義。一般而言,用戶應(yīng)該首先生成實(shí)體,然后用戶才能發(fā)出減操作在此 實(shí)體上操作。所以,實(shí)體應(yīng)該先通過并操作生成。多果優(yōu)先權(quán)2 如果多個(gè)“果操作”是由單一的操作類型組成(即要么是并操作,要 么是減操作),協(xié)同的CAD編輯系統(tǒng)將根據(jù)傳統(tǒng)的優(yōu)先權(quán)來執(zhí)行操作(例如協(xié)同文本編輯系 統(tǒng)中常用的站點(diǎn)號(hào))。在我們的協(xié)同CAD編輯系統(tǒng)中,小的站點(diǎn)號(hào)具有高的優(yōu)先級(jí)。另外,在協(xié)同CAD編輯系統(tǒng)中,多果優(yōu)先權(quán)1比多果優(yōu)先權(quán)2具有更高的優(yōu)先級(jí)。 首先,基于優(yōu)先權(quán)1,多個(gè)“果操作”的集合被分為兩個(gè)部分{并操作} + {減操作}。其中并 操作在前,減操作在后。然后基于優(yōu)先權(quán)2,每個(gè)部分根據(jù)站點(diǎn)號(hào)再排列。下面我們來看看加入?yún)f(xié)同CAD操作轉(zhuǎn)換規(guī)則之后的執(zhí)行過程。以圖2為例。圖2的執(zhí)行隊(duì)列中有兩種類型的并發(fā)關(guān)系。(1)可交換的并發(fā)。例 如O11和031,O12和023。對于前者,兩個(gè)操作都是并發(fā)的,并且他們具有相同的操作類型,所 以他們之間是可交換的并發(fā),并且相互之間并不影響。我們再來看后者,兩個(gè)操作都是并發(fā) 的,并且是不同的操作類型。然而,它們的操作實(shí)體之間并沒有重合的部分。在這兩種情況 下,不需要任何操作轉(zhuǎn)換。(2)不可交換的并發(fā)。例如,012和031。O12是減操作,O31是并操 作,它們的操作實(shí)體有重合的部分。所以,按O12O31和O31O12兩種順序執(zhí)行時(shí)將會(huì)導(dǎo)致不同 的結(jié)果。這種情況下,協(xié)同CAD編輯系統(tǒng)將需要引入操作轉(zhuǎn)換。對于不可交換的并發(fā),我們首先看一個(gè)簡單的例子。在圖1中,如果利用操作轉(zhuǎn) 換,將會(huì)存在兩種轉(zhuǎn)換方向(1)將O2O3轉(zhuǎn)換成0203’,轉(zhuǎn)換后的結(jié)果和O3O2的執(zhí)行結(jié)果相同。 (2)將O3O2轉(zhuǎn)換成O3O2 ’,轉(zhuǎn)換后的結(jié)果和O2O3的結(jié)果相同。在協(xié)同CAD編輯系統(tǒng)中,怎樣選 擇轉(zhuǎn)換方向呢?根據(jù)三維語義,我們可以得到兩種結(jié)果(1)按照O2O3執(zhí)行可以得到一個(gè)大體積的實(shí)體;⑵按照O3O2的順序執(zhí)行可以得到一個(gè)小體積的實(shí)體。因此,在協(xié)同CAD編輯系統(tǒng)中,我們對每對不可交換的并發(fā)操作采用大體積策略, 原因是大體積可以在編輯時(shí)給用戶提供更多的信息。(這和協(xié)同文本編輯系統(tǒng)相似,站點(diǎn)的 優(yōu)先級(jí)完全可以由用戶指定。)當(dāng)每步都利用大體積策略后,在不同的用戶站點(diǎn)之間的最 后結(jié)果將會(huì)收斂。如果我們要將大體積策略利用到圖1,我們應(yīng)該將O3O2(小體積)轉(zhuǎn)換成 O3O2',轉(zhuǎn)換后的結(jié)果就是O2O3順序執(zhí)行得到的大體積實(shí)體。在轉(zhuǎn)換策略被指定后,接下來我們將討論怎樣對操作進(jìn)行轉(zhuǎn)換。典型的轉(zhuǎn)換函數(shù)可以被表示如下將Oa對已執(zhí)行的操作Ob轉(zhuǎn)換,得到轉(zhuǎn)換后的操作0/。在協(xié)同CAD編輯系統(tǒng)中,我們基于以下規(guī)則來選擇0A,Ob并將它們應(yīng)用轉(zhuǎn)換規(guī)則根據(jù)大體積策略,轉(zhuǎn)換只針對減操作。因此,在協(xié)同CAD編輯系統(tǒng)中Oa應(yīng)該是減 操作。根據(jù)不可交換的并發(fā),需要被轉(zhuǎn)換的減操作的對象是那些已經(jīng)執(zhí)行的并操作,并 且這些并操作與此減操作不可交換。因此,ObS該是已經(jīng)執(zhí)行的并操作,并且是與Oa不可 交換的。在確定了 0A,Ob后,怎樣構(gòu)建一個(gè)操作轉(zhuǎn)換函數(shù)來將Oa針對Ob轉(zhuǎn)換為0/。在協(xié) 同的文本編輯系統(tǒng)中,操作轉(zhuǎn)換函數(shù)通過調(diào)整插入和刪除的參數(shù)。然而,在協(xié)同的CAD編輯 系統(tǒng)中,操作轉(zhuǎn)換函數(shù)將從Oa中移除Oa和Ob的重疊部分來達(dá)到此目的。用這種方法,協(xié)同 CAD編輯系統(tǒng)從Oa中去除了 Ob的影響。核心的協(xié)同CAD操作轉(zhuǎn)換函數(shù)可以表示為0A,= (Oa-Ob).此函數(shù)表示為從Oa中 移除了 Oa和Ob的重疊的部分。下面結(jié)合一個(gè)實(shí)施例來對本發(fā)明作進(jìn)一步說明我們依然按照三個(gè)步驟來對進(jìn)行 闡述步驟(1)沒有任何技術(shù)的多用戶交互過程。步驟(2)基于因果關(guān)系和多用戶優(yōu)先權(quán)的多用戶交互過程。步驟(3)基于因果關(guān)系,多用戶優(yōu)先權(quán)和協(xié)同CAD操作轉(zhuǎn)換規(guī)則的多用戶交互過程。針對步驟(1)的沒有任何技術(shù)的多用戶交互過程,首先,我們看一下圖2中的操作 的三維語義。這7個(gè)三維操作具有同一個(gè)笛卡爾坐標(biāo)系統(tǒng)。操作和它們的三維語義被描述 如下站點(diǎn)1 操作O11和O12在站點(diǎn)1生成。O11生成一個(gè)中心點(diǎn)在(0,0,0),高為40,底 面半徑為35的圓柱體cyl。O12生成另外一個(gè)中心在(0,0,10),底面半徑為30,高為25的 圓柱體cy2,并從cyl中減去cy2。站點(diǎn)2 操作O21, O22和O23在站點(diǎn)2生成。O21生成一個(gè)中心點(diǎn)在(0,0,25),底面 半徑為40,高為10的扁圓柱fcy ;O22生成一個(gè)中心點(diǎn)也在(0,0,25),底面半徑為30,高為 90的長圓柱ley,并從fcy中減去ley ;O23生成四個(gè)扁的平截頭體fru,他們的底面半徑都 為 7,高為 10,中心點(diǎn)分別在(0,40,25), (0, -40,25), (40,0,25)和(-40,0,25),并將其加 到fcy上。站點(diǎn)3 操作O31和O32在站點(diǎn)3生成。O31生成一個(gè)中心點(diǎn)在(15,15,-5),長寬高
9分別為40,30,30的立方體;O32生成四個(gè)底面半徑為5,高為50的圓柱體fcy2,他們的中心 點(diǎn)分別位于(-38,0,25), (38,0,25), (0,38,25), (0,_38,25),并將其從平截頭體fru中減 去,得到四個(gè)洞。圖2中三個(gè)站點(diǎn)上的合成隊(duì)列分別為站點(diǎn)1 =O21O22O11O12O23O31O32 ;站點(diǎn)2 =O21O22O31O23O12O32O11 ;站點(diǎn)3 =O31O21O23O32O11O22O12 ;在第一種情況下,每個(gè)站點(diǎn)上的執(zhí)行隊(duì)列和上面的合成隊(duì)列完全相同,因?yàn)闆]有 任何調(diào)整。當(dāng)每個(gè)站點(diǎn)上的所有操作都執(zhí)行完后,最終的結(jié)果如圖3所示,顯而易見,結(jié)果 不收斂。步驟(2)是基于因果關(guān)系和多用戶優(yōu)先權(quán)的多用戶交互過程。例如,在圖2中, 當(dāng)O23到達(dá)站點(diǎn)1的時(shí)候,因?yàn)镺31與O23存在因果關(guān)系(O31 — O23),并且O31還沒有被執(zhí)行, 所以O(shè)23將從合成隊(duì)列中移出,并存儲(chǔ)到等待隊(duì)列中。直到O31被執(zhí)行后,O32才能從等待隊(duì) 列中移出,并被立即執(zhí)行。然而,當(dāng)一個(gè)“因操作”觸發(fā)等待隊(duì)列中的多個(gè)“果操作”使它們 可以被同時(shí)執(zhí)行時(shí),新的問題也會(huì)產(chǎn)生。在圖2中,站點(diǎn)3上,當(dāng)023,O32, O11到達(dá)時(shí),因?yàn)?O22 — O23, O22 — O32, O22 — O11,但是O22還沒有到達(dá),所以023,O32, O11被存儲(chǔ)在等待隊(duì)列中。 一旦O22被執(zhí)行,O23, O32, O11將會(huì)從等待隊(duì)列中執(zhí)行。然而,現(xiàn)在的問題是應(yīng)該按照怎樣的 順序執(zhí)行“果操作”?多個(gè)“果操作”執(zhí)行時(shí)應(yīng)該按照他們之間的因果關(guān)系。因?yàn)镺23 — O32,所以O(shè)23應(yīng) 該在O32之前被執(zhí)行。然而,O23I O11, O11IIO32,所以我們不能僅僅根據(jù)因果關(guān)系來決定他們 之間的執(zhí)行次序?;诖朔N情形,我們針對協(xié)同CAD系統(tǒng)引入了語義優(yōu)先權(quán)來決定執(zhí)行的 順序。多果優(yōu)先權(quán)1 如果多個(gè)“果操作”是并操作和減操作的集合,那么協(xié)同CAD系統(tǒng)將 先執(zhí)行并操作,然后執(zhí)行減操作。多果優(yōu)先權(quán)2 如果多個(gè)“果操作”是由單一的操作類型組成(即要么是并操作,要 么是減操作),協(xié)同的CAD編輯系統(tǒng)將根據(jù)傳統(tǒng)的優(yōu)先權(quán)來執(zhí)行操作(例如協(xié)同文本系統(tǒng)中 常用的站點(diǎn)號(hào))。在我們的協(xié)同CAD編輯系統(tǒng)中,小的站點(diǎn)號(hào)具有高的優(yōu)先級(jí)。另外,在協(xié)同CAD編輯系統(tǒng)中,多果優(yōu)先權(quán)1比多果優(yōu)先權(quán)2具有更高的優(yōu)先級(jí)。 首先,基于優(yōu)先權(quán)1,多個(gè)“果操作”的集合被分為兩個(gè)部分{并操作} + {減操作}。其中并 操作在前,減操作在后。然后基于優(yōu)先權(quán)2,每個(gè)部分根據(jù)站點(diǎn)號(hào)再排列。所以根據(jù)優(yōu)先權(quán) 語義,在圖2的例子中,執(zhí)行的順序是0n023032。因此,三個(gè)站點(diǎn)上的操作的執(zhí)行順序是站點(diǎn)1 =O21O22O11O12O31O23O32 ;站點(diǎn)2 =O21O22O31O23O32O11O12 ;站點(diǎn)3 =O31O21O22O11O23O32O12 ;圖4是基于因果關(guān)系和多果優(yōu)先權(quán)的執(zhí)行結(jié)果,但是站點(diǎn)之間的結(jié)果依然不收 斂。所以,當(dāng)每個(gè)站點(diǎn)上的執(zhí)行順序都被決定后,我們將利用協(xié)同CAD操作轉(zhuǎn)換。步驟3是在步驟2的基礎(chǔ)上加入?yún)f(xié)同CAD操作轉(zhuǎn)換規(guī)則。圖2的執(zhí)行隊(duì)列中有兩種類型的并發(fā)關(guān)系。(1)可交換的并發(fā)。例如O11和031,012和023。對于前者,兩個(gè)操作都是并發(fā)的,并且他們具有相同的操作類型。根據(jù)上節(jié)的分 析,他們之間是可交換的并發(fā),并且相互之間并不影響。我們再來看后者,兩個(gè)操作都是并 發(fā)的,并且是不同的操作類型。然而,它們的操作實(shí)體之間并沒有重合的部分。在這兩種情 況下,不需要任何操作轉(zhuǎn)換。(2)不可交換的并發(fā)。例如,012和031。O12是減操作,O31是并 操作,它們的操作實(shí)體有重合的部分。所以,按O12O31和O31O12兩種順序執(zhí)行時(shí)將會(huì)導(dǎo)致不 同的結(jié)果。這種情況下,協(xié)同CAD編輯將需要操作轉(zhuǎn)換。對于不可交換的并發(fā),我們首先看一個(gè)簡單的例子。在圖1中,如果利用操作轉(zhuǎn) 換,將會(huì)存在兩種轉(zhuǎn)換方向(1)將O2O3轉(zhuǎn)換成0203’,轉(zhuǎn)換后的結(jié)果和O3O2的執(zhí)行結(jié)果相同。 (2)將O3O2轉(zhuǎn)換成0302’,轉(zhuǎn)換后的結(jié)果和O2O3的結(jié)果相同。在協(xié)同CAD編輯系統(tǒng)中,怎樣選擇轉(zhuǎn)換方向呢?根據(jù)三維語義,我們可以得到兩種結(jié)果(1)按照O2O3執(zhí)行可以得到一個(gè)大體積的實(shí)體;(2)按照O3O2的順序執(zhí)行可以得到一個(gè)小體積的實(shí)體。因此,在協(xié)同CAD編輯系統(tǒng)中,我們對每對不可交換的并發(fā)操作采用大體積策略, 原因是大體積可以在編輯時(shí)給用戶提供更多的信息。(這和協(xié)同文本編輯系統(tǒng)相似,站點(diǎn) 的優(yōu)先級(jí)完全是由用戶指定。)當(dāng)每一步利用大體積策略后,在不同的用戶站點(diǎn)之間的最 后結(jié)果將會(huì)收斂。如果我們要將大體積策略利用到圖1,我們應(yīng)該將O3O2 (小體積)轉(zhuǎn)換成 O3O2',轉(zhuǎn)換后的結(jié)果就是O2O3順序執(zhí)行得到的大體積實(shí)體。典型的轉(zhuǎn)換函數(shù)可以被表示如下將Oa對已執(zhí)行的操作Ob轉(zhuǎn)換,得到轉(zhuǎn)換后的操作0/ .在協(xié)同cad系統(tǒng)中,我們基于以下規(guī)則來選擇0A,Ob并將它們應(yīng)用轉(zhuǎn)換規(guī)則根據(jù)大體積策略,轉(zhuǎn)換只針對減操作。因此,在協(xié)同CAD系統(tǒng)中Oa應(yīng)該是減操作。根據(jù)不可交換的并發(fā),需要被轉(zhuǎn)換的減操作的對象是那些已經(jīng)執(zhí)行的并操作,并 且這些并操作與此減操作不可交換。因此,ObS該是已經(jīng)執(zhí)行的并操作,并且是與Oa不可 交換的。讓我們看圖2中的一個(gè)例子。在站點(diǎn)1,操作O32需要執(zhí)行操作轉(zhuǎn)換,因?yàn)樗鼭M足 協(xié)同CAD操作轉(zhuǎn)換規(guī)則032是一個(gè)減操作,并且在O32之前已經(jīng)執(zhí)行的操作中間,存在已經(jīng) 執(zhí)行的并操作O11,它與O32不可交換,并且他們的操作對象之間有重疊的部分。類似的,用 戶站點(diǎn)2的O12,用戶站點(diǎn)3的022,O32, O12都需要履行協(xié)同CAD操作轉(zhuǎn)換。我們用0’表示操作0已經(jīng)轉(zhuǎn)換過的狀態(tài)。所以當(dāng)操作0被執(zhí)行操作轉(zhuǎn)換后,0 = >0’。因此,在操作轉(zhuǎn)換后,每個(gè)站點(diǎn)上已經(jīng)執(zhí)行的操作序列變?yōu)橛脩粽军c(diǎn)1 0 2 θ22θ 012031023032 (O32- O11);用戶站點(diǎn)2:0
21Ο22Ο31Ο23Ο32Ο1Ι
O12,(0
12_031_〇23);用戶站點(diǎn)3 =O31O21O22,(0
22_〇31) 0 〇23〇32 (〇32_
O11) 0
12 (0 2_031_〇23) 0圖5是基于因果關(guān)系和多果優(yōu)先權(quán)并應(yīng)用了三維CAD協(xié)同轉(zhuǎn)換的執(zhí)行結(jié)果??梢姡?最終不同站點(diǎn)上的結(jié)果是收斂的。上述實(shí)例用來解釋說明本發(fā)明,而不是對本發(fā)明進(jìn)行限制,在本發(fā)明的精神和權(quán) 利要求的保護(hù)范圍內(nèi),對本發(fā)明做出任何的修改和改變,都落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
一種在協(xié)同CAD編輯系統(tǒng)中基于3D語義的操作轉(zhuǎn)換方法,其特征在于,包括以下步驟所述協(xié)同CAD編輯系統(tǒng)中的每個(gè)站點(diǎn)上都包括生成隊(duì)列,收到隊(duì)列,合成隊(duì)列,執(zhí)行隊(duì)列和等待隊(duì)列;①所述協(xié)同CAD編輯系統(tǒng)中每個(gè)站點(diǎn)的用戶自由發(fā)出操作,所述操作生成后,按照所述每個(gè)站點(diǎn)的時(shí)間順序加入到站點(diǎn)各自的合成隊(duì)列中,并同時(shí)發(fā)送到其它的協(xié)同站點(diǎn)上;②當(dāng)前站點(diǎn)收到其它協(xié)同站點(diǎn)的操作后,根據(jù)當(dāng)前站點(diǎn)的時(shí)間順序自動(dòng)加入到當(dāng)前站點(diǎn)的合成隊(duì)列中;③自動(dòng)從合成隊(duì)列的開始取出一個(gè)操作,并自動(dòng)判斷此操作可以被立即執(zhí)行還是需要放入等待隊(duì)列;④當(dāng)取出的操作可以被立即執(zhí)行時(shí),站點(diǎn)自動(dòng)判斷此操作是否需要被進(jìn)行操作轉(zhuǎn)換如果需要進(jìn)行操作轉(zhuǎn)換,將按照3D協(xié)同CAD的操作轉(zhuǎn)換規(guī)則對其轉(zhuǎn)換,并執(zhí)行轉(zhuǎn)換后的狀態(tài);否則,此操作可以被直接執(zhí)行,并放入到執(zhí)行隊(duì)列中;⑤如果當(dāng)前操作被執(zhí)行后,所述協(xié)同CAD編輯系統(tǒng)要立即查看當(dāng)前站點(diǎn)上等待隊(duì)列中是否有被觸發(fā)的操作;如果有,則按照等待隊(duì)列中操作選擇的3D語義優(yōu)先級(jí)來選擇需要被執(zhí)行的操作,然后跳到步驟④;如果沒有,則執(zhí)行下述步驟;⑥在合成隊(duì)列中查看是否還有沒有執(zhí)行的操作,如果有,執(zhí)行步驟③;否則,執(zhí)行步驟⑦;⑦完成協(xié)同CAD編輯。
2.根據(jù)權(quán)利要求1所述的在協(xié)同CAD編輯系統(tǒng)中基于3D語義的操作轉(zhuǎn)換方法,其特征 在于所述生成隊(duì)列用于保存當(dāng)前站點(diǎn)發(fā)出的操作;所述收到隊(duì)列用于保存從其他協(xié)同站 點(diǎn)發(fā)到本站點(diǎn)上的操作;所述合成隊(duì)列為生成隊(duì)列和收到隊(duì)列的集合,其操作的排列順序 基于本站點(diǎn)發(fā)出操作和收到操作的時(shí)間順序;所述執(zhí)行隊(duì)列為從合成隊(duì)列中每取出一個(gè)操 作,執(zhí)行后就放入執(zhí)行隊(duì)列;所述等待隊(duì)列存放需要等待的操作。
3.根據(jù)權(quán)利要求1所述的在協(xié)同CAD編輯系統(tǒng)中基于3D語義的操作轉(zhuǎn)換方法,其特征 在于所述協(xié)同CAD編輯系統(tǒng)可以快速的將合成隊(duì)列里即將操作的事件和執(zhí)行隊(duì)列里已經(jīng) 執(zhí)行的事件相比較,它們之間的狀態(tài)有包括A.它們之間不存在因果關(guān)系,那么即將操作的事件可以被直接執(zhí)行并移動(dòng)到已執(zhí)行的 隊(duì)列中;B.如果它們之間存在因果關(guān)系,并且即將執(zhí)行的操作的所有的因操作都已經(jīng)被執(zhí)行, 那么此操作也可以被執(zhí)行并移動(dòng)到執(zhí)行隊(duì)列中;C.如果他們之間存在因果關(guān)系,并且即將操作的其中一個(gè)因操作還沒有被執(zhí)行,那么 此操作將會(huì)等待它的因操作都被執(zhí)行,在此期間,它將被放到等待隊(duì)列中。
全文摘要
本發(fā)明涉及計(jì)算機(jī)支持協(xié)同工作技術(shù)領(lǐng)域,尤其涉及一種在協(xié)同的CAD編輯系統(tǒng)中基于3D語義的操作轉(zhuǎn)換方法。本發(fā)明通過制定針對于等待隊(duì)列中操作選擇的3D語義優(yōu)先級(jí),和制定了一種在操作沖突時(shí)決定操作轉(zhuǎn)換方向的操作轉(zhuǎn)換策略和操作轉(zhuǎn)換法則來提供一種低約束的用戶交互,并且在協(xié)同的CAD編輯系統(tǒng)中取得一致性結(jié)果的方法。本發(fā)明的方法運(yùn)用了一種更加自由的一致性維護(hù)方法,因此在保證了不同站點(diǎn)之間結(jié)果的一致性收斂的同時(shí),還可以提供一個(gè)自然,自由并且快速的多用戶交互界面。
文檔編號(hào)G06F17/50GK101894186SQ201010221498
公開日2010年11月24日 申請日期2010年7月2日 優(yōu)先權(quán)日2010年7月2日
發(fā)明者何發(fā)智, 劉華俊 申請人:武漢大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
宝丰县| 保德县| 延寿县| 红桥区| 英吉沙县| 紫金县| 滦平县| 武汉市| 泊头市| 交城县| 璧山县| 大田县| 榆社县| 宝坻区| 营口市| 桃源县| 资阳市| 大名县| 万全县| 荃湾区| 大名县| 唐河县| 广州市| 公主岭市| 上虞市| 手机| 铁岭县| 丰宁| 中牟县| 曲阳县| 孟州市| 玉环县| 宁蒗| 垦利县| 韶山市| 扬州市| 桃江县| 湖州市| 扶风县| 巨鹿县| 南川市|