1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-05-11 13:07:45 +00:00
sapphire/src/common/Util/UtilMath.h
コレット 23b7b052a1
PublicContent support. (#720)
* PublicContent support.

* update code
2021-08-16 18:18:29 +10:00

46 lines
1,003 B
C++

#ifndef _UTILMATH_H
#define _UTILMATH_H
#include "Common.h"
#define PI 3.14159265358979323846f
namespace Sapphire::Common::Util
{
float distanceSq( float x, float y, float z, float x1, float y1, float z1 );
float distance( float x, float y, float z, float x1, float y1, float z1 );
float distance( const Common::FFXIVARR_POSITION3& pos1, const Common::FFXIVARR_POSITION3& pos2 );
float distance2DSq( float x, float y, float x1, float y1 );
float distance2D( float x, float y, float x1, float y1 );
float calcAngTo( float x, float y, float x1, float y1 );
float calcAngFrom( float x, float y, float x1, float y1 );
uint16_t floatToUInt16( float val );
uint16_t floatToUInt16Rot( float val );
float floatFromUInt16Rot( uint16_t rot );
uint8_t floatToUInt8Rot( float val );
template < typename T >
T clamp( T val, T minimum, T maximum )
{
if( val > maximum )
return maximum;
if( val < minimum )
return minimum;
return val;
}
}
#endif