Loading...
Searching...
No Matches
matrixabstractlayert3d.hh File Reference
#include "t3d/t3d.h"
#include "t3d/v3d.h"
#include <cmath>
#include "jrl/mathtools/matrix3x3.hh"
Include dependency graph for matrixabstractlayert3d.hh:

Macros

#define MAL_S4x4_MATRIX_TYPE(type)
 
#define MAL_S4x4_MATRIX(name, type)
 
#define MAL_S4x4_MATRIX_CLEAR(name)
 
#define MAL_S4x4_MATRIX_SET_IDENTITY(name)
 
#define MAL_S4x4_INVERSE(name, inv_matrix, type)
 
#define MAL_S4x4_RET_TRANSPOSE(matrix)
 
#define MAL_S4x4_TRANSPOSE_A_in_At(A, At)
 
#define MAL_S4x4_RET_A_by_B(A, B)
 
#define MAL_S4x4_C_eq_A_by_B(C, A, B)
 
#define MAL_S4x4_MATRIX_ACCESS_I(name, i)
 
#define MAL_S4x4_MATRIX_ACCESS_I_J(name, i, j)
 
#define MAL_S3_VECTOR_TYPE(type)
 
#define MAL_S3_VECTOR(name, type)
 
#define MAL_S3_VECTOR_(type)
 
#define MAL_S3_VECTOR_SIZE(name)
 
#define MAL_S3_VECTOR_FILL(name, value)
 
#define MAL_S3_VECTOR_NORM(name)
 
#define MAL_S3_VECTOR_CROSS_PRODUCT(res, v1, v2)
 
#define MAL_S3_RET_VECTOR_DATABLOCK(name)
 
#define MAL_S3_VECTOR_ACCESS(name, i)
 
#define MAL_S3_VECTOR_CLEAR(name)
 
#define MAL_S4_VECTOR_TYPE(type)
 
#define MAL_S4_VECTOR(name, type)
 
#define MAL_S4_VECTOR_SIZE(name)
 
#define MAL_S4_VECTOR_FILL(name, value)
 
#define MAL_S4_VECTOR_NORM(name)
 
#define MAL_S4_RET_VECTOR_DATABLOCK(name)
 
#define MAL_S4_VECTOR_ACCESS(name, i)
 
#define MAL_S3x3_MATRIX_TYPE(type)
 
#define MAL_S3x3_MATRIX(name, type)
 
#define MAL_S3x3_MATRIX_CLEAR(name)
 
#define MAL_S3x3_MATRIX_SET_IDENTITY(name)
 
#define MAL_S3x3_INVERSE(name, inv_matrix, type)
 
#define MAL_S3x3_RET_TRANSPOSE(matrix)
 
#define MAL_S3x3_TRANSPOSE_A_in_At(A, At)
 
#define MAL_S3x3_RET_A_by_B(A, B)
 
#define MAL_S3x3_C_eq_A_by_B(C, A, B)
 
#define MAL_S3x3_MATRIX_ACCESS_I(name, i)
 
#define MAL_S3x3_MATRIX_ACCESS_I_J(name, i, j)
 

Typedefs

typedef T3D matrix4d
 
typedef V3D vector3d
 
typedef V3D vector4d
 
typedef jrlMathTools::Matrix3x3< double > matrix3d
 

Macro Definition Documentation

◆ MAL_S3_RET_VECTOR_DATABLOCK

#define MAL_S3_RET_VECTOR_DATABLOCK ( name)
Value:
&name

◆ MAL_S3_VECTOR

#define MAL_S3_VECTOR ( name,
type )
Value:
V3D name

◆ MAL_S3_VECTOR_

#define MAL_S3_VECTOR_ ( type)
Value:
V3D

◆ MAL_S3_VECTOR_ACCESS

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

◆ MAL_S3_VECTOR_CLEAR

#define MAL_S3_VECTOR_CLEAR ( name)
Value:
{ name[0] = 0.; \
name[1] = 0.; \
name[2] = 0.; }

◆ MAL_S3_VECTOR_CROSS_PRODUCT

#define MAL_S3_VECTOR_CROSS_PRODUCT ( res,
v1,
v2 )
Value:
{ res[0] = v1[1]*v2[2]-v1[2]*v2[1]; \
res[1] = v1[2]*v2[0]-v1[0]*v2[2]; \
res[2] = v1[0]*v2[1]-v1[1]*v2[0];}

◆ MAL_S3_VECTOR_FILL

#define MAL_S3_VECTOR_FILL ( name,
value )
Value:
{ name[0] = value; \
name[1] = value; \
name[2] = value; }

◆ MAL_S3_VECTOR_NORM

#define MAL_S3_VECTOR_NORM ( name)
Value:
sqrt(name[0]*name[0]+ \
name[1]*name[1]+ \
name[2]*name[2])

◆ MAL_S3_VECTOR_SIZE

#define MAL_S3_VECTOR_SIZE ( name)
Value:
3

◆ MAL_S3_VECTOR_TYPE

#define MAL_S3_VECTOR_TYPE ( type)
Value:
V3D

