njCardinalSpline
Cardinalスプライン補間関数

書 式

#include <Ninja.h>
void  njCardinalSpline(float *idata, float *odata, NJS_SPLINE *attr, float frame);
float       *idata
float       *odata
NJS_SPLINE  *attr
float       frame

引 数

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

返 値

なし

エラー

なし

機 能

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

用 例

#include <NINJA.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