新四季網

一種動態碰撞檢測的方法及裝置與流程

2024-03-30 05:30:05


本發明涉及虛擬實境技術輔助產品設計分析技術領域,特別涉及一種動態碰撞檢測的方法及裝置。



背景技術:

虛擬維修是指運用虛擬實境技術和計算機仿真技術,建立一個包含裝備虛擬樣機、維修人員、維修工具、維修設備等信息的虛擬環境,並在該環境下模擬產品的維修過程,對設備的故障進行分析和維修預處理,模擬拆卸過程,預估維修作業的時間,制定設備部件拆卸的順序和預估維修費用等,對產品維修性方面,如維修過程中的可視性、零部件可達性以及零部件的拆裝操作性進行分析研究,從而及早發現產品維修性設計中的缺陷並提出改進。所以,虛擬維修技術將有關產品維修性方面的潛在問題在設計階段的早期就予以發現並輔助解決,可顯著縮短產品維修性設計時間,降低因維修事前決策不當等造成的生產中斷和費用損失。

碰撞檢測,也稱為幹涉檢測或者接觸檢測,是基於現實生活中一個普遍存在的事實:兩個不可穿透的對象不能共享相同的空間區域,而出現的技術。碰撞檢測作為虛擬實境系統中的一個關鍵組成部分,主要的任務是判斷物體模型之間、模型與場景之間是否發生了碰撞以及給出碰撞位置、穿刺深度等信息。在虛擬維修仿真中,碰撞檢測處理物體之間的位置與形狀數據,並反饋物體之間的幹涉信息,承擔著實現人機互動、保證仿真擬真度的功能。甚至,碰撞深度和方向信息還可以用來分析碰撞時力的大小和方向信息,為仿真中力反饋技術提供一定的參考。隨著產品和維修過程的複雜化程度不斷提高,用戶對虛擬維修仿真的真實性,包括仿真的實時性和精確度,提出了更高的要求。而碰撞檢測技術作為構建虛擬維修仿真過程的關鍵技術之一,其精確性和快速性極大地影響了虛擬維修仿真的實時性和準確程度。

目前,碰撞檢測的算法研究取得了一批有意義的成果,並在遊戲等領域獲得廣泛的應用。但針對虛擬維修系統的碰撞檢測算法研究不多,目前在虛擬維修仿真系統中通常借鑑或修改其它的算法加以應用,有的甚至不具有碰撞檢測的功能。然而由於虛擬維修仿真的自身特點,目前的常用碰撞檢測算法並不十分適用於虛擬維修仿真過程。要對複雜維修環境中很多物體進行快速準確的碰撞檢測還很困難,特別是對不規則物體的維修拆卸仿真,因而達不到仿真的目標要求,嚴重製約了虛擬維修技術的發展。基於此,針對虛擬維修獨有的特點進行適用於虛擬維修仿真的碰撞檢測算法研究顯得尤為必要。



技術實現要素:

根據本發明實施例提供的方案解決的技術問題是虛擬維修仿真中缺乏相應碰撞檢測方法。

根據本發明實施例提供的一種動態碰撞檢測的方法,包括:

通過分別對維修人員各肢節及多個維修對象進行虛擬膠囊化處理,得到多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體;

通過對所述多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與虛擬維修對象膠囊體間的虛擬碰撞狀態;

根據所述虛擬碰撞狀態,確定所述虛擬維修人員肢節膠囊體與所述虛擬維修對象膠囊體的碰撞空間;

利用所述碰撞空間對每個虛擬維修對象膠囊體進行切片處理,將所述碰撞空間內的每個虛擬維修對象膠囊體的切片部分作為維修對象部分;

通過對所有的維修對象部分虛擬膠囊化處理,形成維修對象虛擬膠囊群;

將所述虛擬維修人員肢節膠囊體和維修對象虛擬膠囊群進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與維修對象虛擬膠囊群的動態碰撞結果。

優選地,所述通過對所述多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體進行虛擬碰撞檢測之前,還包括:

通過對維修人員各肢節可達空間進行膠囊化處理,得到多個虛擬維修人員肢節可達空間膠囊體;

通過遍歷所有虛擬維修對象膠囊體,判斷是否存在全部處於或部分處於所述虛擬維修人員肢節可達空間膠囊體內的一個或多個虛擬維修對象膠囊體,並將其作為待檢測虛擬維修對象膠囊體;