◆ MAL_S3x3_C_eq_A_by_B

#define MAL_S3x3_C_eq_A_by_B ( C,
A,
B )
Value:
A.CeqthismulB(B,C)

◆ MAL_S3x3_INVERSE

#define MAL_S3x3_INVERSE ( name,
inv_matrix,
type )
Value:
name.Inversion(inv_matrix)

◆ MAL_S3x3_MATRIX

#define MAL_S3x3_MATRIX ( name,
type )

◆ MAL_S3x3_MATRIX_ACCESS_I

#define MAL_S3x3_MATRIX_ACCESS_I ( name,
i )
Value:
name[i]

◆ MAL_S3x3_MATRIX_ACCESS_I_J

#define MAL_S3x3_MATRIX_ACCESS_I_J ( name,
i,
j )
Value:
name(i,j)

◆ MAL_S3x3_MATRIX_CLEAR

#define MAL_S3x3_MATRIX_CLEAR ( name)
Value:
name.setZero()

◆ MAL_S3x3_MATRIX_SET_IDENTITY

#define MAL_S3x3_MATRIX_SET_IDENTITY ( name)
Value:
name.setIdentity()

◆ MAL_S3x3_MATRIX_TYPE

#define MAL_S3x3_MATRIX_TYPE ( type)

◆ MAL_S3x3_RET_A_by_B

#define MAL_S3x3_RET_A_by_B ( A,
B )
Value:
A*B

◆ MAL_S3x3_RET_TRANSPOSE

#define MAL_S3x3_RET_TRANSPOSE ( matrix)
Value:
matrix.Transpose()

◆ MAL_S3x3_TRANSPOSE_A_in_At

#define MAL_S3x3_TRANSPOSE_A_in_At ( A,
At )
Value:
A.Transpose(At)

◆ MAL_S4_RET_VECTOR_DATABLOCK

#define MAL_S4_RET_VECTOR_DATABLOCK ( name)
Value:
&name

◆ MAL_S4_VECTOR

#define MAL_S4_VECTOR ( name,
type )
Value:
V3D name

◆ MAL_S4_VECTOR_ACCESS

#define MAL_S4_VECTOR_ACCESS ( name,
i )
Value:
name[i]

◆ MAL_S4_VECTOR_FILL

#define MAL_S4_VECTOR_FILL ( name,
value )
Value:
{ name[0] = value; \
name[1] = value; \
name[2] = value; \
name[3] = value; }

◆ MAL_S4_VECTOR_NORM

#define MAL_S4_VECTOR_NORM ( name)
Value:
{ sqrt(name[0]*name[0]+ \
name[1]*name[1]+ \
name[2]*name[2]+ \
name[3]*name[3])}

◆ MAL_S4_VECTOR_SIZE

#define MAL_S4_VECTOR_SIZE ( name)
Value:
3

◆ MAL_S4_VECTOR_TYPE

#define MAL_S4_VECTOR_TYPE ( type)
Value:
V3D

◆ MAL_S4x4_C_eq_A_by_B

#define MAL_S4x4_C_eq_A_by_B ( C,
A,
B )
Value:
(C)=(A)*(B)

◆ MAL_S4x4_INVERSE

#define MAL_S4x4_INVERSE ( name,
inv_matrix,
type )
Value:
inv_matrix=~name;

◆ MAL_S4x4_MATRIX

#define MAL_S4x4_MATRIX ( name,
type )
Value:
T3D name

◆ MAL_S4x4_MATRIX_ACCESS_I

#define MAL_S4x4_MATRIX_ACCESS_I ( name,
i )
Value:
name.matrix[i]

◆ MAL_S4x4_MATRIX_ACCESS_I_J

#define MAL_S4x4_MATRIX_ACCESS_I_J ( name,
i,
j )
Value:
name.matrix(i,j)

◆ MAL_S4x4_MATRIX_CLEAR

#define MAL_S4x4_MATRIX_CLEAR ( name)
Value:
/*Clear don't have any sense*/

◆ MAL_S4x4_MATRIX_SET_IDENTITY

#define MAL_S4x4_MATRIX_SET_IDENTITY ( name)
Value:
name=t3dMatrixIdentity

◆ MAL_S4x4_MATRIX_TYPE

#define MAL_S4x4_MATRIX_TYPE ( type)
Value:
T3D

◆ MAL_S4x4_RET_A_by_B

#define MAL_S4x4_RET_A_by_B ( A,
B )
Value:
(A)*(B)

◆ MAL_S4x4_RET_TRANSPOSE

#define MAL_S4x4_RET_TRANSPOSE ( matrix)
Value:
/*Transpose don't have any sense*/

◆ MAL_S4x4_TRANSPOSE_A_in_At

#define MAL_S4x4_TRANSPOSE_A_in_At ( A,
At )
Value:
/*Transpose don't have any sense*/

Typedef Documentation

◆ matrix3d

◆ matrix4d

typedef T3D matrix4d

This is an implementation of MatrixAbstractLayerSmall using T3D, R3D and V3D

◆ vector3d

typedef V3D vector3d

◆ vector4d

typedef V3D vector4d