Class NodeDeformationProvider#

Nested Relationships#

Nested Types#

Inheritance Relationships#

Base Type#

Derived Type#

Class Documentation#

class NodeDeformationProvider : public Karana::Core::Base#

Base abstract class node deformation.

See Flexible body systems section for more information of deformation provider classes.

Base abstract class that provides data and methods for modeling node deformation

Subclassed by Karana::Dynamics::ModalNodeDeformationProvider

Public Functions

inline NodeDeformationProvider(std::string_view name, kc::ks_ptr<Node> node)#

Constructor.

Parameters:
  • name – instance name

  • node – the parent Node

inline ~NodeDeformationProvider()#

Destructor.

Protected Functions

virtual kc::ks_ptr<DeformationParams> _getParams() const = 0#

Return the node deformation parameters.

Returns:

the deformation parameters

virtual void _setParams(const DeformationParams &params) = 0#

Set the node deformation parameters.

Parameters:

params – the deformation parameters

Protected Attributes

kc::ks_ptr<Node> _nd = nullptr#

the parent node

struct DeformationParams#

Struct for deformation specific parameters for this class. This class can be used to transfer deformation properties to other instances.

Subclassed by Karana::Dynamics::ModalNodeDeformationProvider::DeformationParams

Public Functions

DeformationParams() = default#
inline DeformationParams &operator=(const DeformationParams *p)#

Copy constructor.

Parameters:

p – instance to copy from

Returns:

the copied instance

Public Members

km::HomTran body_to_node_transform#

the body to node transform value in undeformed state