OdysseyDecomp/lib/al/util/VectorUtil.h
MonsterDruide1 f780e17913 dump
2024-03-16 12:27:00 +01:00

34 lines
1.4 KiB
C++

#pragma once
#include <math/seadMatrix.h>
#include <math/seadQuat.h>
#include <math/seadVector.h>
namespace al {
bool isNearZero(float, float);
bool isNearZero(const sead::Vector2f&, float);
bool isNearZero(const sead::Vector3f&, float);
void verticalizeVec(sead::Vector3f*, const sead::Vector3f&, const sead::Vector3f&);
bool tryNormalizeOrZero(sead::Vector3f*);
bool tryNormalizeOrZero(sead::Vector3f*, const sead::Vector3f&);
void normalize(sead::Vector3f*);
void turnVecToVecDegree(sead::Vector3f*, const sead::Vector3f&, const sead::Vector3f&, float);
void turnVecToVecRate(sead::Vector3f*, const sead::Vector3f&, const sead::Vector3f&, float);
void calcQuatFront(sead::Vector3f*, const sead::Quatf&);
void calcQuatUp(sead::Vector3f*, const sead::Quatf&);
void makeQuatFrontUp(sead::Quatf*, const sead::Vector3f&, const sead::Vector3f&);
void makeMtxFrontUpPos(sead::Matrix34f*, const sead::Vector3f&, const sead::Vector3f&, const sead::Vector3f&);
void makeMtxUpFrontPos(sead::Matrix34f*, const sead::Vector3f&, const sead::Vector3f&, const sead::Vector3f&);
void makeMtxRotateTrans(sead::Matrix34f*, const sead::Vector3f&, const sead::Vector3f&);
bool calcAngleDegree(const sead::Vector3f&, const sead::Vector3f&);
bool isReverseDirection(const sead::Vector3f&, const sead::Vector3f&, float);
void makeQuatRotationLimit(sead::Quatf*, const sead::Vector3f&, const sead::Vector3f&, float);
} // namespace al