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::MarkerBasedConverter Class Reference

#include <MarkerBasedConverter.h>

Inheritance diagram for MMM::MarkerBasedConverter:
[legend]

Public Member Functions

MarkerMotionPtr getInputMarkerMotion ()
 
std::map< std::string, std::string > getMarkerMapping () const
 
EIGEN_MAKE_ALIGNED_OPERATOR_NEW MarkerBasedConverter (const std::string &name)
 
void setMarkerMapping (const std::map< std::string, std::string > &markerMap)
 
virtual bool setup (AbstractMotionPtr inputMotion, ModelPtr outputModel)
 
virtual bool setup (ModelPtr inputModel, AbstractMotionPtr inputMotion, ModelPtr outputModel)
 
- Public Member Functions inherited from MMM::Converter
EIGEN_MAKE_ALIGNED_OPERATOR_NEW Converter (const std::string &name)
 
virtual AbstractMotionPtr convertMotion ()=0
 
virtual bool convertMotionStep (AbstractMotionPtr currentOutput, bool increment=true)=0
 
std::map< std::string, float > getInitialJointFitting ()
 
Eigen::Matrix4f getInitialModelFitting ()
 
virtual std::vector< std::string > getJointOrder () const
 
float getSourceModelSize ()
 
float getTargetModelSize ()
 
virtual AbstractMotionPtr initializeStepwiseConversion ()=0
 
void setSourceModelSize (float size)
 
void setTargetModelSize (float size)
 
virtual bool setupFile (const std::string &configFilename)
 
virtual void setupJointOrder (const std::vector< std::string > &jo)
 Pass the joint order to this converter.
 
virtual bool setupXML (const std::string &xmlString)
 

Protected Member Functions

bool getOptionalBoolByAttributeName (rapidxml::xml_node< char > *xmlNode, const std::string &attributeName, bool standardValue)
 
float getOptionalFloatByAttributeName (rapidxml::xml_node< char > *xmlNode, const std::string &attributeName, float standardValue)
 
- Protected Member Functions inherited from MMM::Converter
virtual bool _setup (rapidxml::xml_node< char > *rootTag)=0
 first tag in xml configuration
 

Protected Attributes

MarkerMotionPtr inputMarkerMotion
 A casted version of the inputMotion.
 
std::map< std::string, std::string > markerMapping
 The mapping describes which input markers belong to which output markers.
 
- Protected Attributes inherited from MMM::Converter
std::map< std::string, float > initialJointValues
 
Eigen::Matrix4f initialModelPose
 
ModelPtr inputModel
 
AbstractMotionPtr inputMotion
 
std::vector< std::string > jointOrder
 
float mSourceModelSize
 
float mTargetModelSize
 
std::string name
 
ModelPtr outputModel
 

Detailed Description

\brief An interface for all marker based converter classes.

A marker based converter maps an input motion to an output motion while assuming that input and output models are markered. The main application of marker based converters is to realize converters from (e.g. Vicon) Motion Data to an MMM model.

See also
ConverterFactory

Member Function Documentation

◆ setMarkerMapping()

void MMM::MarkerBasedConverter::setMarkerMapping ( const std::map< std::string, std::string > &  markerMap)

Setup ViconMarker<->ModelMarker mapping. No checks are performed here, the mapping is verfified later.

◆ setup() [1/2]

bool MMM::MarkerBasedConverter::setup ( AbstractMotionPtr  inputMotion,
ModelPtr  outputModel 
)
virtual

Basic setup of a marker based converter

Parameters
inputMotionThe motion to convert.
outputModelSetup the target model.
Returns
true on success.
Here is the call graph for this function:

◆ setup() [2/2]

bool MMM::MarkerBasedConverter::setup ( ModelPtr  inputModel,
AbstractMotionPtr  inputMotion,
ModelPtr  outputModel 
)
virtual

Basic setup of a converter

Parameters
inputModelSpecifies to which model the inputMotion is linked. In case MarkerMotions are used as input (e.g. Vicon->MMM) the input model can be empty.
inputMotionThe motion to convert.
outputModelSetup the target model.
Returns
true on success.

Reimplemented from MMM::Converter.

Here is the call graph for this function:
Here is the caller graph for this function:

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