MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / EvalBspline3

Function EvalBspline3

src/SB/Core/x/xSpline.cpp:400–414  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

398}
399
400void EvalBspline3(xSpline3* spl, F32 u, U32 deriv, xVec3* o)
401{
402 F32 N[7][4];
403 xCoef3 coef;
404 F32 clamp_result;
405 S32 seg_result;
406 xVec3* temp_vec;
407
408 clamp_result = ClampBspline(spl, u);
409 seg_result = SegBspline(spl, clamp_result);
410 BasisBspline(N, &spl->knot[seg_result]);
411 temp_vec = spl->bctrl + (seg_result * 0xC);
412 BasisToCoef3(&coef, N, temp_vec, temp_vec + 0xC, temp_vec + 0x18, temp_vec + 0x24);
413 EvalCoef3(&coef, clamp_result, deriv, o);
414}
415
416xCoef3* CoefSeg3(xSpline3* spl, U32 seg, xCoef3* tempCoef)
417{

Callers 1

xSpline3_EvalSegFunction · 0.70

Calls 5

ClampBsplineFunction · 0.85
SegBsplineFunction · 0.85
BasisToCoef3Function · 0.85
EvalCoef3Function · 0.85
BasisBsplineFunction · 0.70

Tested by

no test coverage detected