Ninjaライブラリ - マトリクス関数

njCalcPoint

任意の点のマトリクス変換

書式

void njCalcPoint( *m, *ps, *pd ) 
NJS_MATRIX *m 
NJS_POINT3 *ps 
NJS_POINT3 *pd 

引数

*m   演算マトリクス
*ps   任意の点
*pd   変換後の点

戻り値

なし

解説

任意の点*psにマトリクス変換を行い、変換後の座標を*pdに格納します。 引数*mがNULLの場合には、カレントマトリクスを演算マトリクスにします。

用例

/* 点ps(100, 0, 0)をY軸に45度回転 */
NJS_MATRIX m;
NJS_POINT3 ps, pd;
ps.x = 100.f;
ps.y = 0.f;
ps.z = 0.f;
njUnitMatrix(&m);
njRotateY(&m, NJM_DEG_ANG(45));
njCalcPoint(&m, &ps, &pd);
/* 結果 */
pd(70.710701, 00,000000, -70.710701)

備考

ベースマトリクスを引き継いだマトリクスを使用して計算した場合の結果は、 Ninjaの座標系ではなく、ハードの座標系で戻ります。

njCalcPoint
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999