若判斷存在全部處於或部分處於所述虛擬維修人員可達空間膠囊體內的待檢測虛擬維修對象膠囊體,則對所述虛擬維修人員肢節膠囊體和待檢測虛擬維修對象膠囊體進行虛擬碰撞檢測。

優選地,所述通過對所述虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與虛擬維修對象膠囊體間的虛擬碰撞狀態包括:

通過遍歷所有虛擬維修人員肢節膠囊體,判斷是否存在與所述待檢測虛擬維修對象膠囊體發生碰撞的一個或多個虛擬維修人員肢節膠囊體,並將其作為待檢測虛擬維修人員肢節膠囊體;

若判斷存在與所述待檢測虛擬維修對象膠囊體發生碰撞的待檢測虛擬維修人員肢節膠囊體,則獲取待檢測虛擬維修人員肢節膠囊體與待檢測虛擬維修對象膠囊體間的虛擬碰撞狀態。

優選地,所述虛擬碰撞狀態包括所述待檢測虛擬維修人員肢節膠囊體的瞬時速度和所述待檢測虛擬維修對象膠囊體上的虛擬碰撞點。

優選地,所述根據所述虛擬碰撞狀態,確定所述虛擬維修人員肢節膠囊體與所述多個虛擬維修對象膠囊體的碰撞空間包括:

根據所述虛擬維修人員肢節膠囊體的瞬時速度和所述虛擬維修對象膠囊體上的虛擬碰撞點,計算下一次虛擬碰撞時所述虛擬碰撞點的位移,並根據所述位移,得到虛擬碰撞點的虛擬位移碰撞點;

根據所述虛擬維修人員肢節膠囊體的瞬時速度,構建過所述虛擬碰撞點且垂直於所述瞬時速度方向的近法平面和過所述虛擬位移碰撞點且垂直於所述瞬時速度方向的遠法平面;

利用所述近法平面和遠發平面對所述虛擬維修人員可達空間膠囊體進行切分,得到所述虛擬維修人員肢節膠囊體與所述多個虛擬維修對象膠囊體的碰撞空間。

優選地,所述通過對所有的維修對象部分虛擬膠囊化處理,形成維修對象虛擬膠囊群包括:

通過對所有的維修對象部分虛擬膠囊化處理,得到虛擬維修對象部分膠囊體;

根據所得到的虛擬維修對象部分膠囊體,構建維修對象虛擬膠囊群。

根據本發明實施例提供的一種動態碰撞檢測的裝置,包括:

虛擬膠囊化模塊,用於通過分別對維修人員各肢節及多個維修對象進行虛擬膠囊化處理,得到多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體,以及通過對所有的維修對象部分虛擬膠囊化處理,形成維修對象虛擬膠囊群;

虛擬碰撞檢測模塊,用於通過對所述多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與虛擬維修對象膠囊體間的虛擬碰撞狀態,以及將所述虛擬維修人員肢節膠囊體和維修對象虛擬膠囊群進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與維修對象虛擬膠囊群的動態碰撞結果;

確定碰撞空間模塊,用於根據所述虛擬碰撞狀態,確定所述虛擬維修人員肢節膠囊體與所述虛擬維修對象膠囊體的碰撞空間;

切片處理模塊,用於利用所述碰撞空間對每個虛擬維修對象膠囊體進行切片處理,將所述碰撞空間內的每個虛擬維修對象膠囊體的切片部分作為維修對象部分。

優選地,所述虛擬膠囊化模塊還具體用於通過對維修人員各肢節可達空間進行膠囊化處理,得到多個虛擬維修人員肢節可達空間膠囊體。

優選地,所述虛擬碰撞檢測模塊還具體用於通過遍歷所有虛擬維修對象膠囊體,判斷是否存在全部處於或部分處於所述虛擬維修人員肢節可達空間膠囊體內的一個或多個虛擬維修對象膠囊體,並將其作為待檢測虛擬維修對象膠囊體,以及當判斷存在全部處於或部分處於所述虛擬維修人員可達空間膠囊體內的待檢測虛擬維修對象膠囊體,則對所述虛擬維修人員肢節膠囊體和待檢測虛擬維修對象膠囊體進行虛擬碰撞檢測。

優選地,所述虛擬碰撞檢測模塊還具體用於通過遍歷所有虛擬維修人員肢節膠囊體,判斷是否存在與所述待檢測虛擬維修對象膠囊體發生碰撞的一個或多個虛擬維修人員肢節膠囊體,並將其作為待檢測虛擬維修人員肢節膠囊體,以及當判斷存在與所述待檢測虛擬維修對象膠囊體發生碰撞的待檢測虛擬維修人員肢節膠囊體,則獲取待檢測虛擬維修人員肢節膠囊體與待檢測虛擬維修對象膠囊體間的虛擬碰撞狀態;

