cgv
Loading...
Searching...
No Matches
cgv::math::cubic_hermite_tube< T > Class Template Reference

Public Types

using vec_type = fvec< T, 3 >
 
using matrix_type = fmat< T, 4, 4 >
 
using node_type = hermite_tube_node< T >
 

Public Member Functions

template<typename ParamT = float>
node_type evaluate (ParamT t) const
 
template<typename ParamT = float>
std::vector< node_typesample (size_t num_segments) const
 
std::pair< vec_type, vec_typeapproximate_axis_aligned_bounding_box () const
 
std::array< quadratic_bezier_tube< T >, 2 > split_to_quadratic_bezier_tubes () const
 

Public Attributes

node_type n0
 
node_type n1
 

Detailed Description

template<typename T>
class cgv::math::cubic_hermite_tube< T >

Definition at line 19 of file hermite_tube.h.

Member Typedef Documentation

◆ matrix_type

template<typename T >
using cgv::math::cubic_hermite_tube< T >::matrix_type = fmat<T, 4, 4>

Definition at line 22 of file hermite_tube.h.

◆ node_type

template<typename T >
using cgv::math::cubic_hermite_tube< T >::node_type = hermite_tube_node<T>

Definition at line 23 of file hermite_tube.h.

◆ vec_type

template<typename T >
using cgv::math::cubic_hermite_tube< T >::vec_type = fvec<T, 3>

Definition at line 21 of file hermite_tube.h.

Member Function Documentation

◆ approximate_axis_aligned_bounding_box()

template<typename T >
std::pair< vec_type, vec_type > cgv::math::cubic_hermite_tube< T >::approximate_axis_aligned_bounding_box ( ) const
inline

Definition at line 46 of file hermite_tube.h.

◆ evaluate()

template<typename T >
template<typename ParamT = float>
node_type cgv::math::cubic_hermite_tube< T >::evaluate ( ParamT  t) const
inline

Definition at line 31 of file hermite_tube.h.

◆ sample()

template<typename T >
template<typename ParamT = float>
std::vector< node_type > cgv::math::cubic_hermite_tube< T >::sample ( size_t  num_segments) const
inline

Definition at line 39 of file hermite_tube.h.

◆ split_to_quadratic_bezier_tubes()

template<typename T >
std::array< quadratic_bezier_tube< T >, 2 > cgv::math::cubic_hermite_tube< T >::split_to_quadratic_bezier_tubes ( ) const
inline

Definition at line 61 of file hermite_tube.h.

Member Data Documentation

◆ n0

template<typename T >
node_type cgv::math::cubic_hermite_tube< T >::n0

Definition at line 26 of file hermite_tube.h.

◆ n1

template<typename T >
node_type cgv::math::cubic_hermite_tube< T >::n1

Definition at line 28 of file hermite_tube.h.


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