#include <EdgeSetController.h>


Public Types | |
| typedef DataTypes::VecCoord | VecCoord |
| typedef DataTypes::VecDeriv | VecDeriv |
| typedef DataTypes::Coord | Coord |
| typedef DataTypes::Deriv | Deriv |
| typedef Coord::value_type | Real |
| typedef MechanicalStateController < DataTypes > | Inherit |
Public Member Functions | |
| EdgeSetController () | |
| Default Constructor. | |
| virtual | ~EdgeSetController () |
| Default Destructor. | |
| void | init () |
| SceneGraph callback initialization method. | |
| void | applyController (void) |
| Apply the controller modifications to the controlled MechanicalState. | |
| void | modifyTopology (void) |
| virtual std::string | getTemplateName () const |
| Get the template type names (if any) used to instantiate this object. | |
| void | draw () |
| Render internal data of this object, for debugging purposes. | |
Controller Interface | |
| void | onMouseEvent (core::objectmodel::MouseEvent *) |
| Mouse event callback. | |
| void | onKeyPressedEvent (core::objectmodel::KeypressedEvent *) |
| Key Press event callback. | |
| void | onBeginAnimationStep () |
| Begin Animation event callback. | |
Static Public Member Functions | |
| static std::string | templateName (const EdgeSetController< DataTypes > *=NULL) |
Protected Attributes | |
| Real | step |
| sofa::core::componentmodel::topology::BaseMeshTopology * | _topology |
| sofa::component::topology::EdgeSetGeometryAlgorithms < DataTypes > * | edgeGeo |
| sofa::component::topology::EdgeSetTopologyModifier * | edgeMod |
| Real | edge0RestedLength |
Provides a Mouse & Keyboard user control on an EdgeSet Topology.
Definition at line 65 of file EdgeSetController.h.
| typedef DataTypes::Coord sofa::component::controller::EdgeSetController< DataTypes >::Coord |
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 70 of file EdgeSetController.h.
| typedef DataTypes::Deriv sofa::component::controller::EdgeSetController< DataTypes >::Deriv |
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 71 of file EdgeSetController.h.
| typedef MechanicalStateController<DataTypes> sofa::component::controller::EdgeSetController< DataTypes >::Inherit |
Definition at line 74 of file EdgeSetController.h.
| typedef Coord::value_type sofa::component::controller::EdgeSetController< DataTypes >::Real |
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 72 of file EdgeSetController.h.
| typedef DataTypes::VecCoord sofa::component::controller::EdgeSetController< DataTypes >::VecCoord |
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 68 of file EdgeSetController.h.
| typedef DataTypes::VecDeriv sofa::component::controller::EdgeSetController< DataTypes >::VecDeriv |
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 69 of file EdgeSetController.h.
| sofa::component::controller::EdgeSetController< DataTypes >::EdgeSetController | ( | ) | [inline] |
| virtual sofa::component::controller::EdgeSetController< DataTypes >::~EdgeSetController | ( | ) | [inline, virtual] |
| void sofa::component::controller::EdgeSetController< DataTypes >::applyController | ( | void | ) | [inline] |
Apply the controller modifications to the controlled MechanicalState.
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 134 of file EdgeSetController.inl.
References sofa::simulation::Visitor::execute(), sofa::core::objectmodel::BaseObject::getContext(), sofa::core::componentmodel::behavior::MechanicalState< TDataTypes >::getX0(), sofa::component::controller::MechanicalStateController< DataTypes >::mainDirection, sofa::component::controller::EdgeSetController< DataTypes >::modifyTopology(), sofa::component::controller::MechanicalStateController< DataTypes >::mouseMode, sofa::component::controller::MechanicalStateController< DataTypes >::mState, sofa::component::controller::MechanicalStateController< DataTypes >::None, sofa::helper::Quater< Real >::rotate(), sofa::component::controller::EdgeSetController< DataTypes >::step, and sofa::component::controller::MechanicalStateController< DataTypes >::Wheel.
Referenced by sofa::component::controller::EdgeSetController< DataTypes >::onBeginAnimationStep().
| void sofa::component::controller::EdgeSetController< DataTypes >::draw | ( | ) | [inline, virtual] |
Render internal data of this object, for debugging purposes.
Reimplemented from sofa::core::objectmodel::BaseObject.
Definition at line 275 of file EdgeSetController.inl.
References sofa::component::controller::EdgeSetController< DataTypes >::_topology, sofa::component::controller::EdgeSetController< DataTypes >::edgeGeo, sofa::core::componentmodel::topology::BaseMeshTopology::getEdge(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbEdges(), sofa::core::componentmodel::behavior::MechanicalState< TDataTypes >::getX(), sofa::helper::gl::glVertexT(), and sofa::component::controller::MechanicalStateController< DataTypes >::mState.
| virtual std::string sofa::component::controller::EdgeSetController< DataTypes >::getTemplateName | ( | ) | const [inline, virtual] |
Get the template type names (if any) used to instantiate this object.
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 129 of file EdgeSetController.h.
References sofa::component::controller::EdgeSetController< DataTypes >::templateName().
| void sofa::component::controller::EdgeSetController< DataTypes >::init | ( | void | ) | [inline, virtual] |
SceneGraph callback initialization method.
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 72 of file EdgeSetController.inl.
References sofa::component::controller::EdgeSetController< DataTypes >::_topology, sofa::component::controller::EdgeSetController< DataTypes >::edge0RestedLength, sofa::component::controller::EdgeSetController< DataTypes >::edgeGeo, sofa::component::controller::EdgeSetController< DataTypes >::edgeMod, sofa::core::objectmodel::BaseContext::get(), sofa::core::objectmodel::BaseObject::getContext(), sofa::core::objectmodel::BaseContext::getMeshTopology(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbEdges(), and sofa::component::controller::MechanicalStateController< DataTypes >::init().
| void sofa::component::controller::EdgeSetController< DataTypes >::modifyTopology | ( | void | ) | [inline] |
Definition at line 164 of file EdgeSetController.inl.
References sofa::component::controller::EdgeSetController< DataTypes >::_topology, sofa::component::controller::EdgeSetController< DataTypes >::edge0RestedLength, sofa::component::controller::EdgeSetController< DataTypes >::edgeGeo, sofa::component::controller::EdgeSetController< DataTypes >::edgeMod, sofa::component::topology::EdgeSetTopologyModifier::fuseEdges(), sofa::core::componentmodel::topology::BaseMeshTopology::getEdgeVertexShell(), sofa::core::componentmodel::topology::Topology::getNbPoints(), sofa::component::topology::EdgeSetTopologyModifier::renumberPoints(), sofa::component::topology::EdgeSetTopologyModifier::splitEdges(), and sofa::component::controller::EdgeSetController< DataTypes >::step.
Referenced by sofa::component::controller::EdgeSetController< DataTypes >::applyController().
| void sofa::component::controller::EdgeSetController< DataTypes >::onBeginAnimationStep | ( | void | ) | [inline, virtual] |
Begin Animation event callback.
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 126 of file EdgeSetController.inl.
References sofa::component::controller::EdgeSetController< DataTypes >::applyController().
| void sofa::component::controller::EdgeSetController< DataTypes >::onKeyPressedEvent | ( | core::objectmodel::KeypressedEvent * | ) | [inline, virtual] |
Key Press event callback.
Reimplemented from sofa::component::controller::Controller.
Definition at line 110 of file EdgeSetController.inl.
References sofa::core::objectmodel::KeypressedEvent::getKey(), sofa::component::controller::MechanicalStateController< DataTypes >::mouseMode, sofa::component::controller::EdgeSetController< DataTypes >::step, and sofa::component::controller::MechanicalStateController< DataTypes >::Wheel.
| void sofa::component::controller::EdgeSetController< DataTypes >::onMouseEvent | ( | core::objectmodel::MouseEvent * | mev | ) | [inline, virtual] |
Mouse event callback.
Reimplemented from sofa::component::controller::MechanicalStateController< DataTypes >.
Definition at line 95 of file EdgeSetController.inl.
References sofa::core::objectmodel::MouseEvent::getState(), sofa::core::objectmodel::MouseEvent::getWheelDelta(), sofa::component::controller::MechanicalStateController< DataTypes >::mouseMode, sofa::component::controller::EdgeSetController< DataTypes >::step, sofa::component::controller::MechanicalStateController< DataTypes >::Wheel, and sofa::core::objectmodel::MouseEvent::Wheel.
| static std::string sofa::component::controller::EdgeSetController< DataTypes >::templateName | ( | const EdgeSetController< DataTypes > * | = NULL |
) | [inline, static] |
Definition at line 134 of file EdgeSetController.h.
Referenced by sofa::component::controller::EdgeSetController< DataTypes >::getTemplateName().
sofa::core::componentmodel::topology::BaseMeshTopology* sofa::component::controller::EdgeSetController< DataTypes >::_topology [protected] |
Real sofa::component::controller::EdgeSetController< DataTypes >::edge0RestedLength [protected] |
Definition at line 152 of file EdgeSetController.h.
Referenced by sofa::component::controller::EdgeSetController< DataTypes >::init(), and sofa::component::controller::EdgeSetController< DataTypes >::modifyTopology().
sofa::component::topology::EdgeSetGeometryAlgorithms<DataTypes>* sofa::component::controller::EdgeSetController< DataTypes >::edgeGeo [protected] |
sofa::component::topology::EdgeSetTopologyModifier* sofa::component::controller::EdgeSetController< DataTypes >::edgeMod [protected] |
Definition at line 148 of file EdgeSetController.h.
Referenced by sofa::component::controller::EdgeSetController< DataTypes >::init(), and sofa::component::controller::EdgeSetController< DataTypes >::modifyTopology().
Real sofa::component::controller::EdgeSetController< DataTypes >::step [protected] |
Definition at line 144 of file EdgeSetController.h.
Referenced by sofa::component::controller::EdgeSetController< DataTypes >::applyController(), sofa::component::controller::EdgeSetController< DataTypes >::modifyTopology(), sofa::component::controller::EdgeSetController< DataTypes >::onKeyPressedEvent(), and sofa::component::controller::EdgeSetController< DataTypes >::onMouseEvent().
1.5.7.1