Classes | Public Types | Public Member Functions | Public Attributes | Protected Attributes

OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type > Class Template Reference

#include <sph_tetrahedra_points.h>

List of all members.

Classes

struct  ColiDebug
class  CollisionPolicy
class  PointWrapper
class  TetrahedronWrapper

Public Types

typedef math::BasicMathTypes
< real_type_, int > 
math_types
typedef real_type_ real_type
typedef vector3_type_ vector3_type
typedef tetrahedron_type_ tetrahedron_type
typedef point_data_type point_data
typedef CollisionType
< real_type, vector3_type
collision_type
typedef std::vector
< collision_type
collision_container
typedef TetrahedronWrapper tetrahedron_wrapper
typedef
tetrahedron_wrapper::tetrahedron_type_inner 
tetrahedron
typedef PointWrapper point_wrapper
typedef std::vector
< tetrahedron_wrapper
tetrahedron_container
typedef
tetrahedron_container::iterator 
tetrahedron_iterator
typedef geometry::Triangle
< math_types
Triangle
typedef geometry::Plane
< math_types
Plane
typedef CollisionPolicy collision_policy
typedef
collision_policy::t_point_type 
t_point_type
typedef
collision_policy::p_point_type 
p_point_type
typedef
collision_policy::result_type 
result_type
typedef
collision_policy::result_container 
result_container
typedef
OpenTissue::spatial_hashing::AABBDataQuery
< typename
collision_policy::hash_grid,
collision_policy
collision_detection

Public Member Functions

void clear ()
template<typename TetrahedronIterator >
void addObstacle (const TetrahedronIterator &begin, const TetrahedronIterator &end)
void refresh ()
bool collision (collision_type &collision, const point_data &query)
bool intersectTriangleLine (collision_type &collision, const p_point_type &p0, const p_point_type &p1, const Triangle &t) const

Public Attributes

struct
OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy::ColiDebug 
dcoli

Protected Attributes

tetrahedron_container m_tetrahedra
collision_detection m_collision

template<typename real_type_, typename vector3_type_, typename tetrahedron_type_, typename point_data_type>
class OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >


Member Typedef Documentation

template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef std::vector<collision_type> OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::collision_container
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef OpenTissue::spatial_hashing::AABBDataQuery<typename collision_policy::hash_grid, collision_policy> OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::collision_detection
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef CollisionPolicy OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::collision_policy
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef CollisionType<real_type, vector3_type> OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::collision_type
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef math::BasicMathTypes<real_type_, int> OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::math_types
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef collision_policy::p_point_type OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::p_point_type
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef geometry::Plane<math_types> OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::Plane
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef point_data_type OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::point_data
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef PointWrapper OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::point_wrapper
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef real_type_ OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::real_type
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef collision_policy::result_container OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::result_container
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef collision_policy::result_type OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::result_type
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef collision_policy::t_point_type OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::t_point_type
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef tetrahedron_wrapper::tetrahedron_type_inner OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::tetrahedron
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef std::vector<tetrahedron_wrapper> OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::tetrahedron_container
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef tetrahedron_container::iterator OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::tetrahedron_iterator
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef tetrahedron_type_ OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::tetrahedron_type
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef TetrahedronWrapper OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::tetrahedron_wrapper
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef geometry::Triangle<math_types> OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::Triangle
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
typedef vector3_type_ OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::vector3_type

Member Function Documentation

template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
template<typename TetrahedronIterator >
void OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::addObstacle ( const TetrahedronIterator &  begin,
const TetrahedronIterator &  end 
) [inline]
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
void OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::clear ( void   )  [inline]
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
bool OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::collision ( collision_type collision,
const point_data query 
) [inline]
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
bool OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::intersectTriangleLine ( collision_type collision,
const p_point_type p0,
const p_point_type p1,
const Triangle t 
) const [inline]
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
void OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::refresh (  )  [inline]

Member Data Documentation

template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
struct OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy::ColiDebug OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::dcoli
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
collision_detection OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::m_collision [protected]
template<typename real_type_ , typename vector3_type_ , typename tetrahedron_type_ , typename point_data_type >
tetrahedron_container OpenTissue::sph::TetrahedraPointsCollisionDetectionPolicy< real_type_, vector3_type_, tetrahedron_type_, point_data_type >::m_tetrahedra [protected]

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