njCollisionCheckBS English
|INDEX|
6面体と球のコリジョンチェックを行います。

書 式

#include <Ninja.h>
Int njCollisionCheckBS( *box, *sphere )
NJS_BOX *box
NJS_SPHERE *sphere

引 数

*box
コリジョンチェックの対象となる6面体
*sphere
コリジョンチェックの対象となる球

返 値

1:接触
0:非接触

エラー

なし

機 能

6面体と球のコリジョンチェックを行います。

用 例

6面体 box と球 sphere のコリジョンチェックを行います。
NJS_BOX box;
NJS_SPHERE sphere;

box.v[0].x = -150.f; box.v[0].y =  100.f; box.v[0].z =  100;
box.v[1].x = -150.f; box.v[1].y =  100.f; box.v[1].z = -100;
box.v[2].x =   50.f; box.v[2].y =  100.f; box.v[2].z = -100;
box.v[3].x =   50.f; box.v[3].y =  100.f; box.v[3].z =  100;
box.v[4].x = -150.f; box.v[4].y = -100.f; box.v[4].z =  100;
box.v[5].x = -150.f; box.v[5].y = -100.f; box.v[5].z = -100;
box.v[6].x =   50.f; box.v[6].y = -100.f; box.v[6].z = -100;
box.v[7].x =   50.f; box.v[7].y = -100.f; box.v[7].z =  100;

sphere.c.x = 100.f;
sphere.c.y =   0.f;
sphere.c.z =   0.f;
sphere.r   = 100.f;

njCollisionCheckBS(&box, &sphere);

% 結果 %
返り値 = 1

備 考

NJS_BOX構造体(箱型)
typedef struct{
    NJS_POINT3 v[8]; /* 6面体の頂点リスト */
} NJS_BOX;
頂点リストのインデックスと対応する頂点

NJS_SPHERE 構造体(球)
typedef struct{
    NJS_POINT3 c;/* 球の中心 */
    Float      r;/* 球の半径 */
} NJS_SPHERE;
中心座標c、半径rの球体

関 連


njCollisionCheckBS |INDEX|

Copyright SEGA ENTERPRISES, LTD., 1997