Loading...
Searching...
No Matches
matrixabstractlayervector3jrlmath.hh File Reference
#include <cmath>
#include <jrl/mathtools/vector3.hh>
Include dependency graph for matrixabstractlayervector3jrlmath.hh:
This graph shows which files directly or indirectly include this file:

Macros

#define MAL_S3_VECTOR(name, type)    jrlMathTools::Vector3D<type> name
 
#define MAL_S3_VECTOR_TYPE(type)   jrlMathTools::Vector3D<type>
 
#define MAL_S3_VECTOR_SIZE(name)    3
 
#define MAL_S3_VECTOR_FILL(name, value)
 
#define MAL_S3_VECTOR_CLEAR(name)
 
#define MAL_S3_VECTOR_NORM(name)    name.norm()
 
#define MAL_S3_VECTOR_CROSS_PRODUCT(res, v1, v2)    res = v1 ^ v2;
 
#define MAL_S3_RET_VECTOR_DATABLOCK(name)    &name
 
#define MAL_S3_VECTOR_ACCESS(name, i)    name[i]
 

Typedefs

typedef jrlMathTools::Vector3D< double > vector3d
 

Macro Definition Documentation

◆ MAL_S3_RET_VECTOR_DATABLOCK

#define MAL_S3_RET_VECTOR_DATABLOCK ( name)     &name

◆ MAL_S3_VECTOR

#define MAL_S3_VECTOR ( name,
type )    jrlMathTools::Vector3D<type> name

◆ MAL_S3_VECTOR_ACCESS

#define MAL_S3_VECTOR_ACCESS ( name,
i )    name[i]

◆ MAL_S3_VECTOR_CLEAR

#define MAL_S3_VECTOR_CLEAR ( name)
Value:
{ name.m_x = 0.0; \
name.m_y = 0.0; \
name.m_z = 0.0; }

◆ MAL_S3_VECTOR_CROSS_PRODUCT

#define MAL_S3_VECTOR_CROSS_PRODUCT ( res,
v1,
v2 )    res = v1 ^ v2;

◆ MAL_S3_VECTOR_FILL

#define MAL_S3_VECTOR_FILL ( name,
value )
Value:
{ name.m_x = value; \
name.m_y = value; \
name.m_z = value; }

◆ MAL_S3_VECTOR_NORM

#define MAL_S3_VECTOR_NORM ( name)     name.norm()

◆ MAL_S3_VECTOR_SIZE

#define MAL_S3_VECTOR_SIZE ( name)     3

◆ MAL_S3_VECTOR_TYPE

#define MAL_S3_VECTOR_TYPE ( type)    jrlMathTools::Vector3D<type>

Typedef Documentation

◆ vector3d

This is a very fast and simple implementation of a 3D vector class of double.