NRE::Math::Segment3D< T > Class Template Reference

A 3D homogeneous segment. More...

#include <NRE_Segment3D.hpp>

Inheritance diagram for NRE::Math::Segment3D< T >:

Public Member Functions

constexpr Segment3D ()=default
 
template<class K , class L >
constexpr Segment3D (Point3D< K > const &s, Point3D< L > const &e)
 
template<class K , class L >
constexpr Segment3D (Point2D< K > const &s, Point2D< L > const &e)
 
template<class K , class L , class N , class M >
constexpr Segment3D (K sX, L sY, N eX, M eY)
 
constexpr Segment3D (Segment3D const &s)=default
 
constexpr Segment3D (Segment3D &&s)=default
 
 ~Segment3D ()=default
 
constexpr Point3D< T > const & getStart () const
 
constexpr Point3D< T > const & getEnd () const
 
constexpr Vector3D< T > getVector () const
 
constexpr Segment3Doperator= (Segment3D const &s)=default
 
constexpr Segment3Doperator= (Segment3D &&s)=default
 
template<class K >
constexpr bool operator== (Segment3D< K > const &s) const
 
template<class K >
constexpr bool operator!= (Segment3D< K > const &s) const
 
Utility::String toString () const
 

Detailed Description

template<class T>
class NRE::Math::Segment3D< T >

A 3D homogeneous segment.

Constructor & Destructor Documentation

template<class T>
constexpr NRE::Math::Segment3D< T >::Segment3D ( )
default

Default constructor

template<class T>
template<class K , class L >
constexpr NRE::Math::Segment3D< T >::Segment3D ( Point3D< K > const &  s,
Point3D< L > const &  e 
)

Construct a segment from his two points

Parameters
sthe segment's start
ethe segment's end
template<class T>
template<class K , class L >
constexpr NRE::Math::Segment3D< T >::Segment3D ( Point2D< K > const &  s,
Point2D< L > const &  e 
)

Construct a segment from his two points

Parameters
sthe segment's start
ethe segment's end
template<class T>
template<class K , class L , class N , class M >
constexpr NRE::Math::Segment3D< T >::Segment3D ( sX,
sY,
eX,
eY 
)

Construct a segment from his two points

Parameters
sXthe segment's start x
sYthe segment's start y
eXthe segment's end x
eYthe segment's end y
template<class T>
constexpr NRE::Math::Segment3D< T >::Segment3D ( Segment3D< T > const &  s)
default

Copy s into this

Parameters
sthe 3D segment to copy
template<class T>
constexpr NRE::Math::Segment3D< T >::Segment3D ( Segment3D< T > &&  s)
default

Move s into this

Parameters
sthe 3D segment to move
template<class T>
NRE::Math::Segment3D< T >::~Segment3D ( )
default

Segment3D Deconstructor

Member Function Documentation

template<class T>
constexpr Point3D<T> const& NRE::Math::Segment3D< T >::getEnd ( ) const
Returns
the end point
template<class T>
constexpr Point3D<T> const& NRE::Math::Segment3D< T >::getStart ( ) const
Returns
the start point
template<class T>
constexpr Vector3D<T> NRE::Math::Segment3D< T >::getVector ( ) const
Returns
the segment's vector
template<class T>
template<class K >
constexpr bool NRE::Math::Segment3D< T >::operator!= ( Segment3D< K > const &  s) const

Difference test between this and s

Parameters
sthe segment to test with this
Returns
the test's result
template<class T>
constexpr Segment3D& NRE::Math::Segment3D< T >::operator= ( Segment3D< T > const &  s)
default

Copy assignment of s into this

Parameters
sthe 3D segment to copy into this
Returns
the reference of himself
template<class T>
constexpr Segment3D& NRE::Math::Segment3D< T >::operator= ( Segment3D< T > &&  s)
default

Move assignment of s into this

Parameters
sthe 3D segment to move into this
Returns
the reference of himself
template<class T>
template<class K >
constexpr bool NRE::Math::Segment3D< T >::operator== ( Segment3D< K > const &  s) const

Equality test between this and s

Parameters
sthe segment to test with this
Returns
the test's result
template<class T>
Utility::String NRE::Math::Segment3D< T >::toString ( ) const

Convert the segment into a string

Returns
the converted segment

The documentation for this class was generated from the following files: