AGX Dynamics 2.42.3.1
Loading...
Searching...
No Matches
AffineMatrix4x4.h File Reference
#include <agx/config/AGX_USE_SSE.h>
#include <agx/Matrix4x4.h>
#include <agx/OrthoMatrix3x3.h>
#include <agx/EulerAngles.h>
#include <agxData/Type.h>

Go to the source code of this file.

Classes

class  agx::AffineMatrix4x4T< T >
 Matrix class for rigid transformations (translation, rotation). More...
 

Namespaces

namespace  agx
 The agx namespace contains the dynamics/math part of the AGX Dynamics API.
 

Macros

#define AGX_AFFINEMATRIX4X4_INNER_PRODUCT_3(a, b, r, c)
 
#define AGX_AFFINEMATRIX4X4_SET_ROW(row, v1, v2, v3)
 

Typedefs

typedef AffineMatrix4x4T< Real > agx::AffineMatrix4x4
 
typedef AffineMatrix4x4T< Real64 > agx::AffineMatrix4x4d
 
typedef AffineMatrix4x4T< Real32 > agx::AffineMatrix4x4f
 

Functions

template<typename T >
bool agx::equivalent (const agx::AffineMatrix4x4T< T > &a, const agx::AffineMatrix4x4T< T > &b, T epsilon=T(AGX_EQUIVALENT_EPSILON))
 
template<>
AffineMatrix4x4d agx::inverse< AffineMatrix4x4d > (const AffineMatrix4x4d &value)
 
template<>
AffineMatrix4x4f agx::inverse< AffineMatrix4x4f > (const AffineMatrix4x4f &value)
 
template<typename T >
Vec3T< T > agx::operator* (const Vec3T< T > &v, const AffineMatrix4x4T< T > &m)
 
template<typename T >
Vec4T< T > agx::operator* (const Vec4T< T > &v, const AffineMatrix4x4T< T > &m)
 

Macro Definition Documentation

◆ AGX_AFFINEMATRIX4X4_INNER_PRODUCT_3

#define AGX_AFFINEMATRIX4X4_INNER_PRODUCT_3 (   a,
  b,
  r,
  c 
)
Value:
((a).m_data[r][0] * (b).m_data[0][c]) \
+((a).m_data[r][1] * (b).m_data[1][c]) \
+((a).m_data[r][2] * (b).m_data[2][c])

Definition at line 37 of file AffineMatrix4x4.h.

◆ AGX_AFFINEMATRIX4X4_SET_ROW

#define AGX_AFFINEMATRIX4X4_SET_ROW (   row,
  v1,
  v2,
  v3 
)
Value:
this->m_data[(row)][0] = (v1); \
this->m_data[(row)][1] = (v2); \
this->m_data[(row)][2] = (v3);

Definition at line 32 of file AffineMatrix4x4.h.