其中,所述虛擬碰撞狀態包括所述待檢測虛擬維修人員肢節膠囊體的瞬時速度和所述待檢測虛擬維修對象膠囊體上的虛擬碰撞點。

根據本發明實施例提供的方案,具有如下的優點:

a)將人體簡化為膠囊樹結構,一方面膠囊體對人體外形貼合性很好,另一方面,便於迅速遍歷樹上的膠囊體,把維修對象處理成膠囊體,相交測試計算簡單,計算量少;

b)利用可達空間膠囊體,在每一次碰撞檢測的開始就剔除了大部分物體,減少了計算量;

c)動態地利用瞬時速度不斷更新切片空間和膠囊體群,極大減少了碰撞檢測的計算量;

d)利用檢測間隔時間和二級碰撞檢測迭代次數可以方便地控制碰撞檢測精度。

附圖說明

圖1是本發明實施例提供的一種動態碰撞檢測的方法流程圖;

圖2是本發明實施例提供的一種動態碰撞檢測的裝置示意圖;

圖3是本發明實施例提供的基於膠囊體和瞬時速度的動態碰撞檢測方法技術框架圖;

圖4是本發明實施例提供的人體膠囊化構造示意圖;

圖5是本發明實施例提供的人體膠囊樹示意圖;

圖6是本發明實施例提供的搜索區域膠囊體示意圖;

圖7是本發明實施例提供的切片化處理和次級膠囊體構造示意圖;

圖8是本發明實施例提供的碰撞檢測總體執行框架圖;

圖9是本發明實施例提供的a類型碰撞檢測執行過程流程圖;

圖10是本發明實施例提供的b類型碰撞檢測執行過程流程圖。

具體實施方式

以下結合附圖對本發明的優選實施例進行詳細說明,應當理解,以下所說明的優選實施例僅用於說明和解釋本發明,並不用於限定本發明。

圖1是本發明實施例提供的一種動態碰撞檢測的方法流程圖,如圖1所示,包括:

步驟s101:通過分別對維修人員各肢節及多個維修對象進行虛擬膠囊化處理,得到多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體;

步驟s102:通過對所述多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與虛擬維修對象膠囊體間的虛擬碰撞狀態;

步驟s103:根據所述虛擬碰撞狀態,確定所述虛擬維修人員肢節膠囊體與所述虛擬維修對象膠囊體的碰撞空間;

步驟s104:利用所述碰撞空間對每個虛擬維修對象膠囊體進行切片處理,將所述碰撞空間內的每個虛擬維修對象膠囊體的切片部分作為維修對象部分;

步驟s105:通過對所有的維修對象部分虛擬膠囊化處理,形成維修對象虛擬膠囊群;

步驟s106:將所述虛擬維修人員肢節膠囊體和維修對象虛擬膠囊群進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與維修對象虛擬膠囊群的動態碰撞結果。

其中,所述通過對所述多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體進行虛擬碰撞檢測之前,還包括:通過對維修人員各肢節可達空間進行膠囊化處理,得到多個虛擬維修人員肢節可達空間膠囊體;通過遍歷所有虛擬維修對象膠囊體,判斷是否存在全部處於或部分處於所述虛擬維修人員肢節可達空間膠囊體內的一個或多個虛擬維修對象膠囊體,並將其作為待檢測虛擬維修對象膠囊體;若判斷存在全部處於或部分處於所述虛擬維修人員可達空間膠囊體內的待檢測虛擬維修對象膠囊體,則對所述虛擬維修人員肢節膠囊體和待檢測虛擬維修對象膠囊體進行虛擬碰撞檢測。

其中,所述通過對所述虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與虛擬維修對象膠囊體間的虛擬碰撞狀態包括:通過遍歷所有虛擬維修人員肢節膠囊體,判斷是否存在與所述待檢測虛擬維修對象膠囊體發生碰撞的一個或多個虛擬維修人員肢節膠囊體,並將其作為待檢測虛擬維修人員肢節膠囊體;若判斷存在與所述待檢測虛擬維修對象膠囊體發生碰撞的待檢測虛擬維修人員肢節膠囊體,則獲取待檢測虛擬維修人員肢節膠囊體與待檢測虛擬維修對象膠囊體間的虛擬碰撞狀態。

