SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
RailPart.hpp
1#pragma once
2
3#include "JSystem/JGeometry/TVec.hpp"
4#include "Game/Map/BezierRail.hpp"
5
7
8class RailPart {
9public:
10
11 RailPart();
12
13 void init(const TVec3f &, const TVec3f &, const TVec3f &, const TVec3f &);
14 void initForBezier(const TVec3f &, const TVec3f &, const TVec3f &, const TVec3f &);
15 void calcPos(TVec3f *, f32) const;
16 void calcVelocity(TVec3f *, f32) const;
17 f32 getLength(f32, f32, int) const;
18 f32 getTotalLength() const;
19 f32 getParam(f32) const;
20 f32 getNearestParam(const TVec3f &, f32) const;
21
22 LinearRailPart* mRailPartLinear; // _0
23 BezierRailPart* mRailPartBezier; // _4
24};
25
27public:
28 inline LinearRailPart() { }
29
30 void set(const TVec3f &, const TVec3f &);
31
32 f32 getNearestParam(const TVec3f &, f32) const;
33
34 TVec3f _0;
35 TVec3f _C;
36 f32 _18;
37};