Back

TransformationGL

sofa::gl::TransformationGL
Transformation
Abstract (AI generated)

`TransformationGL` applies graphical transformations such as rotation, translation, and scaling in the SOFA simulation environment for visual elements.

Metadata
module
Sofa.GL
namespace
sofa::gl
include
sofa/gl/TransformationGL.h
inherits
  • Transformation
description

The TransformationGL component is part of the SOFA framework's graphics module (Sofa.GL). It inherits from the Transformation class and is responsible for applying graphical transformations in the simulation environment, facilitating operations such as rotation, translation, and scaling on visual elements. These transformations are purely geometric and do not contribute to the governing equations or operators that describe the physics of deformable systems within the FEM framework.

The component includes virtual methods like Apply, ApplyWithCentring, and ApplyInverse which apply these graphical transformations either directly, with centering adjustments, or inversely. These methods interact with other components in the simulation environment for proper visualization but do not involve any physical forces, constitutive laws, or kinematic relations that are central to FEM simulations.

In summary, the TransformationGL component's role is purely graphical and does not contribute to the mathematical or physical aspects of the global FEM pipeline. It supports operations such as:
- Rotation: Transforming coordinates using a rotation matrix \$R\$.
- Translation: Shifting coordinates by a vector \$T\$.
- Scaling: Adjusting coordinates with a scaling factor \$S\$.

However, these transformations are not part of the variational or Lagrangian mechanics framework that governs the simulation of deformable bodies. They serve to enhance visualization and user interaction within the SOFA simulation environment.

Methods
void Apply () virtual
void ApplyWithCentring () virtual
void ApplyInverse () virtual
{
  "name": "TransformationGL",
  "namespace": "sofa::gl",
  "module": "Sofa.GL",
  "include": "sofa/gl/TransformationGL.h",
  "doc": "",
  "inherits": [
    "Transformation"
  ],
  "templates": [],
  "data_fields": [],
  "links": [],
  "methods": [
    {
      "name": "Apply",
      "return_type": "void",
      "params": [],
      "is_virtual": true,
      "is_pure_virtual": false,
      "is_static": false,
      "access": "public"
    },
    {
      "name": "ApplyWithCentring",
      "return_type": "void",
      "params": [],
      "is_virtual": true,
      "is_pure_virtual": false,
      "is_static": false,
      "access": "public"
    },
    {
      "name": "ApplyInverse",
      "return_type": "void",
      "params": [],
      "is_virtual": true,
      "is_pure_virtual": false,
      "is_static": false,
      "access": "public"
    }
  ],
  "description": "The `TransformationGL` component is part of the SOFA framework's graphics module (`Sofa.GL`). It inherits from the `Transformation` class and is responsible for applying graphical transformations in the simulation environment, facilitating operations such as rotation, translation, and scaling on visual elements. The component includes virtual methods like `Apply`, `ApplyWithCentring`, and `ApplyInverse` to apply these transformations either directly or with centering adjustments, as well as their inverse operations. These methods interact with other components that require graphical transformations for proper visualization within the SOFA simulation environment.",
  "maths": "The `TransformationGL` component is part of the SOFA framework's graphics module (`Sofa.GL`). It inherits from the `Transformation` class and is responsible for applying graphical transformations in the simulation environment, facilitating operations such as rotation, translation, and scaling on visual elements. These transformations are purely geometric and do not contribute to the governing equations or operators that describe the physics of deformable systems within the FEM framework.\n\nThe component includes virtual methods like `Apply`, `ApplyWithCentring`, and `ApplyInverse` which apply these graphical transformations either directly, with centering adjustments, or inversely. These methods interact with other components in the simulation environment for proper visualization but do not involve any physical forces, constitutive laws, or kinematic relations that are central to FEM simulations.\n\nIn summary, the `TransformationGL` component's role is purely graphical and does not contribute to the mathematical or physical aspects of the global FEM pipeline. It supports operations such as:\n- **Rotation**: Transforming coordinates using a rotation matrix \\\\(R\\\\).\n- **Translation**: Shifting coordinates by a vector \\\\(T\\\\).\n- **Scaling**: Adjusting coordinates with a scaling factor \\\\(S\\\\).\n\nHowever, these transformations are not part of the variational or Lagrangian mechanics framework that governs the simulation of deformable bodies. They serve to enhance visualization and user interaction within the SOFA simulation environment.",
  "abstract": "`TransformationGL` applies graphical transformations such as rotation, translation, and scaling in the SOFA simulation environment for visual elements.",
  "sheet": "\n# TransformationGL\n\n## Overview\n\nThe `TransformationGL` component is part of the SOFA framework's graphics module (`Sofa.GL`). It inherits from the `Transformation` class and handles graphical transformations such as rotation, translation, and scaling. This component does not contribute to the mathematical or physical aspects of FEM simulations but enhances visualization within the simulation environment.\n\n## Parameters and Data\n\nThe `TransformationGL` component has no significant data fields exposed. It primarily relies on virtual methods for applying transformations:\n- **Apply**: Applies a transformation directly.\n- **ApplyWithCentring**: Applies a transformation with centering adjustments.\n- **ApplyInverse**: Applies the inverse of a transformation."
}