其中,所述虛擬碰撞狀態包括所述待檢測虛擬維修人員肢節膠囊體的瞬時速度和所述待檢測虛擬維修對象膠囊體上的虛擬碰撞點。

其中,所述根據所述虛擬碰撞狀態,確定所述虛擬維修人員肢節膠囊體與所述多個虛擬維修對象膠囊體的碰撞空間包括:根據所述虛擬維修人員肢節膠囊體的瞬時速度和所述虛擬維修對象膠囊體上的虛擬碰撞點,計算下一次虛擬碰撞時所述虛擬碰撞點的位移,並根據所述位移,得到虛擬碰撞點的虛擬位移碰撞點;根據所述虛擬維修人員肢節膠囊體的瞬時速度,構建過所述虛擬碰撞點且垂直於所述瞬時速度方向的近法平面和過所述虛擬位移碰撞點且垂直於所述瞬時速度方向的遠法平面;利用所述近法平面和遠發平面對所述虛擬維修人員可達空間膠囊體進行切分,得到所述虛擬維修人員肢節膠囊體與所述多個虛擬維修對象膠囊體的碰撞空間。

其中,所述通過對所有的維修對象部分虛擬膠囊化處理,形成維修對象虛擬膠囊群包括:通過對所有的維修對象部分虛擬膠囊化處理,得到虛擬維修對象部分膠囊體;根據所得到的虛擬維修對象部分膠囊體,構建維修對象虛擬膠囊群。

圖2是本發明實施例提供的一種動態碰撞檢測的裝置示意圖,如圖2所示,包括:虛擬膠囊化模塊201,用於通過分別對維修人員各肢節及多個維修對象進行虛擬膠囊化處理,得到多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體,以及通過對所有的維修對象部分虛擬膠囊化處理,形成維修對象虛擬膠囊群;虛擬碰撞檢測模塊202,用於通過對所述多個虛擬維修人員肢節膠囊體和多個虛擬維修對象膠囊體進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與虛擬維修對象膠囊體間的虛擬碰撞狀態,以及將所述虛擬維修人員肢節膠囊體和維修對象虛擬膠囊群進行虛擬碰撞檢測,得到虛擬維修人員肢節膠囊體與維修對象虛擬膠囊群的動態碰撞結果;確定碰撞空間模塊203,用於根據所述虛擬碰撞狀態,確定所述虛擬維修人員肢節膠囊體與所述虛擬維修對象膠囊體的碰撞空間;切片處理模塊204,用於利用所述碰撞空間對每個虛擬維修對象膠囊體進行切片處理,將所述碰撞空間內的每個虛擬維修對象膠囊體的切片部分作為維修對象部分。

其中,所述虛擬膠囊化模塊201還具體用於通過對維修人員各肢節可達空間進行膠囊化處理,得到多個虛擬維修人員肢節可達空間膠囊體。

其中,所述虛擬碰撞檢測模塊202還具體用於通過遍歷所有虛擬維修對象膠囊體,判斷是否存在全部處於或部分處於所述虛擬維修人員肢節可達空間膠囊體內的一個或多個虛擬維修對象膠囊體,並將其作為待檢測虛擬維修對象膠囊體,以及當判斷存在全部處於或部分處於所述虛擬維修人員可達空間膠囊體內的待檢測虛擬維修對象膠囊體,則對所述虛擬維修人員肢節膠囊體和待檢測虛擬維修對象膠囊體進行虛擬碰撞檢測。

其中,所述虛擬碰撞檢測模塊202還具體用於通過遍歷所有虛擬維修人員肢節膠囊體,判斷是否存在與所述待檢測虛擬維修對象膠囊體發生碰撞的一個或多個虛擬維修人員肢節膠囊體,並將其作為待檢測虛擬維修人員肢節膠囊體,以及當判斷存在與所述待檢測虛擬維修對象膠囊體發生碰撞的待檢測虛擬維修人員肢節膠囊體,則獲取待檢測虛擬維修人員肢節膠囊體與待檢測虛擬維修對象膠囊體間的虛擬碰撞狀態;其中,虛擬碰撞狀態包括所述待檢測虛擬維修人員肢節膠囊體的瞬時速度和所述待檢測虛擬維修對象膠囊體上的虛擬碰撞點。

圖3是本發明實施例提供的基於膠囊體和瞬時速度的動態碰撞檢測方法技術框架圖,如圖3所示,包括:

步驟一:碰撞檢測前虛擬維修空間中對象的膠囊化處理;

