StartNavigationPerformer
The `StartNavigationPerformer` initiates camera navigation actions within the SOFA GUI by saving the current camera's position and orientation when navigation starts.
- module
- Sofa.GUI.Component
- namespace
- sofa::gui::component::performer
- include
- sofa/gui/component/performer/StartNavigationPerformer.h
- inherits
-
- InteractionPerformer
- description
The StartNavigationPerformer component in the SOFA framework is primarily focused on managing camera navigation within the graphical user interface (GUI) for interactive simulation environments. It does not directly contribute to the core mathematical and physical aspects of the finite element method (FEM), such as governing equations, constitutive laws, or numerical methods used for spatial and temporal discretization.
Role in the Global FEM Pipeline:
- The component is part of the InteractionPerformer class hierarchy, which manages input interactions within the GUI. Specifically, it deals with mouse-based interactions to control the camera's position and orientation during navigation.
- It interacts with the BaseMouseInteractor, which handles general mouse events in the GUI.
Mathematical Content:
- The component does not directly implement or contribute to any governing equations such as mass matrix $M$, stiffness matrix $K$, internal force vector $f_{int}$, or residual $R$.
- It also does not involve constitutive laws, strain measures, stress tensors, hyperelastic potentials, damping models, constraint Jacobians, or any other physical quantities directly relevant to the FEM simulation pipeline.
Numerical Methods and Discretization Choices:
- The component is purely focused on GUI interaction and does not encode any numerical methods such as implicit time integration schemes, nonlinear solvers, linear solvers, or spatial discretization techniques used in FEM simulations.
Variational / Lagrangian Mechanics Framework:
- The StartNavigationPerformer component does not fit into the broader variational or Lagrangian mechanics framework. Its primary function is to enable smooth camera navigation within the GUI, ensuring that the user can interact with and visualize the simulation environment effectively.
Conclusion:
- This component serves a vital role in facilitating interactive visualization and user input management but does not contribute directly to the mathematical and physical aspects of FEM simulations. It is an essential part of the SOFA framework for providing a rich, interactive GUI experience.
Methods
void
start
()
virtual
void
execute
()
virtual
{
"name": "StartNavigationPerformer",
"namespace": "sofa::gui::component::performer",
"module": "Sofa.GUI.Component",
"include": "sofa/gui/component/performer/StartNavigationPerformer.h",
"doc": "",
"inherits": [
"InteractionPerformer"
],
"templates": [],
"data_fields": [],
"links": [],
"methods": [
{
"name": "start",
"return_type": "void",
"params": [],
"is_virtual": true,
"is_pure_virtual": false,
"is_static": false,
"access": "public"
},
{
"name": "execute",
"return_type": "void",
"params": [],
"is_virtual": true,
"is_pure_virtual": false,
"is_static": false,
"access": "public"
}
],
"description": "The `StartNavigationPerformer` is a component in the SOFA framework designed to initiate navigation actions within the GUI, specifically for camera control. It inherits from the `InteractionPerformer` class and operates within the mouse interaction context by interacting with the base mouse interactor.\n\n**Role and Purpose:**\nThe primary role of `StartNavigationPerformer` is to save the current camera's position and orientation when navigation starts, facilitating smooth transitions during user interactions. This component is part of a broader set of components that handle input and visualization in SOFA simulations.\n\n**Interactions with Other Components:**\n- It interacts with `BaseMouseInteractor`, which manages mouse-based interactions within the GUI.\n- The `start` method modifies the state of the `RecordedCamera` component, enabling or disabling navigation mode by toggling its `d_navigationMode` data field. This interaction is critical for seamless user navigation within the simulation environment.\n\n**Practical Usage Guidance:**\nThe `StartNavigationPerformer` is typically used in conjunction with other GUI components to enable interactive camera control during simulations. When the `start` method is called, it ensures that the current camera state is appropriately recorded and managed for subsequent navigation actions.",
"maths": "The `StartNavigationPerformer` component in the SOFA framework is primarily focused on managing camera navigation within the graphical user interface (GUI) for interactive simulation environments. It does not directly contribute to the core mathematical and physical aspects of the finite element method (FEM), such as governing equations, constitutive laws, or numerical methods used for spatial and temporal discretization.\n\n**Role in the Global FEM Pipeline:**\n- The component is part of the `InteractionPerformer` class hierarchy, which manages input interactions within the GUI. Specifically, it deals with mouse-based interactions to control the camera's position and orientation during navigation.\n- It interacts with the `BaseMouseInteractor`, which handles general mouse events in the GUI.\n\n**Mathematical Content:**\n- The component does not directly implement or contribute to any governing equations such as mass matrix \\(M\\), stiffness matrix \\(K\\), internal force vector \\(f_{int}\\), or residual \\(R\\).\n- It also does not involve constitutive laws, strain measures, stress tensors, hyperelastic potentials, damping models, constraint Jacobians, or any other physical quantities directly relevant to the FEM simulation pipeline.\n\n**Numerical Methods and Discretization Choices:**\n- The component is purely focused on GUI interaction and does not encode any numerical methods such as implicit time integration schemes, nonlinear solvers, linear solvers, or spatial discretization techniques used in FEM simulations.\n\n**Variational / Lagrangian Mechanics Framework:**\n- The `StartNavigationPerformer` component does not fit into the broader variational or Lagrangian mechanics framework. Its primary function is to enable smooth camera navigation within the GUI, ensuring that the user can interact with and visualize the simulation environment effectively.\n\n**Conclusion:**\n- This component serves a vital role in facilitating interactive visualization and user input management but does not contribute directly to the mathematical and physical aspects of FEM simulations. It is an essential part of the SOFA framework for providing a rich, interactive GUI experience.",
"abstract": "The `StartNavigationPerformer` initiates camera navigation actions within the SOFA GUI by saving the current camera's position and orientation when navigation starts.",
"sheet": "\n# StartNavigationPerformer\n\n## Overview\n\nThe `StartNavigationPerformer` is a component in the SOFA framework designed to manage the initiation of camera navigation actions within the graphical user interface (GUI). It inherits from the `InteractionPerformer` class and interacts with the `BaseMouseInteractor` to handle mouse-based interactions. The primary role of this component is to save the current state of the camera when navigation starts, facilitating smooth transitions during user interactions.\n\n## Dependencies and Connections\n\nThe `StartNavigationPerformer` typically requires interaction with other components such as:\n- **BaseMouseInteractor**: Manages general mouse events in the GUI.\n- **RecordedCamera**: Records and manages the state of the camera for navigation purposes. The `start` method modifies the state of this component by toggling its `d_navigationMode` data field to enable or disable navigation mode.\n\n## Practical Notes\n\nThe `StartNavigationPerformer` is typically used in conjunction with other GUI components to enable interactive camera control during simulations. When the `start` method is called, it ensures that the current camera state is appropriately recorded and managed for subsequent navigation actions."
}