Code-Eli  0.3.6
eli::geom::surface::piecewise< surface__, data__, dim__, tol__ > Class Template Reference

#include <piecewise.hpp>

Collaboration diagram for eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >:

Classes

struct  parameter_key
 

Public Types

enum  error_code {
  NO_ERRORS =0, INVALID_INDEX =1, INDEX_NOT_FOUND =2, INVALID_PARAM =50,
  INVALID_PARAM_DIFFERENCE =51, PATCH_NOT_CONNECTED =100, UNKNOWN_ERROR =999
}
 
typedef surface__< data__, dim__, tol__ > surface_type
 
typedef surface_type::index_type index_type
 
typedef surface_type::point_type point_type
 
typedef surface_type::control_point_type control_point_type
 
typedef surface_type::rotation_matrix_type rotation_matrix_type
 
typedef surface_type::bounding_box_type bounding_box_type
 
typedef surface_type::curve_type curve_type
 
typedef eli::geom::curve::piecewise< eli::geom::curve::bezier, data__, dim__, tol__ > piecewise_curve_type
 
typedef data__ data_type
 
typedef unsigned short dimension_type
 
typedef tol__ tolerance_type
 

Public Member Functions

 piecewise ()
 
 piecewise (const piecewise< surface__, data_type, dim__, tol__ > &p)
 
 ~piecewise ()
 
piecewiseoperator= (const piecewise< surface__, data_type, dim__ > &p)
 
bool operator== (const piecewise< surface__, data_type, dim__ > &p) const
 
bool operator!= (const piecewise< surface__, data_type, dim__ > &p) const
 
data_type get_u0 () const
 
void set_u0 (const data_type &u0_in)
 
data_type get_v0 () const
 
void set_v0 (const data_type &v0_in)
 
data_type get_umax () const
 
data_type get_vmax () const
 
index_type number_u_patches () const
 
index_type number_v_patches () const
 
surface_typeget_patch (const index_type &ui, const index_type &vi)
 
const surface_typeget_patch (const index_type &ui, const index_type &vi) const
 
surface_typeget_patch_unordered (const index_type &uk, const index_type &vk)
 
const surface_typeget_patch_unordered (const index_type &uk, const index_type &vk) const
 
void get_parameter_min (data_type &umin, data_type &vmin) const
 
void get_parameter_max (data_type &umax, data_type &vmax) const
 
void parameter_report ()
 
void get_pmap_u (std::vector< data_type > &pmap) const
 
void get_pmap_v (std::vector< data_type > &pmap) const
 
void get_pmap_uv (std::vector< data_type > &upmap, std::vector< data_type > &vpmap) const
 
void init_u (const index_type &nsegu, const data_type &du=1, const data_type &u0=0)
 
void init_v (const index_type &nsegv, const data_type &dv=1, const data_type &v0=0)
 
void init_uv (const index_type &nsegu, const index_type &nsegv, const data_type &du=1, const data_type &dv=1, const data_type &u0=0, const data_type &v0=0)
 
template<typename it__ >
void init_u (const it__ &dus, const it__ &due, const data_type &u0=0)
 
template<typename it__ >
void init_v (const it__ &dvs, const it__ &dve, const data_type &v0=0)
 
template<typename it__ >
void init_uv (const it__ &dus, const it__ &due, const it__ &dvs, const it__ &dve, const data_type &u0=0, const data_type &v0=0)
 
void degree_u (index_type &mind, index_type &maxd)
 
void degree_v (index_type &mind, index_type &maxd)
 
bool open_u () const
 
bool closed_u () const
 
bool open_v () const
 
bool closed_v () const
 
void get_bounding_box (bounding_box_type &bb) const
 
void rotate (const rotation_matrix_type &rmat)
 
void rotate (const rotation_matrix_type &rmat, const point_type &rorig)
 
void translate (const point_type &trans)
 
void reverse_u ()
 
void reverse_v ()
 
void swap_uv ()
 
void clear ()
 
error_code get (surface_type &surf, const index_type &ui, const index_type &vi) const
 
error_code get (surface_type &surf, data_type &du, data_type &dv, const index_type &ui, const index_type &vi) const
 
error_code set (const surface_type &surf, const index_type &ui, const index_type &vi)
 
error_code replace (const surface_type &surf, const index_type &ui, const index_type &vi)
 
error_code split_u (const data_type &u_in)
 
error_code split_v (const data_type &v_in)
 
void to_cubic_u (const data_type &ttol)
 
void to_cubic_v (const data_type &ttol)
 