在仿真開始之前,需要對虛擬維修空間中全部對象進行膠囊化預處理,包括維修人員肢節的膠囊化、維修人員可達空間的膠囊化以及維修對象的膠囊化。其中,維修人員肢節膠囊化指根據維修人員主要肢體關節構建維修人員膠囊體並形成膠囊樹結構,如圖4、圖5所示;維修人員可達空間膠囊化指構建跟隨人體運動的搜索區域膠囊體空間如圖6所示;維修對象膠囊化指根據產品構造和維修需求對維修對象進行膠囊化處理。

步驟二:基於維修人員可達空間膠囊體的一級碰撞檢測;

對構建的維修對象膠囊體遍歷地與維修人員可達空間膠囊體進行碰撞檢測,判斷其是否處於或部分處於維修人員可達空間內。若該可達空間內存在維修對象膠囊體,則進一步遍歷人體膠囊樹,與可達空間內維修對象膠囊體進行碰撞檢測,判斷是否有維修對象膠囊體與人體膠囊體碰撞,否則在下一次檢測時刻重複進行步驟二。

若存在維修對象膠囊體與人體膠囊體碰撞,則立即執行後續步驟,否則在下一次檢測時刻重複進行步驟二。

步驟三:考慮相對瞬時速度的切片空間構建;

對於存在碰撞的人體膠囊體,需要確定此時刻該人體膠囊體的運動速度v,並回推其與碰撞的維修對象膠囊體的碰撞點p1,利用兩次碰撞檢測的間隔時間t,在速度方向上取距離p1為t*v的點p2,則可以得到過p1、p2並垂直於速度方向的近法平面和遠法平面,如圖7所示。

步驟四:碰撞時刻切片空間內維修對象的膠囊體群生成;

近法平面和遠法平面將可達空間膠囊體切分,形成一個很小的切片空間,對可達空間內的維修對象本身執行檢測操作,提取處於該切片空間內的維修對象部分,並對這些微小的部分分別構建新的小膠囊體,形成膠囊體群,如圖7所示。

步驟五:下一時刻切片空間內的二級碰撞檢測;

在下一檢測時刻,將人體膠囊體遍歷地和與其相對應的膠囊體群進行碰撞檢測,如果發生碰撞,則返回碰撞結果。

步驟六:切片空間內膠囊體群的釋放。

將構建的所有膠囊體群的資源釋放,並重新執行步驟二,如此循環,直到仿真結束。

對於本基於膠囊體和瞬時速度的動態碰撞檢測方法,在兩次檢測間隔時間t足夠小的情況下,可以認為,二級碰撞檢測中人體膠囊體與維修對象膠囊體群的碰撞即是人體與維修對象本身的碰撞。如果需要更加精確的碰撞檢測效果,還可以通過迭代進行膠囊體群構建與二級碰撞檢測;或在一級碰撞檢測完成後,直接進行三維物體三角面片之間的碰撞檢測來獲得更加精確的碰撞結果。

實施例一:

圖8是本發明實施例提供的碰撞檢測總體執行框架圖,如圖8所示,包括:

1)仿真準備工作

虛擬維修場景一開始,虛擬維修仿真系統將自動對維修人員進行膠囊化,形成由多個膠囊體c_human[a](a是人體膠囊體數量)組成的運動結構。由於虛擬維修場景的特殊性,默認在維修場景中,最先運動的物體是維修人員人體,因此,最先進行的碰撞檢測,應該是針對運動人體進行。

人體結構上的膠囊體雖然都可以做多自由度運動,但是運動人體由於自身的關節限制,這些膠囊體都無法脫離某一個區域。這一區域的邊界是人體上的膠囊體做運動時的極限位置組成的包絡面。可以理解,人體與其他物體產生的所有碰撞,都是發生在該包絡面以內的,即物體必須首先跟該包絡面包圍的包絡體碰撞了,才有可能與人體產生碰撞。因此,針對人體與其他物體的碰撞檢測,只需要遍歷該包絡體以內的物體是否與人體碰撞。為了對該包絡體的區域進行更清晰的界定並減少檢測包絡體時的計算量,本發明將該包絡體定義為維修人員可達空間,即一個包圍了人體所有組成膠囊體和這些膠囊體所有運動區域集合的大膠囊體。在人體膠囊化之後,虛擬維修仿真系統還需要根據人體膠囊樹構建該可達空間膠囊體c_scope。該膠囊體隨著維修人員人體的移動而進行更新,之後進行的碰撞檢測,也將針對該膠囊體所包圍的區域進行。

