Gamp v0.0.7-36-g24b1eb6
Gamp: Graphics, Audio, Multimedia and Processing
Loading...
Searching...
No Matches
jau::math::util Namespace Reference

Classes

class  MatrixStack
 A Matrix stack of compounds, each consisting of 16 * T More...
 
class  PMVMatrix4
 PMVMatrix4 implements the basic computer graphics Matrix4 pack using projection (P), modelview (Mv) and texture (T) Matrix4 operations. More...
 
class  SimpleStack
 A simple stack of compounds, each consisting of element_size * T More...
 
class  SyncBuffer
 Convenient tuple of a sync_action_t and data buffer. More...
 
class  SyncMatrices4
 SyncBuffer interface with multiple underlying Matrix4. More...
 
class  SyncMatrix4
 SyncBuffer interface with a single underlying Matrix4. More...
 

Typedefs

typedef MatrixStack< float > Mat4fStack
 4x4 float matrix stack
 
typedef PMVMatrix4< float > PMVMat4f
 
typedef SimpleStack< float, 16 > Stack16f
 4x4 float matrix stack based on single float elements
 
typedef void(* sync_action_fptr) ()
 Plain function pointer type matching sync_action_t.
 
typedef jau::function< void()> sync_action_t
 Specific data synchronization action implemented by the data provider to update the buffer with the underlying data before usage, e.g.
 
typedef SyncMatrix4< float > SyncMat4f
 
typedef SyncMatrices4< float > SyncMats4f
 

Functions

constexpr jau::math::Vec3f getEulerAngleOrientation (const jau::math::Vec3f &eulerRotation) noexcept
 Returns an orientation vector for given eurler X/Y/Z angles in radians.
 
constexpr float getOrthoWinZ (float orthoZ, float zNear, float zFar) noexcept
 Returns orthogonal distance (1f/zNear-1f/orthoZ) / (1f/zNear-1f/zFar);.
 
constexpr float getZBufferEpsilon (int zBits, float z, float zNear) noexcept
 Returns resolution of Z buffer of given parameter, see Love Your Z-Buffer.
 
constexpr int getZBufferValue (int zBits, float z, float zNear, float zFar) noexcept
 Returns Z buffer value of given parameter, see Love Your Z-Buffer.
 
template<typename Value_type, std::enable_if_t< std::is_floating_point_v< Value_type >, bool > = true>
std::ostream & operator<< (std::ostream &out, const PMVMatrix4< Value_type > &v) noexcept