Code-Eli  0.3.6
eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ > Class Template Reference

#include <piecewise_general_creator.hpp>

Inheritance diagram for eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >:
Collaboration diagram for eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >:

Classes

class  joint_data
 

Public Types

enum  {
  POINT_SET =0x000001, LEFT_FP_SET =0x000010, RIGHT_FP_SET =0x000100, LEFT_FPP_SET =0x001000,
  RIGHT_FPP_SET =0x010000
}
 
enum  joint_continuity { C0 =general::C0, C1 =general::C1, C2 =general::C2 }
 
typedef piecewise_creator_base< data__, dim__, tol__ > base_class_type
 
typedef base_class_type::data_type data_type
 
typedef base_class_type::point_type point_type
 
typedef base_class_type::index_type index_type
 
typedef base_class_type::tolerance_type tolerance_type
 
- Public Types inherited from eli::geom::curve::piecewise_creator_base< data__, dim__, tol__ >
typedef data__ data_type
 
typedef Eigen::Matrix< data_type, 1, dim__ > point_type
 
typedef point_type::Index index_type
 
typedef tol__ tolerance_type
 

Public Member Functions

 piecewise_general_creator ()
 
 piecewise_general_creator (const index_type &ns)
 
 piecewise_general_creator (const piecewise_general_creator< data_type, dim__, tolerance_type > &pcc)
 
virtual ~piecewise_general_creator ()
 
void set_closed ()
 
void set_open ()
 
bool is_closed () const
 
bool is_open () const
 
bool set_conditions (const std::vector< joint_data > &jnts, const std::vector< index_type > &maxd, bool cl=false)
 
virtual bool create (piecewise< bezier, data_type, dim__, tolerance_type > &pc) const
 
- Public Member Functions inherited from eli::geom::curve::piecewise_creator_base< data__, dim__, tol__ >
 piecewise_creator_base (index_type n, const data_type &tt0)
 
 piecewise_creator_base (const piecewise_creator_base< data_type, dim__, tolerance_type > &pcb)
 
virtual ~piecewise_creator_base ()
 
index_type get_number_segments () const
 
void set_number_segments (const index_type &ns)
 
void set_t0 (const data_type &tt0)
 
data_type get_t0 () const
 
void set_segment_dt (const data_type &dtt, const index_type &i)
 
data_type get_segment_dt (const index_type &i) const
 

Protected Member Functions

template<typename Derived1 , typename Derived2 >
void set_point_condition (Eigen::MatrixBase< Derived1 > &rows, Eigen::MatrixBase< Derived2 > &rhs, const index_type start_index, const index_type &seg_degree, const point_type &p, bool segment_start) const
 
template<typename Derived1 , typename Derived2 >
void set_fp_condition (Eigen::MatrixBase< Derived1 > &rows, Eigen::MatrixBase< Derived2 > &rhs, const index_type start_index, const index_type &seg_degree, const point_type &fp, const data_type &dt, bool segment_start) const
 
template<typename Derived1 , typename Derived2 >
void set_fp_continuous_condition (Eigen::MatrixBase< Derived1 > &rows, Eigen::MatrixBase< Derived2 > &rhs, const index_type start_index, const index_type &l_seg_degree, const index_type &r_seg_degree, const data_type &l_dt, const data_type &r_dt) const
 
template<typename Derived1 , typename Derived2 >
void set_fpp_condition (Eigen::MatrixBase< Derived1 > &rows, Eigen::MatrixBase< Derived2 > &rhs, const index_type start_index, const index_type &seg_degree, const point_type &fpp, const data_type &dt, bool segment_start) const
 
template<typename Derived1 , typename Derived2 >
void set_fpp_continuous_condition (Eigen::MatrixBase< Derived1 > &rows, Eigen::MatrixBase< Derived2 > &rhs, const index_type &start_index, const index_type &l_seg_degree, const index_type &r_seg_degree, const data_type &l_dt, const data_type &r_dt) const
 

Static Protected Member Functions

static bool valid_degree (const index_type &deg, const index_type &max_deg)
 

Private Attributes

std::vector< joint_datajoints
 
std::vector< index_typemax_degree
 
bool closed
 

Member Typedef Documentation

template<typename data__, unsigned short dim__, typename tol__>
typedef piecewise_creator_base<data__, dim__, tol__> eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::base_class_type
template<typename data__, unsigned short dim__, typename tol__>
typedef base_class_type::data_type eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::data_type
template<typename data__, unsigned short dim__, typename tol__>
typedef base_class_type::index_type eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::index_type
template<typename data__, unsigned short dim__, typename tol__>
typedef base_class_type::point_type eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::point_type
template<typename data__, unsigned short dim__, typename tol__>
typedef base_class_type::tolerance_type eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::tolerance_type

