Ninjaライブラリ - 数学関数

njCardinalSpline

Cardinalスプライン補間

書式

void njCardinalSpline( *idata, *odata, *attr, frame )
float *idata
float *odata
NJS_SPLINE *attr
float frame

引数

*idata入力データ(ただし、idata[3*4])
*odata出力データ(ただし、odata[3])
*attrスプライン属性
frameフレーム

戻値

なし

解説

スプライン曲線補間された値が、指定された引数に格納されます。 フレーム数は0〜1の間で設定してください。属性は、スプライン属性構造体の fparamメンバー(attr->fparam[0])にテンションを指定してください。

用例

#include <Shinobi.h>
#define X1  1.f
#define Y1  0.f
#define Z1  0.f
#define X2  5.f
#define TENSION 0.2f
	:
float idata[3][4] = 
{
 {X1, Y1, Z1},
 {X2, Y2, Z2},
 {X3, Y3, Z3},
 {X4, Y4, Z4},
};
float odata[3];
NJS_SPLINE attr;
	:
attr.fparam[0] = TENSION;
njCardinalSpline((float*)idata, odata, &attr, 0.5f); 
	:

参照

njOverhauserSpline()
njKochanekSpline()

njCardinalSpline
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998