Karlsruhe Institute of Technology (KIT) Logo

Master Motor Map

Whole-body human reference model and tools for unifying representations of whole-body human motion

Public Member Functions | Protected Member Functions | Protected Attributes
MMM::ModelProcessorWinter Class Reference

#include <ModelProcessorWinter.h>

Inheritance diagram for MMM::ModelProcessorWinter:
[legend]

Public Member Functions

virtual VirtualRobot::RobotPtr convertModel (VirtualRobot::RobotPtr input)
 
std::map< std::string, float > getCustomSegmentLengths ()
 
float getHeight ()
 
float getMass ()
 
EIGEN_MAKE_ALIGNED_OPERATOR_NEW ModelProcessorWinter (float height, float mass, float handLength=-1.0f, const std::string &rightHandRootName="Hand R Root", const std::string &leftHandRootName="Hand L Root")
 
 ModelProcessorWinter (simox::xml::RapidXMLWrapperNodePtr node)
 
virtual void setup (float height, float mass, float handLength=-1.0f)
 
virtual void setupSegmentLength (const std::string &segmentName, float lengthMM)
 
- Public Member Functions inherited from MMM::ModelProcessor
void appendDataXML (simox::xml::RapidXMLWrapperNodePtr node)
 
virtual std::string getName ()
 
EIGEN_MAKE_ALIGNED_OPERATOR_NEW ModelProcessor (const std::string &name)
 
virtual std::string toXML (bool indenting=true, int indents=0)
 

Protected Member Functions

void appendProcessorDataXML (simox::xml::RapidXMLWrapperNodePtr processorNode)
 

Protected Attributes

std::map< std::string, float > customSegmentLengthsMM
 
float handLength
 
float height
 
std::string leftHandRootName
 
float mass
 
std::string rightHandRootName
 
- Protected Attributes inherited from MMM::ModelProcessor
std::string name
 

Detailed Description

\brief Converts a 1m Winter MMM model to the requested height and weigth according to Winter's biomechanic definitions.
The model is currently scaled according to Winter's biomechanic definitions which rely on the proband's height.

In addition, custom segment lengths can be specified in order to apply for subject specific data. The class can be intiialized via an XML file. The XML property definition should look like the following example:

<?xml version="1.0" ?>
<ModelProcessorConfig type='Winter'>
<height>1.70</height>
<mass>75</mass>
<segmentlength name='segment_name' units='mm'>100</segmentlength>
</ModelProcessorConfig>

Member Function Documentation

◆ convertModel()

VirtualRobot::RobotPtr MMM::ModelProcessorWinter::convertModel ( VirtualRobot::RobotPtr  input)
virtual

Convert a model

Implements MMM::ModelProcessor.

◆ setupSegmentLength()

void MMM::ModelProcessorWinter::setupSegmentLength ( const std::string &  segmentName,
float  lengthMM 
)
virtual

Setup a custom segment length.

Parameters
segmentNameThe name of the segment
lengthMMThe new length of the segemnt in millimeter.

The documentation for this class was generated from the following files:
KoroiBot Logo WALK-MAN Logo Xperience Logo SecondHands Logo TimeStorm Logo I-SUPPORT Logo
PACO-PLUS Logo SFB-588 Logo SPP1527 Logo