| 917 | } |
| 918 | |
| 919 | Mat2f SL::FrameX(const Spline2& spline, float t) |
| 920 | { |
| 921 | Vec2f v = Velocity(spline, t); |
| 922 | |
| 923 | Mat2f frame; |
| 924 | frame.x = norm_safe(v); // x = forward |
| 925 | frame.y = cross(frame.x); // y = left always |
| 926 | |
| 927 | return frame; |
| 928 | } |
| 929 | |
| 930 | float SL::LengthEstimate(const Spline2& s, float* error) |
| 931 | { |