然後仿真系統通過自動膠囊化方法,根據維修對象的結構,對維修場景中維修對象進行膠囊化,產生c_lru[b](b是維修對象膠囊體數量)。以上準備工作完成之後,虛擬維修仿真就可以開始了。

2)碰撞檢測執行過程循環

本碰撞檢測方法在每一次檢測之間具有後效性,這主要體現在虛擬維修仿真系統將依據枚舉類型testtype的值,確定本次碰撞檢測所進行的類型——碰撞檢測a或者碰撞檢測b。其中碰撞檢測a負責執行一級碰撞檢測,並根據結果確定是否執行構建切片空間並生成切片空間內的維修對象膠囊體群;碰撞檢測b負責執行二級碰撞檢測和膠囊體群資源的釋放。

3)仿真結束檢測

在每一次檢測完成後,仿真系統都將檢測維修仿真是否結束,若結束則碰撞檢測停止,若沒結束,則繼續執行碰撞檢測過程循環,如圖8中所示。

需要注意的是,為了提高碰撞檢測的實時性和精確性,在每一次碰撞檢測b完成之後,還要繼續進行一次碰撞檢測a,以確定下一次的碰撞檢測信息。

實施例二:

圖9是本發明實施例提供的a類型碰撞檢測執行過程流程圖,如圖9所示,a類型的碰撞檢測實質是第一級別的碰撞檢測,主要確定在維修人員可達空間膠囊體之內的維修對象是否與人體膠囊體結構中的任一膠囊體存在碰撞,若沒有,則無需進行後續碰撞檢測過程,即碰撞檢測b類型,若有,則使枚舉類型testtype=b,該值將導致下一次刷新檢測時進行b類型碰撞檢測。

a類型的碰撞具體實施為:

步驟a1:將場景中所有維修對象膠囊體進行遍歷,並判斷是否與可達空間膠囊體碰撞。假如都不與可達空間膠囊體碰撞,則無需進行下一步檢測,a檢測結束,且testtype依然為「a」不變;假如存在維修對象膠囊體與可達空間膠囊體碰撞,執行步驟a2。

步驟a2:遍歷所有與可達空間膠囊體碰撞的維修對象膠囊體和人體膠囊樹,判斷是否存在維修對象膠囊體與任一人體膠囊體c_human[i]碰撞。假如不存在,則無需進行下一步檢測,a檢測結束,且testtype依然為「a」不變;假如存在碰撞,執行步驟a3。

步驟a3:假設c_human[i]與某一維修對象膠囊體碰撞,則需要確定該碰撞在人體膠囊體上的碰撞點point1與其此時的速度speed,再根據碰撞檢測的刷新時間deltatime,確定下一次碰撞檢測時,point1的可能到達點point2,通過速度方向分別確定垂直於speed並且通過point1和point2的近法平面和遠法平面。執行步驟a4。

步驟a4:遍歷所有在可達空間膠囊體內的維修對象膠囊體,截取在兩個法平面確定的切片空間內的部分,並根據截取的新物體構造新的小膠囊體c_forb[n],(n為小膠囊體數量),眾多小膠囊體形成膠囊體群。執行步驟a5。

步驟a5:將testtype置為「b」,a檢測結束。

實施例三:

圖10是本發明實施例提供的b類型碰撞檢測執行過程流程圖,如圖10所示,b類型碰撞檢測實質是二級碰撞檢測,主要執行人體膠囊體和與其相對應的維修對象膠囊體群的碰撞檢測。

b類型的碰撞具體實施為:

步驟b1:遍歷人體膠囊樹,根據人體膠囊體在a類型測試中儲存的信息,確定是否進行二級檢測。對於具有相對應維修對象膠囊體群的人體膠囊體,執行步驟b2。

步驟b2:遍歷地進行維修對象膠囊體群與對應人體膠囊體的碰撞檢測。若某些碰撞成立,則輸出相應碰撞信息給虛擬維修仿真系統,系統將對這些信息進行處理,以實現人機互動功能。對所有人體膠囊體遍歷測試完成之後,執行步驟b3。

步驟b3:釋放膠囊體群資源,並將testtype重新置為「a」,b測試結束。

根據本發明實施例提供的方案,提高了仿真中交互的響應速度和精度,最終提高了虛擬維修仿真擬真度,提升仿真效果。

儘管上文對本發明進行了詳細說明,但是本發明不限於此,本技術領域技術人員可以根據本發明的原理進行各種修改。因此,凡按照本發明原理所作的修改,都應當理解為落入本發明的保護範圍。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