void to_cubic (const data_type &ttol)
 
void get_uconst_curve (piecewise_curve_type &pwc, const data_type &u) const
 
void get_vconst_curve (piecewise_curve_type &pwc, const data_type &v) const
 
void find_interior_feature_edges (std::vector< data_type > &uconst, std::vector< data_type > &vconst, const data_type &angle_tol) const
 
void find_interior_C0_edges (std::vector< data_type > &uconst, std::vector< data_type > &vconst) const
 
point_type f (const data_type &u, const data_type &v) const
 
point_type f_u (const data_type &u, const data_type &v) const
 
point_type f_v (const data_type &u, const data_type &v) const
 
point_type f_uu (const data_type &u, const data_type &v) const
 
point_type f_uv (const data_type &u, const data_type &v) const
 
point_type f_vv (const data_type &u, const data_type &v) const
 
point_type f_uuu (const data_type &u, const data_type &v) const
 
point_type f_uuv (const data_type &u, const data_type &v) const
 
point_type f_uvv (const data_type &u, const data_type &v) const
 
point_type f_vvv (const data_type &u, const data_type &v) const
 
point_type normal (const data_type &u, const data_type &v) const
 

Static Public Member Functions

static dimension_type dimension ()
 

Protected Member Functions

bool check_continuity (const eli::geom::general::continuity &) const
 
bool check_u_continuity (const surface_type &, const surface_type &, const eli::geom::general::continuity &) const
 
bool check_v_continuity (const surface_type &, const surface_type &, const eli::geom::general::continuity &) const
 

Private Types

typedef std::map< data_type, index_typekeymap_type
 
typedef std::vector< surface_typepatch_strip_type
 
typedef std::vector< patch_strip_typepatch_collection_type
 

Private Member Functions

void resize_store (const index_type &nu_in, const index_type &nv_in)
 
error_code split_u (const index_type &uk, const typename keymap_type::iterator &uit, const data_type &u_in, const data_type &uu)
 
error_code split_v (const index_type &vk, const typename keymap_type::iterator &vit, const data_type &v_in, const data_type &vv)
 
void find_patch (index_type &uk, index_type &vk, typename keymap_type::iterator &uit, typename keymap_type::iterator &vit, const index_type &ui, const index_type &vi)
 
void find_patch (typename keymap_type::iterator &uit, typename keymap_type::iterator &vit, const index_type &ui, const index_type &vi)
 
void find_patch (index_type &uk, index_type &vk, typename keymap_type::const_iterator &uit, typename keymap_type::const_iterator &vit, const index_type &ui, const index_type &vi) const
 
void find_patch (typename keymap_type::const_iterator &uit, typename keymap_type::const_iterator &vit, const index_type &ui, const index_type &vi) const
 
void find_patch (index_type &uk, index_type &vk, const index_type &ui, const index_type &vi) const
 
void find_patch (index_type &uk, index_type &vk, typename keymap_type::iterator &uit, typename keymap_type::iterator &vit, data_type &uu, data_type &vv, const data_type &u_in, const data_type &v_in)
 
void find_patch (typename keymap_type::iterator &uit, typename keymap_type::iterator &vit, data_type &uu, data_type &vv, const data_type &u_in, const data_type &v_in)
 
void find_patch (index_type &uk, index_type &vk, typename keymap_type::const_iterator &uit, typename keymap_type::const_iterator &vit, data_type &uu, data_type &vv, const data_type &u_in, const data_type &v_in) const
 
void find_patch (typename keymap_type::const_iterator &uit, typename keymap_type::const_iterator &vit, data_type &uu, data_type &vv, const data_type &u_in, const data_type &v_in) const
 
void find_patch (index_type &uk, index_type &vk, data_type &uu, data_type &vv, const data_type &u_in, const data_type &v_in) const
 

Private Attributes

patch_collection_type patches
 
parameter_key ukey
 
parameter_key vkey
 
index_type nu
 
index_type nv
 

Friends

template<template< typename, unsigned short, typename > class surface1__, typename data1__ , unsigned short dim1__, typename tol1__ >
piecewise< surface1__, data1__, dim1__, tol1__ >::data_type eli::geom::intersect::minimum_distance (typename piecewise< surface1__, data1__, dim1__, tol1__ >::data_type &u, typename piecewise< surface1__, data1__, dim1__, tol1__ >::data_type &v, const piecewise< surface1__, data1__, dim1__, tol1__ > &ps, const typename piecewise< surface1__, data1__, dim1__, tol1__ >::point_type &pt)
 

