JP6480606B2 - リアルタイムの仮想シーン内の円柱コライダと凸体との間の衝突を検出するための方法および端末およびストレージ媒体 - Google Patents
リアルタイムの仮想シーン内の円柱コライダと凸体との間の衝突を検出するための方法および端末およびストレージ媒体 Download PDFInfo
- Publication number
- JP6480606B2 JP6480606B2 JP2017558551A JP2017558551A JP6480606B2 JP 6480606 B2 JP6480606 B2 JP 6480606B2 JP 2017558551 A JP2017558551 A JP 2017558551A JP 2017558551 A JP2017558551 A JP 2017558551A JP 6480606 B2 JP6480606 B2 JP 6480606B2
- Authority
- JP
- Japan
- Prior art keywords
- convex body
- axis
- coordinate system
- preset
- local coordinate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 38
- 239000013598 vector Substances 0.000 claims description 145
- 238000012360 testing method Methods 0.000 claims description 95
- 230000009466 transformation Effects 0.000 claims description 14
- 238000001514 detection method Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 15
- 238000004364 calculation method Methods 0.000 description 14
- 238000006243 chemical reaction Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 8
- 230000001131 transforming effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/20—Linear translation of whole images or parts thereof, e.g. panning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
- B25J9/1676—Avoiding collision or forbidden zones
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/10—Numerical modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/80—2D [Two Dimensional] animation, e.g. using sprites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20112—Image segmentation details
- G06T2207/20164—Salient point detection; Corner detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/21—Collision detection, intersection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Architecture (AREA)
Description
仮想的なシナリオにおける仮想オブジェクトに対応する円柱コライダを円柱コライダと同心の予め設定された多角柱にコンバートするステップと、
凸体のローカル座標系内の予め設定された多角柱の位置を取得するために予め設定された多角柱を凸体のローカル座標系に変換するステップと、
凸体のローカル座標系内の予め設定された多角柱の位置に従って、予め設定された多角柱の各面の法線方向、予め設定された多角形の辺方向、および多角柱の側面の辺の辺方向を取得するステップと、
凸体の各面の法線方向および各辺方向を取得するステップと、
凸体の各辺方向と予め設定された多角形の辺方向とのベクトル積、および凸体の各辺方向と多角柱の側面の辺の辺方向とのベクトル積を別に取得するステップと、
予め設定された多角柱の各面の法線方向、凸体の各面の法線方向、およびベクトル積のうちの1つまたは複数を1つまたは複数の試験軸(testing axis)として使用するステップと、
各試験軸および凸体のローカル座標系内の予め設定された多角柱の位置に従って試験軸上の円柱コライダの射影の長さおよび射影の位置を取得し、各試験軸上の凸体の射影を取得するステップと、
円柱コライダおよび凸体の射影が各試験軸上で互いに交わる場合、円柱コライダと凸体との間の衝突が存在すると判定するステップとを含む。
仮想的なシナリオにおける仮想オブジェクトに対応する円柱コライダを円柱コライダと同心の予め設定された多角柱にコンバートするステップと、
凸体のローカル座標系内の予め設定された多角柱の位置を取得するために予め設定された多角柱を凸体のローカル座標系に変換するステップと、
凸体のローカル座標系内の予め設定された多角柱の位置に従って、予め設定された多角柱の各面の法線方向、予め設定された多角形の辺方向、および多角柱の側面の辺の辺方向を取得するステップと、
凸体の各面の法線方向および各辺方向を取得するステップと、
凸体の各辺方向と予め設定された多角形の辺方向とのベクトル積、および凸体の各辺方向と多角柱の側面の辺の辺方向とのベクトル積を別に取得するステップと、
予め設定された多角柱の各面の法線方向、凸体の各面の法線方向、およびベクトル積のうちの1つまたは複数を1つまたは複数の試験軸として使用するステップと、
各試験軸および凸体のローカル座標系内の予め設定された多角柱の位置に従って試験軸上の円柱コライダの射影の長さおよび射影の位置を取得し、各試験軸上の凸体の射影を取得するステップと、
円柱コライダおよび凸体の射影が各試験軸上で互いに交わる場合、円柱コライダと凸体との間の衝突が存在すると判定するステップとを実行させる命令を記憶する。
仮想的なシナリオにおける仮想オブジェクトに対応する円柱コライダを円柱コライダと同心の予め設定された多角柱にコンバートするステップと、
凸体のローカル座標系内の予め設定された多角柱の位置を取得するために予め設定された多角柱を凸体のローカル座標系に変換するステップと、
凸体のローカル座標系内の予め設定された多角柱の位置に従って、予め設定された多角柱の各面の法線方向、予め設定された多角形の辺方向、および多角柱の側面の辺の辺方向を取得するステップと、
凸体の各面の法線方向および各辺方向を取得するステップと、
凸体の各辺方向と予め設定された多角形の辺方向とのベクトル積、および凸体の各辺方向と多角柱の側面の辺の辺方向とのベクトル積を別に取得するステップと、
予め設定された多角柱の各面の法線方向、凸体の各面の法線方向、およびベクトル積のうちの1つまたは複数を1つまたは複数の試験軸として使用するステップと、
各試験軸および凸体のローカル座標系内の予め設定された多角柱の位置に従って試験軸上の円柱コライダの射影の長さおよび射影の位置を取得し、各試験軸上の凸体の射影を取得するステップと、
円柱コライダおよび凸体の射影が各試験軸上で互いに交わる場合、円柱コライダと凸体との間の衝突が存在すると判定するステップとを実行させるコンピュータ可読命令を記憶する。
64 垂直な線
110 コライダ
120 角
210 端末
220 サーバ
1002 底面の中央の点
1004 底面の頂点
1102 頂点
1104 頂点
1106 辺
1302 コンバートモジュール
1304 変換モジュール
1306 第1の取得モジュール
1308 第2の取得モジュール
1310 ベクトル積取得モジュール
1312 試験軸取得モジュール
1314 射影モジュール
1316 判定モジュール
Claims (21)
- リアルタイムの仮想的なシナリオにおいて円柱コライダと凸体との間の衝突を検出するための方法であって、
仮想的なシナリオにおける仮想オブジェクトに対応する円柱コライダを前記円柱コライダと同心の予め設定された多角柱にコンバートするステップと、
凸体のローカル座標系内の前記予め設定された多角柱の位置を取得するために前記予め設定された多角柱を前記凸体の前記ローカル座標系に変換するステップと、
前記凸体の前記ローカル座標系内の前記予め設定された多角柱の前記位置に従って、前記予め設定された多角柱の各面の法線方向、予め設定された多角形の辺方向、および前記多角柱の側面の辺の辺方向を取得するステップと、
前記凸体の各面の法線方向および各辺方向を取得するステップと、
前記凸体の各辺方向と前記予め設定された多角形の前記辺方向とのベクトル積、および前記凸体の各辺方向と前記多角柱の前記側面の辺の前記辺方向とのベクトル積を別に取得するステップと、
前記予め設定された多角柱の各面の法線方向、前記凸体の各面の法線方向、および前記ベクトル積のうちの1つまたは複数を1つまたは複数の試験軸として使用するステップと、
各試験軸および前記凸体の前記ローカル座標系内の前記予め設定された多角柱の前記位置に従って前記試験軸上の前記円柱コライダの射影の長さおよび射影の位置を取得し、各試験軸上の前記凸体の射影を取得するステップと、
前記円柱コライダおよび前記凸体の射影が各試験軸上で互いに交わる場合、前記円柱コライダと前記凸体との間の衝突が存在すると判定するステップとを含む、方法。 - 凸体のローカル座標系内の前記予め設定された多角柱の位置を取得するために前記予め設定された多角柱を前記凸体の前記ローカル座標系に変換する前記ステップが、
前記凸体の前記ローカル座標系内の前記予め設定された多角柱のX軸、Y軸、およびZ軸の単位ベクトルに対応するベクトルを取得するために前記予め設定された多角柱の前記X軸、前記Y軸、前記Z軸、および中央の点を前記凸体の前記ローカル座標系に変換し、前記多角柱の2つの面、すなわち、上面および下面上の中央の点の座標を取得するために前記凸体の前記ローカル座標系内の前記Z軸の前記ベクトルに前記円柱コライダの正の半分の高さの値および負の半分の高さの値を乗算するステップと、
前記円柱コライダの半径を取得し、前記半径に対応する前記ベクトル、前記凸体の前記ローカル座標系内の前記円柱コライダの前記X軸、前記Y軸に従って、前記予め設定された多角柱の頂点が置かれる前記面の前記中央の点に対する前記頂点のオフセットを取得し、対応する頂点の座標を得るために前記オフセットおよび前記中央の点の座標の和を取得するステップと、
各頂点の座標に従って前記凸体の前記ローカル座標系内に前記予め設定された多角柱を再構築するステップとを含む請求項1に記載の方法。 - 前記凸体の前記ローカル座標系に変換された後、前記円柱コライダからコンバートされる前記予め設定された多角柱が円柱コライダではない場合、前記凸体の前記ローカル座標系内の前記予め設定された多角柱の各頂点を射影し、前記円柱コライダの射影の長さを得るために、差を得るために極値を設定するステップをさらに含む請求項2に記載の方法。
- 前記凸体の前記ローカル座標系に変換された後、前記円柱コライダからコンバートされる前記予め設定された多角柱が引き続き円柱コライダである場合、前記円柱コライダの半径および半分の高さ、前記凸体の前記ローカル座標系に変換された前記円柱コライダの3つの軸、すなわち、X軸、Y軸、およびZ軸の基底ベクトルに対応する座標基底ベクトル、ならびに前記凸体の前記ローカル座標系内の前記試験軸の試験軸方向を、前記円柱コライダの前記射影の長さを計算するために取得するステップをさらに含む請求項2に記載の方法。
- 前記試験軸が前記円柱コライダの垂直軸と並行である場合、前記凸体の前記ローカル座標系に変換される前記円柱コライダの3つの軸、すなわち、X軸、Y軸、およびZ軸の基底ベクトルに対応する座標基底ベクトルのZ基底ベクトルの長さと半分の高さとの積を、前記円柱コライダの前記射影の長さとして取得するステップと、
前記試験軸が前記円柱コライダの前記垂直軸に垂直である場合、前記凸体の前記ローカル座標系に変換される前記円柱コライダの3つの軸、すなわち、前記X軸、前記Y軸、および前記Z軸の前記基底ベクトルに対応する前記座標基底ベクトルのX基底ベクトルの長さおよびY基底ベクトルの長さのうちの大きな方の値を取得し、さらに、前記大きな方の値と前記円柱コライダの半径との積を、前記円柱コライダの前記射影の長さとして使用するステップとをさらに含む請求項1から4のいずれか一項に記載の方法。 - 前記予め設定された多角形が、前記円柱コライダの底面に内接する正多角形である請求項1から4のいずれか一項に記載の方法。
- 前記多角形が偶数個の辺を有する正多角形である場合、前記予め設定された多角形の辺方向が取得されるとき、中心に基づいて非対称である辺方向が、前記予め設定された多角柱の上面および下面上の2つの予め設定された多角形のうちの予め設定された多角形から選択され、前記多角柱の側面の辺の横方向を取得するとき、1つの側面の辺の横方向が選択される請求項6に記載の方法。
- メモリおよびプロセッサを含む端末であって、前記メモリが、前記プロセッサによって実行されるときに前記プロセッサに以下のステップ、すなわち、
仮想的なシナリオにおける仮想オブジェクトに対応する円柱コライダを前記円柱コライダと同心の予め設定された多角柱にコンバートするステップと、
凸体のローカル座標系内の前記予め設定された多角柱の位置を取得するために前記予め設定された多角柱を前記凸体の前記ローカル座標系に変換するステップと、
前記凸体の前記ローカル座標系内の前記予め設定された多角柱の前記位置に従って、前記予め設定された多角柱の各面の法線方向、予め設定された多角形の辺方向、および前記多角柱の側面の辺の辺方向を取得するステップと、
前記凸体の各面の法線方向および各辺方向を取得するステップと、
前記凸体の各辺方向と前記予め設定された多角形の前記辺方向とのベクトル積、および前記凸体の各辺方向と前記多角柱の前記側面の辺の前記辺方向とのベクトル積を別に取得するステップと、
前記予め設定された多角柱の各面の法線方向、前記凸体の各面の法線方向、および前記ベクトル積のうちの1つまたは複数を1つまたは複数の試験軸として使用するステップと、
各試験軸および前記凸体の前記ローカル座標系内の前記予め設定された多角柱の前記位置に従って前記試験軸上の前記円柱コライダの射影の長さおよび射影の位置を取得し、各試験軸上の前記凸体の射影を取得するステップと、
前記円柱コライダおよび前記凸体の射影が各試験軸上で互いに交わる場合、前記円柱コライダと前記凸体との間の衝突が存在すると判定するステップとを実行させる命令を記憶する、端末。 - 凸体のローカル座標系内の前記予め設定された多角柱の位置を取得するために前記予め設定された多角柱を前記凸体の前記ローカル座標系に変換する前記ステップが、
前記凸体の前記ローカル座標系内の前記予め設定された多角柱のX軸、Y軸、およびZ軸の単位ベクトルに対応するベクトルを取得するために前記予め設定された多角柱の前記X軸、前記Y軸、前記Z軸、および中央の点を前記凸体の前記ローカル座標系に変換し、前記多角柱の2つの面、すなわち、上面および下面上の中央の点の座標を取得するために前記凸体の前記ローカル座標系内の前記Z軸の前記ベクトルに前記円柱コライダの正の半分の高さの値および負の半分の高さの値を乗算することと、
前記円柱コライダの半径を取得し、前記半径に対応する前記ベクトル、前記凸体の前記ローカル座標系内の前記円柱コライダの前記X軸、前記Y軸に従って、前記予め設定された多角柱の頂点が置かれる前記面の前記中央の点に対する前記頂点のオフセットを取得し、対応する頂点の座標を得るために前記オフセットおよび前記中央の点の座標の和を取得することと、
各頂点の座標に従って前記凸体の前記ローカル座標系内に前記予め設定された多角柱を再構築することとを含む請求項8に記載の端末。 - 前記プロセッサが、
前記凸体の前記ローカル座標系に変換された後、前記円柱コライダからコンバートされる前記予め設定された多角柱が円柱コライダではない場合、前記凸体の前記ローカル座標系内の前記予め設定された多角柱の各頂点を射影し、前記円柱コライダの射影の長さを得るために、差を得るために極値を設定するステップをさらに実行する請求項9に記載の端末。 - 前記プロセッサが、
前記凸体の前記ローカル座標系に変換された後、前記円柱コライダからコンバートされる前記予め設定された多角柱が引き続き円柱コライダである場合、前記円柱コライダの半径および半分の高さ、前記凸体の前記ローカル座標系に変換された前記円柱コライダの3つの軸、すなわち、X軸、Y軸、およびZ軸の基底ベクトルに対応する座標基底ベクトル、ならびに前記凸体の前記ローカル座標系内の前記試験軸の試験軸方向を、前記円柱コライダの前記射影の長さを計算するために取得するステップをさらに実行する請求項9に記載の端末。 - 前記プロセッサが、
前記試験軸が前記円柱コライダの垂直軸と並行である場合、前記凸体の前記ローカル座標系に変換される前記円柱コライダの3つの軸、すなわち、X軸、Y軸、およびZ軸の基底ベクトルに対応する座標基底ベクトルのZ基底ベクトルの長さと半分の高さとの積を、前記円柱コライダの前記射影の長さとして取得するステップと、
前記試験軸が前記円柱コライダの前記垂直軸に垂直である場合、前記凸体の前記ローカル座標系に変換される前記円柱コライダの3つの軸、すなわち、前記X軸、前記Y軸、および前記Z軸の前記基底ベクトルに対応する前記座標基底ベクトルのX基底ベクトルの長さおよびY基底ベクトルの長さのうちの大きな方の値を取得し、さらに、前記大きな方の値と前記円柱コライダの半径との積を、前記円柱コライダの前記射影の長さとして使用するステップとをさらに実行する請求項8から11のいずれか一項に記載の端末。 - 前記予め設定された多角形が、前記円柱コライダの底面に内接する正多角形である請求項8から11のいずれか一項に記載の端末。
- 前記多角形が偶数個の辺を有する正多角形である場合、前記予め設定された多角形の辺方向が取得されるとき、中心に基づいて非対称である辺方向が、前記予め設定された多角柱の上面および下面上の2つの予め設定された多角形のうちの予め設定された多角形から選択され、前記多角柱の側面の辺の横方向を取得するとき、1つの側面の辺の横方向が選択される請求項13に記載の端末。
- 1つまたは複数のプロセッサによって実行されるときに前記1つのプロセッサまたは前記複数のプロセッサに以下のステップ、すなわち、
仮想的なシナリオにおける仮想オブジェクトに対応する円柱コライダを前記円柱コライダと同心の予め設定された多角柱にコンバートするステップと、
凸体のローカル座標系内の前記予め設定された多角柱の位置を取得するために前記予め設定された多角柱を前記凸体の前記ローカル座標系に変換するステップと、
前記凸体の前記ローカル座標系内の前記予め設定された多角柱の前記位置に従って、前記予め設定された多角柱の各面の法線方向、予め設定された多角形の辺方向、および前記多角柱の側面の辺の辺方向を取得するステップと、
前記凸体の各面の法線方向および各辺方向を取得するステップと、
前記凸体の各辺方向と前記予め設定された多角形の前記辺方向とのベクトル積、および前記凸体の各辺方向と前記多角柱の前記側面の辺の前記辺方向とのベクトル積を別に取得するステップと、
前記予め設定された多角柱の各面の法線方向、前記凸体の各面の法線方向、および前記ベクトル積のうちの1つまたは複数を1つまたは複数の試験軸として使用するステップと、
各試験軸および前記凸体の前記ローカル座標系内の前記予め設定された多角柱の前記位置に従って前記試験軸上の前記円柱コライダの射影の長さおよび射影の位置を取得し、各試験軸上の前記凸体の射影を取得するステップと、
前記円柱コライダおよび前記凸体の射影が各試験軸上で互いに交わる場合、前記円柱コライダと前記凸体との間の衝突が存在すると判定するステップとを実行させるコンピュータ可読命令を記憶する1つまたは複数の不揮発性コンピュータ可読ストレージ媒体。 - 凸体のローカル座標系内の前記予め設定された多角柱の位置を取得するために前記予め設定された多角柱を前記凸体の前記ローカル座標系に変換する前記ステップが、
前記凸体の前記ローカル座標系内の前記予め設定された多角柱のX軸、Y軸、およびZ軸の単位ベクトルに対応するベクトルを取得するために前記予め設定された多角柱の前記X軸、前記Y軸、前記Z軸、および中央の点を前記凸体の前記ローカル座標系に変換し、前記多角柱の2つの面、すなわち、上面および下面上の中央の点の座標を取得するために前記凸体の前記ローカル座標系内の前記Z軸の前記ベクトルに前記円柱コライダの正の半分の高さの値および負の半分の高さの値を乗算することと、
前記円柱コライダの半径を取得し、前記半径に対応する前記ベクトル、前記凸体の前記ローカル座標系内の前記円柱コライダの前記X軸、前記Y軸に従って、前記予め設定された多角柱の頂点が置かれる前記面の前記中央の点に対する前記頂点のオフセットを取得し、対応する頂点の座標を得るために前記オフセットおよび前記中央の点の座標の和を取得することと、
各頂点の座標に従って前記凸体の前記ローカル座標系内に前記予め設定された多角柱を再構築することとを含む請求項15に記載の不揮発性コンピュータ可読ストレージ媒体。 - 前記凸体の前記ローカル座標系に変換された後、前記円柱コライダからコンバートされる前記予め設定された多角柱が円柱コライダではない場合、前記凸体の前記ローカル座標系内の前記予め設定された多角柱の各頂点を射影し、前記円柱コライダの射影の長さを得るために、差を得るために極値を設定するステップをさらに含む請求項16に記載の不揮発性コンピュータ可読ストレージ媒体。
- 前記凸体の前記ローカル座標系に変換された後、前記円柱コライダからコンバートされる前記予め設定された多角柱が引き続き円柱コライダである場合、前記円柱コライダの半径および半分の高さ、前記凸体の前記ローカル座標系に変換された前記円柱コライダの3つの軸、すなわち、X軸、Y軸、およびZ軸の基底ベクトルに対応する座標基底ベクトル、ならびに前記凸体の前記ローカル座標系内の前記試験軸の試験軸方向を、前記円柱コライダの前記射影の長さを計算するために取得するステップをさらに含む請求項16に記載の不揮発性コンピュータ可読ストレージ媒体。
- 前記試験軸が前記円柱コライダの垂直軸と並行である場合、前記凸体の前記ローカル座標系に変換される前記円柱コライダの3つの軸、すなわち、X軸、Y軸、およびZ軸の基底ベクトルに対応する座標基底ベクトルのZ基底ベクトルの長さと半分の高さとの積を、前記円柱コライダの前記射影の長さとして取得するステップと、
前記試験軸が前記円柱コライダの前記垂直軸に垂直である場合、前記凸体の前記ローカル座標系に変換される前記円柱コライダの3つの軸、すなわち、前記X軸、前記Y軸、および前記Z軸の前記基底ベクトルに対応する前記座標基底ベクトルのX基底ベクトルの長さおよびY基底ベクトルの長さのうちの大きな方の値を取得し、さらに、前記大きな方の値と前記円柱コライダの半径との積を、前記円柱コライダの前記射影の長さとして使用するステップとをさらに含む請求項15から18のいずれか一項に記載の不揮発性コンピュータ可読ストレージ媒体。 - 前記予め設定された多角形が、前記円柱コライダの底面に内接する正多角形である請求項15から18のいずれか一項に記載の不揮発性コンピュータ可読ストレージ媒体。
- 前記多角形が偶数個の辺を有する正多角形である場合、前記予め設定された多角形の辺方向が取得されるとき、中心に基づいて非対称である辺方向が、前記予め設定された多角柱の上面および下面上の2つの予め設定された多角形のうちの予め設定された多角形から選択され、前記多角柱の側面の辺の横方向を取得するとき、1つの側面の辺の横方向が選択される請求項20に記載の不揮発性コンピュータ可読ストレージ媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510864339.0A CN105512377B (zh) | 2015-11-30 | 2015-11-30 | 实时虚拟场景中圆柱碰撞体与凸体碰撞探测的方法和*** |
CN201510864339.0 | 2015-11-30 | ||
PCT/CN2016/082930 WO2017092251A1 (zh) | 2015-11-30 | 2016-05-20 | 实时虚拟场景中圆柱碰撞体与凸体碰撞探测的方法、终端和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018524664A JP2018524664A (ja) | 2018-08-30 |
JP6480606B2 true JP6480606B2 (ja) | 2019-03-13 |
Family
ID=55720357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017558551A Active JP6480606B2 (ja) | 2015-11-30 | 2016-05-20 | リアルタイムの仮想シーン内の円柱コライダと凸体との間の衝突を検出するための方法および端末およびストレージ媒体 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10311544B2 (ja) |
JP (1) | JP6480606B2 (ja) |
KR (1) | KR101986037B1 (ja) |
CN (1) | CN105512377B (ja) |
WO (1) | WO2017092251A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105512377B (zh) * | 2015-11-30 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 实时虚拟场景中圆柱碰撞体与凸体碰撞探测的方法和*** |
CN108733065B (zh) * | 2017-09-29 | 2021-06-04 | 北京猎户星空科技有限公司 | 一种机器人的避障方法、装置及机器人 |
CN107553497B (zh) * | 2017-10-20 | 2023-12-22 | 苏州瑞得恩光能科技有限公司 | 太阳能面板清扫机器人的边缘定位装置及其定位方法 |
CN107907593B (zh) * | 2017-11-22 | 2020-09-22 | 中南大学 | 一种超声检测中机械手防碰撞方法 |
CN108364542A (zh) * | 2018-01-12 | 2018-08-03 | 重庆韦娜软件有限公司 | 叉车场地考试位置检测与判定装置及其方法 |
CN110174951B (zh) * | 2019-05-30 | 2022-06-21 | 郑州爱普锐科技有限公司 | 基于vr实训设备的人物动作识别方法 |
CN110221574B (zh) * | 2019-06-10 | 2021-05-11 | 中国神华能源股份有限公司 | 单机防碰撞的方法和*** |
CN112200890B (zh) * | 2019-07-08 | 2023-09-29 | 福建天泉教育科技有限公司 | 基于Unity的碰撞器设置方法及存储介质 |
CN111199571A (zh) * | 2019-12-20 | 2020-05-26 | 江苏原力动画制作股份有限公司 | 一种基于连接关系的控制物体变形方法 |
CN111346379B (zh) * | 2020-03-12 | 2023-05-12 | 竞技世界(北京)网络技术有限公司 | 一种实现碰撞处理的方法及装置 |
CN111546376A (zh) * | 2020-04-22 | 2020-08-18 | 哈尔滨工业大学 | 一种空间组合机械臂的快速自碰撞检测方法 |
CN111773723A (zh) * | 2020-07-29 | 2020-10-16 | 网易(杭州)网络有限公司 | 碰撞检测方法和装置 |
US11794107B2 (en) * | 2020-12-30 | 2023-10-24 | Activision Publishing, Inc. | Systems and methods for improved collision detection in video games |
CN113450400A (zh) * | 2021-06-28 | 2021-09-28 | 思享智汇(海南)科技有限责任公司 | 基于可变对象的碰撞检测方法、游戏交互方法及直播*** |
CN114211498B (zh) * | 2021-12-30 | 2023-09-08 | 中国煤炭科工集团太原研究院有限公司 | 基于方向包围盒的锚杆支护机器人碰撞检测方法及*** |
CN114872043B (zh) * | 2022-05-09 | 2023-11-17 | 苏州艾利特机器人有限公司 | 一种机器人碰撞检测方法、存储介质及电子设备 |
CN115861500B (zh) * | 2022-12-09 | 2023-08-18 | 上海哔哩哔哩科技有限公司 | 2d模型碰撞体生成方法及装置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6407748B1 (en) * | 1998-04-17 | 2002-06-18 | Sandia Corporation | Method and apparatus for modeling interactions |
US6266064B1 (en) * | 1998-05-29 | 2001-07-24 | Microsoft Corporation | Coherent visibility sorting and occlusion cycle detection for dynamic aggregate geometry |
US6708142B1 (en) * | 1999-01-14 | 2004-03-16 | University Of Central Florida | Automatic motion modeling of rigid bodies using collision detection |
US7353149B2 (en) * | 2001-04-25 | 2008-04-01 | Telekinesys Research Limited | Method and apparatus for simulating dynamic contact of objects |
US7694224B2 (en) * | 2001-05-31 | 2010-04-06 | International Business Machines Corporation | Location predicative restoration of compressed images stored on a hard disk drive with soft and hard errors |
JP2003346186A (ja) * | 2002-03-19 | 2003-12-05 | Sony Corp | 画像処理装置および方法、並びにプログラム |
US7788071B2 (en) * | 2004-12-03 | 2010-08-31 | Telekinesys Research Limited | Physics simulation apparatus and method |
US7493244B2 (en) * | 2005-03-23 | 2009-02-17 | Nvidia Corporation | Computer simulation of body dynamics including a solver that solves in linear time for a set of constraints using vector processing |
JP4192976B2 (ja) * | 2006-08-02 | 2008-12-10 | ソニー株式会社 | 接触形状算出装置及び接触形状算出方法、並びにコンピュータ・プログラム |
JP5073065B2 (ja) * | 2009-01-15 | 2012-11-14 | 三菱電機株式会社 | 衝突判定装置および衝突判定プログラム |
JP5434651B2 (ja) * | 2010-02-12 | 2014-03-05 | 富士通株式会社 | 干渉判定装置、干渉判定方法および干渉判定プログラム |
CN102194248A (zh) * | 2011-05-05 | 2011-09-21 | 上海大学 | 基于增强现实的虚实碰撞检测及响应方法 |
JP5498437B2 (ja) * | 2011-05-25 | 2014-05-21 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置、情報処理方法、情報処理プログラム、情報処理プログラムを記憶したコンピュータ読み取り可能な記録媒体、厚み領域設定装置、厚み領域設定方法、厚み領域設定プログラム、厚み領域設定プログラムを記憶したコンピュータ読み取り可能な記録媒体、仮想空間における面に関するデータ構造 |
CN102368280A (zh) * | 2011-10-21 | 2012-03-07 | 北京航空航天大学 | 一种面向虚拟装配的基于aabb-obb混合包围盒的碰撞检测方法 |
JP6069923B2 (ja) * | 2012-07-20 | 2017-02-01 | セイコーエプソン株式会社 | ロボットシステム、ロボット、ロボット制御装置 |
CN103679271B (zh) * | 2013-12-03 | 2016-08-17 | 大连大学 | 基于Bloch球面坐标及量子计算的碰撞检测方法 |
CN104156520B (zh) * | 2014-07-31 | 2017-04-12 | 哈尔滨工程大学 | 一种基于直线投影的凸多面体碰撞检测方法 |
CN105512377B (zh) * | 2015-11-30 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 实时虚拟场景中圆柱碰撞体与凸体碰撞探测的方法和*** |
-
2015
- 2015-11-30 CN CN201510864339.0A patent/CN105512377B/zh active Active
-
2016
- 2016-05-20 JP JP2017558551A patent/JP6480606B2/ja active Active
- 2016-05-20 WO PCT/CN2016/082930 patent/WO2017092251A1/zh active Application Filing
- 2016-05-20 KR KR1020177037087A patent/KR101986037B1/ko active IP Right Grant
-
2017
- 2017-10-16 US US15/785,186 patent/US10311544B2/en active Active
-
2019
- 2019-04-24 US US16/393,838 patent/US11301954B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20190251657A1 (en) | 2019-08-15 |
CN105512377B (zh) | 2017-12-12 |
KR20180012792A (ko) | 2018-02-06 |
US10311544B2 (en) | 2019-06-04 |
WO2017092251A1 (zh) | 2017-06-08 |
KR101986037B1 (ko) | 2019-06-04 |
JP2018524664A (ja) | 2018-08-30 |
CN105512377A (zh) | 2016-04-20 |
US11301954B2 (en) | 2022-04-12 |
US20180040101A1 (en) | 2018-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6480606B2 (ja) | リアルタイムの仮想シーン内の円柱コライダと凸体との間の衝突を検出するための方法および端末およびストレージ媒体 | |
JP6480607B2 (ja) | リアルタイム仮想シーンにおけるコライダ間の衝突を検出するための方法、端末および記憶媒体 | |
CN103914876A (zh) | 用于在3d地图上显示视频的方法和设备 | |
CN107808388B (zh) | 包含运动目标的图像处理方法、装置及电子设备 | |
JP2024519323A (ja) | 衝突データ処理方法、衝突データ処理装置、コンピュータプログラム、及び電子機器 | |
CN115439607A (zh) | 一种三维重建方法、装置、电子设备及存储介质 | |
CN111415420A (zh) | 空间信息确定方法、装置及电子设备 | |
WO2023093739A1 (zh) | 一种多视图三维重建的方法 | |
JP2023525535A (ja) | 3次元画像内の表面特徴を識別する方法及び装置 | |
Guan et al. | DeepMix: mobility-aware, lightweight, and hybrid 3D object detection for headsets | |
CN115115773A (zh) | 碰撞检测方法、装置、设备及存储介质 | |
US20220375164A1 (en) | Method and apparatus for three dimensional reconstruction, electronic device and storage medium | |
WO2021231265A1 (en) | Methods and apparatus for generating point cloud histograms | |
CN115346020A (zh) | 点云处理方法、避障方法、装置、机器人和存储介质 | |
CN112484678B (zh) | 一种基于虚拟三维空间的精准测量方法及装置 | |
JP6564259B2 (ja) | 画像処理装置、画像処理方法 | |
CN113935425A (zh) | 物体识别方法、装置、终端和存储介质 | |
KR20230050269A (ko) | 3d 이미지의 볼륨을 결정하기 위한 방법 및 장치 | |
CN105719310B (zh) | 碰撞检测方法及装置 | |
JP2021170402A (ja) | レーザレーダマップに基づくループバック検出方法、ループバック検出装置、電子デバイス、記憶媒体及びプログラム | |
CN109410304A (zh) | 一种投影确定方法、装置及设备 | |
CN113384890B (zh) | 一种凸多边形碰撞的检测方法 | |
CN116824105A (zh) | 建筑信息模型的显示调整方法、装置、设备及存储介质 | |
CN116563477A (zh) | 道路标识点云的生成方法及装置 | |
An et al. | Collision Detection Technology based on bounding box of Virtual Reality |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181225 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190111 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190207 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6480606 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |