20 #include <ignition/math/config.hh>    21 #include <ignition/math/Vector2.hh>    22 #include <ignition/math/Vector3.hh>    32 #define DO_EXPAND(VAL)  VAL ## 1    33 #define EXPAND(VAL)     DO_EXPAND(VAL)    34 #if (EXPAND(IGNITION_MATH_MAJOR_VERSION) == 1)    35   #define MAJOR_VERSION 3    36   #define MINOR_VERSION 0    38   #define MAJOR_VERSION IGNITION_MATH_MAJOR_VERSION    39   #define MINOR_VERSION IGNITION_MATH_MINOR_VERSION    42 #if MAJOR_VERSION == 2 && MINOR_VERSION < 3    43     #define ign_math_vector2d_zero ignition::math::Vector2d(0, 0)    44     #define ign_math_vector3d_zero ignition::math::Vector3d(0, 0, 0)    45     #define _v_length sqrt(std::pow(_v[0], 2) + std::pow(_v[1], 2))    46     #define n_length sqrt(std::pow(n[0], 2) + std::pow(n[1], 2))    48   #define ign_math_vector2d_zero ignition::math::Vector2d::Zero    49   #define ign_math_vector3d_zero ignition::math::Vector3d::Zero    50   #define _v_length _v.Length()    51   #define n_length n.Length()    57   ignition::math::Vector2d
    67   ignition::math::Vector3d
    78     const ignition::math::Vector3d& _p0,
    79     const ignition::math::Vector3d& _p1,
    80     const ignition::math::Vector3d& _p2
    83     auto n = ignition::math::Vector3d::Normal(_p0, _p1, _p2);
 static ignition::math::Vector3d Normal(const ignition::math::Vector3d &_v0, const ignition::math::Vector3d &_v1, const ignition::math::Vector3d &_v2)
Compute the (normalised) normal to the plane defined by a triangle. 
static ignition::math::Vector2d Normalize(const ignition::math::Vector2d &_v)
Normalise a Vector2 (i.e. ensure it has unit length) 
#define ign_math_vector2d_zero
This file contains methods to calculate properties of simple geometrical objects. ...
#define ign_math_vector3d_zero