Member Typedef Documentation

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef surface_type::bounding_box_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::bounding_box_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef surface_type::control_point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::control_point_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef surface_type::curve_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::curve_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef data__ eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::data_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef unsigned short eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::dimension_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef surface_type::index_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::index_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef std::map< data_type, index_type > eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::keymap_type
private
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef std::vector< patch_strip_type > eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::patch_collection_type
private
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef std::vector< surface_type > eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::patch_strip_type
private
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef eli::geom::curve::piecewise<eli::geom::curve::bezier, data__, dim__, tol__> eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::piecewise_curve_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef surface_type::point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::point_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef surface_type::rotation_matrix_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::rotation_matrix_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef surface__<data__, dim__, tol__> eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::surface_type
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
typedef tol__ eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::tolerance_type

Member Enumeration Documentation

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
enum eli::geom::surface::piecewise::error_code
Enumerator
NO_ERRORS 
INVALID_INDEX 
INDEX_NOT_FOUND 
INVALID_PARAM 
INVALID_PARAM_DIFFERENCE 
PATCH_NOT_CONNECTED 
UNKNOWN_ERROR 

Constructor & Destructor Documentation

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::piecewise ( )
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::piecewise ( const piecewise< surface__, data_type, dim__, tol__ > &  p)
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::~piecewise ( )
inline