Member Enumeration Documentation

template<typename data__, unsigned short dim__, typename tol__>
anonymous enum
Enumerator
POINT_SET 
LEFT_FP_SET 
RIGHT_FP_SET 
LEFT_FPP_SET 
RIGHT_FPP_SET 
template<typename data__, unsigned short dim__, typename tol__>
enum eli::geom::curve::piecewise_general_creator::joint_continuity
Enumerator
C0 
C1 
C2 

Constructor & Destructor Documentation

template<typename data__, unsigned short dim__, typename tol__>
eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::piecewise_general_creator ( )
inline
template<typename data__, unsigned short dim__, typename tol__>
eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::piecewise_general_creator ( const index_type ns)
inline
template<typename data__, unsigned short dim__, typename tol__>
eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::piecewise_general_creator ( const piecewise_general_creator< data_type, dim__, tolerance_type > &  pcc)
inline
template<typename data__, unsigned short dim__, typename tol__>
virtual eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::~piecewise_general_creator ( )
inlinevirtual

Member Function Documentation

template<typename data__, unsigned short dim__, typename tol__>
virtual bool eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::create ( piecewise< bezier, data_type, dim__, tolerance_type > &  pc) const
inlinevirtual

Implements eli::geom::curve::piecewise_creator_base< data__, dim__, tol__ >.

Here is the call graph for this function:

template<typename data__, unsigned short dim__, typename tol__>
bool eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::is_closed ( ) const
inline
template<typename data__, unsigned short dim__, typename tol__>
bool eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::is_open ( ) const
inline
template<typename data__, unsigned short dim__, typename tol__>
void eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::set_closed ( )
inline
template<typename data__, unsigned short dim__, typename tol__>
bool eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::set_conditions ( const std::vector< joint_data > &  jnts,
const std::vector< index_type > &  maxd,
bool  cl = false 
)
inline

Here is the call graph for this function:

template<typename data__, unsigned short dim__, typename tol__>
template<typename Derived1 , typename Derived2 >
void eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::set_fp_condition ( Eigen::MatrixBase< Derived1 > &  rows,
Eigen::MatrixBase< Derived2 > &  rhs,
const index_type  start_index,
const index_type seg_degree,
const point_type fp,
const data_type dt,
bool  segment_start 
) const
inlineprotected
template<typename data__, unsigned short dim__, typename tol__>
template<typename Derived1 , typename Derived2 >
void eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::set_fp_continuous_condition ( Eigen::MatrixBase< Derived1 > &  rows,
Eigen::MatrixBase< Derived2 > &  rhs,
const index_type  start_index,
const index_type l_seg_degree,
const index_type r_seg_degree,
const data_type l_dt,
const data_type r_dt 
) const
inlineprotected
template<typename data__, unsigned short dim__, typename tol__>
template<typename Derived1 , typename Derived2 >
void eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::set_fpp_condition ( Eigen::MatrixBase< Derived1 > &  rows,
Eigen::MatrixBase< Derived2 > &  rhs,
const index_type  start_index,
const index_type seg_degree,
const point_type fpp,
const data_type dt,
bool  segment_start 
) const
inlineprotected
template<typename data__, unsigned short dim__, typename tol__>
template<typename Derived1 , typename Derived2 >
void eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::set_fpp_continuous_condition ( Eigen::MatrixBase< Derived1 > &  rows,
Eigen::MatrixBase< Derived2 > &  rhs,
const index_type start_index,
const index_type l_seg_degree,
const index_type r_seg_degree,
const data_type l_dt,
const data_type r_dt 
) const
inlineprotected
template<typename data__, unsigned short dim__, typename tol__>
void eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::set_open ( )
inline
template<typename data__, unsigned short dim__, typename tol__>
template<typename Derived1 , typename Derived2 >
void eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::set_point_condition ( Eigen::MatrixBase< Derived1 > &  rows,
Eigen::MatrixBase< Derived2 > &  rhs,
const index_type  start_index,
const index_type seg_degree,
const point_type p,
bool  segment_start 
) const
inlineprotected
template<typename data__, unsigned short dim__, typename tol__>
static bool eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::valid_degree ( const index_type deg,
const index_type max_deg 
)
inlinestaticprotected

Member Data Documentation

template<typename data__, unsigned short dim__, typename tol__>
bool eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::closed
private
template<typename data__, unsigned short dim__, typename tol__>
std::vector<joint_data> eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::joints
private
template<typename data__, unsigned short dim__, typename tol__>
std::vector<index_type> eli::geom::curve::piecewise_general_creator< data__, dim__, tol__ >::max_degree
private

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