SOFA API  1a4bb3e7
Open source framework for multi-physics simuation
sofa::component::collision::detection::intersection::RayDiscreteIntersection Class Reference

#include <RayDiscreteIntersection.h>

Inheritance diagram for sofa::component::collision::detection::intersection::RayDiscreteIntersection:

Protected Attributes

DiscreteIntersectionintersection
 

Public Member Functions

 RayDiscreteIntersection (DiscreteIntersection *object, bool addSelf=true)
 
template<class T >
bool testIntersection (collision::geometry::Ray &, collision::geometry::TSphere< T > &, const core::collision::Intersection *currentIntersection)
 
bool testIntersection (collision::geometry::Ray &, collision::geometry::Triangle &, const core::collision::Intersection *currentIntersection)
 
template<class T >
int computeIntersection (collision::geometry::Ray &, collision::geometry::TSphere< T > &, OutputVector *, const core::collision::Intersection *currentIntersection)
 
int computeIntersection (collision::geometry::Ray &, collision::geometry::Triangle &, OutputVector *, const core::collision::Intersection *currentIntersection)
 
template<class T >
bool testIntersection (collision::geometry::Ray &, collision::geometry::TSphere< T > &)
 
bool testIntersection (collision::geometry::Ray &, collision::geometry::Triangle &)
 
template<class T >
int computeIntersection (collision::geometry::Ray &, collision::geometry::TSphere< T > &, OutputVector *)
 
int computeIntersection (collision::geometry::Ray &, collision::geometry::Triangle &, OutputVector *)
 
- Public Member Functions inherited from sofa::core::collision::BaseIntersector
 BaseIntersector ()
 
 ~BaseIntersector ()
 
template<class Model1 , class Model2 >
sofa::core::collision::TDetectionOutputVector< Model1, Model2 > * createOutputVector (Model1 *, Model2 *)
 
template<class Model1 , class Model2 >
sofa::core::collision::TDetectionOutputVector< Model1, Model2 > * getOutputVector (Model1 *, Model2 *, sofa::core::collision::DetectionOutputVector *contacts)
 
int beginIntersection (sofa::core::CollisionModel *, sofa::core::CollisionModel *, OutputVector *)
 
int endIntersection (sofa::core::CollisionModel *, sofa::core::CollisionModel *, OutputVector *)
 

Attribute details

◆ intersection

DiscreteIntersection* sofa::component::collision::detection::intersection::RayDiscreteIntersection::intersection
protected

Constructor details

◆ RayDiscreteIntersection()

sofa::component::collision::detection::intersection::RayDiscreteIntersection::RayDiscreteIntersection ( DiscreteIntersection object,
bool  addSelf = true 
)

Function details

◆ computeIntersection() [1/4]

int sofa::component::collision::detection::intersection::RayDiscreteIntersection::computeIntersection ( collision::geometry::Ray e1,
collision::geometry::Triangle e2,
OutputVector contacts 
)

◆ computeIntersection() [2/4]

int sofa::component::collision::detection::intersection::RayDiscreteIntersection::computeIntersection ( collision::geometry::Ray e1,
collision::geometry::Triangle e2,
OutputVector contacts,
const core::collision::Intersection currentIntersection 
)

◆ computeIntersection() [3/4]

template<class T >
int sofa::component::collision::detection::intersection::RayDiscreteIntersection::computeIntersection ( collision::geometry::Ray ray1,
collision::geometry::TSphere< T > &  sph2,
OutputVector contacts 
)

◆ computeIntersection() [4/4]

template<class T >
int sofa::component::collision::detection::intersection::RayDiscreteIntersection::computeIntersection ( collision::geometry::Ray ray1,
collision::geometry::TSphere< T > &  sph2,
OutputVector contacts,
const core::collision::Intersection currentIntersection 
)

◆ testIntersection() [1/4]

bool sofa::component::collision::detection::intersection::RayDiscreteIntersection::testIntersection ( collision::geometry::Ray r,
collision::geometry::Triangle t 
)

◆ testIntersection() [2/4]

bool sofa::component::collision::detection::intersection::RayDiscreteIntersection::testIntersection ( collision::geometry::Ray ,
collision::geometry::Triangle ,
const core::collision::Intersection currentIntersection 
)

◆ testIntersection() [3/4]

template<class T >
bool sofa::component::collision::detection::intersection::RayDiscreteIntersection::testIntersection ( collision::geometry::Ray ray1,
collision::geometry::TSphere< T > &  sph2 
)

◆ testIntersection() [4/4]

template<class T >
bool sofa::component::collision::detection::intersection::RayDiscreteIntersection::testIntersection ( collision::geometry::Ray ray1,
collision::geometry::TSphere< T > &  sph2,
const core::collision::Intersection currentIntersection 
)