Skip to content

raisim::CrossProduct ​

class · #include <raisim/math/Expression.hpp>

Inherits: raisim::MatExpr< CrossProduct< T1, T2 > >

cpp
template <class T1, class T2>
class CrossProduct

Lazy 3D cross product u x v of two 3x1 expressions, returned by cross() on a 3D vector. It holds references to its operands and must not outlive them.

Constructors & destructor ​

CrossProduct ​

cpp
explicit CrossProduct(T1 const &u, T2 const &v)

Parameters

ParameterDescription
u (in)left operand (3x1, held by reference)
v (in)right operand (3x1, held by reference)

Public member functions ​

operator() ​

cpp
double operator()(size_t i, size_t j) const

Parameters

ParameterDescription
i (in)row index
j (in)ignored

Returns component i of the cross product.

cpp
double operator()(size_t i) const

Parameters

ParameterDescription
i (in)component index

Returns component i of the cross product.

Static member functions ​

size static ​

cpp
static constexpr size_t size()

Returns 3.

cols static ​

cpp
static constexpr size_t cols()

Returns 1.

rows static ​

cpp
static constexpr size_t rows()

Returns 3.

Public attributes ​

_u ​

cpp
const T1 &_u

Left operand.

_v ​

cpp
const T2 &_v

Right operand.

Inherited members ​

From raisim::MatExpr: SelfType

RaiSim — physics for robotics and AI.