Member Function Documentation

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
bool eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::check_continuity ( const eli::geom::general::continuity ) const
inlineprotected
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
bool eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::check_u_continuity ( const surface_type ,
const surface_type ,
const eli::geom::general::continuity  
) const
inlineprotected
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
bool eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::check_v_continuity ( const surface_type ,
const surface_type ,
const eli::geom::general::continuity  
) const
inlineprotected
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::clear ( )
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
bool eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::closed_u ( ) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
bool eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::closed_v ( ) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::degree_u ( index_type mind,
index_type maxd 
)
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::degree_v ( index_type mind,
index_type maxd 
)
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
static dimension_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::dimension ( )
inlinestatic
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f_u ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f_uu ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f_uuu ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f_uuv ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f_uv ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f_uvv ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f_v ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f_vv ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::f_vvv ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_interior_C0_edges ( std::vector< data_type > &  uconst,
std::vector< data_type > &  vconst 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_interior_feature_edges ( std::vector< data_type > &  uconst,
std::vector< data_type > &  vconst,
const data_type angle_tol 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( index_type uk,
index_type vk,
typename keymap_type::iterator &  uit,
typename keymap_type::iterator &  vit,
const index_type ui,
const index_type vi 
)
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( typename keymap_type::iterator &  uit,
typename keymap_type::iterator &  vit,
const index_type ui,
const index_type vi 
)
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( index_type uk,
index_type vk,
typename keymap_type::const_iterator &  uit,
typename keymap_type::const_iterator &  vit,
const index_type ui,
const index_type vi 
) const
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( typename keymap_type::const_iterator &  uit,
typename keymap_type::const_iterator &  vit,
const index_type ui,
const index_type vi 
) const
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( index_type uk,
index_type vk,
const index_type ui,
const index_type vi 
) const
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( index_type uk,
index_type vk,
typename keymap_type::iterator &  uit,
typename keymap_type::iterator &  vit,
data_type uu,
data_type vv,
const data_type u_in,
const data_type v_in 
)
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( typename keymap_type::iterator &  uit,
typename keymap_type::iterator &  vit,
data_type uu,
data_type vv,
const data_type u_in,
const data_type v_in 
)
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( index_type uk,
index_type vk,
typename keymap_type::const_iterator &  uit,
typename keymap_type::const_iterator &  vit,
data_type uu,
data_type vv,
const data_type u_in,
const data_type v_in 
) const
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( typename keymap_type::const_iterator &  uit,
typename keymap_type::const_iterator &  vit,
data_type uu,
data_type vv,
const data_type u_in,
const data_type v_in 
) const
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::find_patch ( index_type uk,
index_type vk,
data_type uu,
data_type vv,
const data_type u_in,
const data_type v_in 
) const
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
error_code eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get ( surface_type surf,
const index_type ui,
const index_type vi 
) const
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
error_code eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get ( surface_type surf,
data_type du,
data_type dv,
const index_type ui,
const index_type vi 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_bounding_box ( bounding_box_type bb) const
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_parameter_max ( data_type umax,
data_type vmax 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_parameter_min ( data_type umin,
data_type vmin 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
surface_type* eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_patch ( const index_type ui,
const index_type vi 
)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
const surface_type* eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_patch ( const index_type ui,
const index_type vi 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
surface_type* eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_patch_unordered ( const index_type uk,
const index_type vk 
)
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
const surface_type* eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_patch_unordered ( const index_type uk,
const index_type vk 
) const
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_pmap_u ( std::vector< data_type > &  pmap) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_pmap_uv ( std::vector< data_type > &  upmap,
std::vector< data_type > &  vpmap 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_pmap_v ( std::vector< data_type > &  pmap) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
data_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_u0 ( ) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_uconst_curve ( piecewise_curve_type pwc,
const data_type u 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
data_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_umax ( ) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
data_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_v0 ( ) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_vconst_curve ( piecewise_curve_type pwc,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
data_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::get_vmax ( ) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::init_u ( const index_type nsegu,
const data_type du = 1,
const data_type u0 = 0 
)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
template<typename it__ >
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::init_u ( const it__ &  dus,
const it__ &  due,
const data_type u0 = 0 
)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::init_uv ( const index_type nsegu,
const index_type nsegv,
const data_type du = 1,
const data_type dv = 1,
const data_type u0 = 0,
const data_type v0 = 0 
)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
template<typename it__ >
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::init_uv ( const it__ &  dus,
const it__ &  due,
const it__ &  dvs,
const it__ &  dve,
const data_type u0 = 0,
const data_type v0 = 0 
)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::init_v ( const index_type nsegv,
const data_type dv = 1,
const data_type v0 = 0 
)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
template<typename it__ >
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::init_v ( const it__ &  dvs,
const it__ &  dve,
const data_type v0 = 0 
)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
point_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::normal ( const data_type u,
const data_type v 
) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
index_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::number_u_patches ( ) const
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
index_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::number_v_patches ( ) const
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
bool eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::open_u ( ) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
bool eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::open_v ( ) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
bool eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::operator!= ( const piecewise< surface__, data_type, dim__ > &  p) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
piecewise& eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::operator= ( const piecewise< surface__, data_type, dim__ > &  p)
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
bool eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::operator== ( const piecewise< surface__, data_type, dim__ > &  p) const
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::parameter_report ( )
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
error_code eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::replace ( const surface_type surf,
const index_type ui,
const index_type vi 
)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::resize_store ( const index_type nu_in,
const index_type nv_in 
)
inlineprivate
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::reverse_u ( )
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::reverse_v ( )
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::rotate ( const rotation_matrix_type rmat)
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::rotate ( const rotation_matrix_type rmat,
const point_type rorig 
)
inline
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
error_code eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::set ( const surface_type surf,
const index_type ui,
const index_type vi 
)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::set_u0 ( const data_type u0_in)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::set_v0 ( const data_type v0_in)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
error_code eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::split_u ( const data_type u_in)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
error_code eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::split_u ( const index_type uk,
const typename keymap_type::iterator &  uit,
const data_type u_in,
const data_type uu 
)
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
error_code eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::split_v ( const data_type v_in)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
error_code eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::split_v ( const index_type vk,
const typename keymap_type::iterator &  vit,
const data_type v_in,
const data_type vv 
)
inlineprivate

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::swap_uv ( )
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::to_cubic ( const data_type ttol)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::to_cubic_u ( const data_type ttol)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::to_cubic_v ( const data_type ttol)
inline

Here is the call graph for this function:

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
void eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::translate ( const point_type trans)
inline

Friends And Related Function Documentation

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
template<template< typename, unsigned short, typename > class surface1__, typename data1__ , unsigned short dim1__, typename tol1__ >
piecewise<surface1__, data1__, dim1__, tol1__>::data_type eli::geom::intersect::minimum_distance ( typename piecewise< surface1__, data1__, dim1__, tol1__ >::data_type u,
typename piecewise< surface1__, data1__, dim1__, tol1__ >::data_type v,
const piecewise< surface1__, data1__, dim1__, tol1__ > &  ps,
const typename piecewise< surface1__, data1__, dim1__, tol1__ >::point_type pt 
)
friend

Member Data Documentation

template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
index_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::nu
private
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
index_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::nv
private
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
patch_collection_type eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::patches
private
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
parameter_key eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::ukey
private
template<template< typename, unsigned short, typename > class surface__, typename data__, unsigned short dim__, typename tol__ = eli::util::tolerance<data__>>
parameter_key eli::geom::surface::piecewise< surface__, data__, dim__, tol__ >::vkey
private

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