#include <OglTetrahedralModel.h>


Public Types | |
| typedef DataTypes::Coord | Coord |
| typedef DataTypes::VecCoord | VecCoord |
Public Member Functions | |
| OglTetrahedralModel () | |
| virtual | ~OglTetrahedralModel () |
| void | init () |
| Initialization method called at graph modification, during bottom-up traversal. | |
| void | drawTransparent () |
| Display transparent surfaces. | |
| bool | addBBox (double *minBBox, double *maxBBox) |
| used to add the bounding-box of this visual model to the given bounding box in order to compute the scene bounding box or cull hidden objects. | |
| virtual std::string | getTemplateName () const |
| Get the template type names (if any) used to instantiate this object. | |
Static Public Member Functions | |
| static std::string | templateName (const OglTetrahedralModel< DataTypes > *=NULL) |
| template<class T > | |
| static bool | canCreate (T *&obj, core::objectmodel::BaseContext *context, core::objectmodel::BaseObjectDescription *arg) |
| Pre-construction check method called by ObjectFactory. | |
Private Attributes | |
| core::componentmodel::topology::BaseMeshTopology * | topo |
| core::componentmodel::behavior::MechanicalState < DataTypes > * | nodes |
| Data< bool > | depthTest |
| Data< bool > | blending |
This is a basic class using tetrehedra for the rendering instead of common triangles. It loads its data with a BaseMeshTopology and a MechanicalState. This rendering is only available with Nvidia's >8 series and Ati's >2K series.
Definition at line 52 of file OglTetrahedralModel.h.
| typedef DataTypes::Coord sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::Coord |
Definition at line 55 of file OglTetrahedralModel.h.
| typedef DataTypes::VecCoord sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::VecCoord |
Definition at line 56 of file OglTetrahedralModel.h.
| sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::OglTetrahedralModel | ( | ) | [inline] |
Definition at line 42 of file OglTetrahedralModel.inl.
| sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::~OglTetrahedralModel | ( | ) | [inline, virtual] |
Definition at line 49 of file OglTetrahedralModel.inl.
| bool sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::addBBox | ( | double * | , | |
| double * | ||||
| ) | [inline, virtual] |
used to add the bounding-box of this visual model to the given bounding box in order to compute the scene bounding box or cull hidden objects.
Reimplemented from sofa::core::VisualModel.
Definition at line 108 of file OglTetrahedralModel.inl.
References sofa::core::componentmodel::topology::BaseMeshTopology::getTetras(), sofa::core::componentmodel::behavior::MechanicalState< TDataTypes >::getX(), sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::nodes, and sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::topo.
| static bool sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::canCreate | ( | T *& | obj, | |
| core::objectmodel::BaseContext * | context, | |||
| core::objectmodel::BaseObjectDescription * | arg | |||
| ) | [inline, static] |
Pre-construction check method called by ObjectFactory.
Check that DataTypes matches the MechanicalState.
Reimplemented from sofa::core::objectmodel::BaseObject.
Definition at line 86 of file OglTetrahedralModel.h.
References sofa::core::objectmodel::BaseContext::getMechanicalState().
Referenced by sofa::component::visualmodel::OglTetrahedralModel< gpu::cuda::CudaVectorTypes< TCoord, TDeriv, TReal > >::canCreate().
| void sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::drawTransparent | ( | ) | [inline, virtual] |
Display transparent surfaces.
Transparent objects should use this method to get a correct display order.
Reimplemented from sofa::core::VisualModel.
Definition at line 75 of file OglTetrahedralModel.inl.
References sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::blending, sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::depthTest, sofa::core::objectmodel::BaseObject::getContext(), sofa::core::componentmodel::topology::BaseMeshTopology::getTetras(), sofa::core::objectmodel::Data< T >::getValue(), sofa::core::componentmodel::behavior::MechanicalState< TDataTypes >::getX(), sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::nodes, and sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::topo.
| virtual std::string sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::getTemplateName | ( | ) | const [inline, virtual] |
Get the template type names (if any) used to instantiate this object.
Reimplemented from sofa::core::objectmodel::Base.
Definition at line 73 of file OglTetrahedralModel.h.
References sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::templateName().
| void sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::init | ( | void | ) | [inline, virtual] |
Initialization method called at graph modification, during bottom-up traversal.
Reimplemented from sofa::core::objectmodel::BaseObject.
Definition at line 54 of file OglTetrahedralModel.inl.
References sofa::core::objectmodel::BaseContext::get(), sofa::core::objectmodel::BaseObject::getContext(), sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::nodes, and sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::topo.
| static std::string sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::templateName | ( | const OglTetrahedralModel< DataTypes > * | = NULL |
) | [inline, static] |
Definition at line 78 of file OglTetrahedralModel.h.
Referenced by sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::getTemplateName().
Data<bool> sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::blending [private] |
Definition at line 63 of file OglTetrahedralModel.h.
Referenced by sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::drawTransparent().
Data<bool> sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::depthTest [private] |
Definition at line 62 of file OglTetrahedralModel.h.
Referenced by sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::drawTransparent().
core::componentmodel::behavior::MechanicalState<DataTypes>* sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::nodes [private] |
Definition at line 60 of file OglTetrahedralModel.h.
Referenced by sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::addBBox(), sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::drawTransparent(), sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::init(), and sofa::component::visualmodel::OglTetrahedralModel< gpu::cuda::CudaVectorTypes< TCoord, TDeriv, TReal > >::updateTopology().
core::componentmodel::topology::BaseMeshTopology* sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::topo [private] |
Definition at line 59 of file OglTetrahedralModel.h.
Referenced by sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::addBBox(), sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::drawTransparent(), sofa::component::visualmodel::OglTetrahedralModel< DataTypes >::init(), and sofa::component::visualmodel::OglTetrahedralModel< gpu::cuda::CudaVectorTypes< TCoord, TDeriv, TReal > >::updateTopology().
1.5.7.1