SSBM Decomp
Loading...
Searching...
No Matches
spline.c File Reference
#include "spline.h"
#include <placeholder.h>
#include "forward.h"
#include <math.h>
#include <MetroTRK/intrinsics.h>

Functions

f32 splGetHelmite (f32 fterm, f32 time, f32 p0, f32 p1, f32 d0, f32 d1)
void splGetCardinalPoint (Vec3 *p, Vec3 *cp, f32 tension, f32 u)
static void splGetBSplinePoint (Vec3 *p, Vec3 *cp, f32 u)
void splGetBezierPoint (Vec3 *p, Vec3 *cp, f32 u)
void splGetSplinePoint (Vec3 *p, HSD_Spline *spline, f32 u)
static f32 splArcLengthPolynomial (const f32 coeffs[5], f32 t)
f32 * spl_GetCoeffs (HSD_Spline *spl, s32 idx)
f32 spl_IterateSimpsonsMiddle (const f32 coeffs[5], const f32 dx, f32 t)
static f32 spl_GetArcLengthDx (f32 start, f32 midpoint)
f32 splArcLengthGetParameter (HSD_Spline *spl, f32 arg1)
void splArcLengthPoint (Vec3 *vec3, HSD_Spline *spline, f32 farg0)

Function Documentation

◆ splGetHelmite()

f32 splGetHelmite ( f32 fterm,
f32 time,
f32 p0,
f32 p1,
f32 d0,
f32 d1 )

◆ splGetCardinalPoint()

void splGetCardinalPoint ( Vec3 * p,
Vec3 * cp,
f32 tension,
f32 u )
inline

◆ splGetBSplinePoint()

void splGetBSplinePoint ( Vec3 * p,
Vec3 * cp,
f32 u )
static

◆ splGetBezierPoint()

void splGetBezierPoint ( Vec3 * p,
Vec3 * cp,
f32 u )
inline

◆ splGetSplinePoint()

void splGetSplinePoint ( Vec3 * p,
HSD_Spline * spline,
f32 u )

◆ splArcLengthPolynomial()

f32 splArcLengthPolynomial ( const f32 coeffs[5],
f32 t )
static

◆ spl_GetCoeffs()

f32 * spl_GetCoeffs ( HSD_Spline * spl,
s32 idx )
inline

◆ spl_IterateSimpsonsMiddle()

f32 spl_IterateSimpsonsMiddle ( const f32 coeffs[5],
const f32 dx,
f32 t )
inline

◆ spl_GetArcLengthDx()

f32 spl_GetArcLengthDx ( f32 start,
f32 midpoint )
static

◆ splArcLengthGetParameter()

f32 splArcLengthGetParameter ( HSD_Spline * spl,
f32 arg1 )

◆ splArcLengthPoint()

void splArcLengthPoint ( Vec3 * vec3,
HSD_Spline * spline,
f32 farg0 )