void njBezierSpline( idata, odata, attr, frame )
Float *idata
Float *odata
NJS_SPLINE *attr
Float frame
idata 入力データ(idata[サンプルポイント数×3]) odata 出力データ(odata[3]) attr スプライン属性へのポインタ frame フレーム
なし
Bezier(ベジェ)曲線補間された値が、指定された引数に格納されます。 フレーム数は0〜1の間で設定してください。 属性は、スプライン属性構造体のiparamメンバ(attr->iparam[0])にサンプルポイント数を指定してください。
#include <Shinobi.h> #define X1 1.f #define Y1 0.f #define Z1 0.f #define X2 5.f : #define POINTS 5 float idata[5][3] = { {X1, Y1, Z1}, {X2, Y2, Z2}, {X3, Y3, Z3}, {X4, Y4, Z4}, {X5, Y5, Z5}, }; float odata[3]; NJS_SPLINE attr; : attr.iparam[0] = POINTS; njBezierSpline((float*)idata, odata, &attr, 0.5f); :
njCubicBezierSpline() 3次元Bezier曲線補間