30 lines
831 B
C++
30 lines
831 B
C++
#ifndef POSER_H
|
|
#define POSER_H
|
|
#include <QObject>
|
|
#include "autorigger.h"
|
|
#include "jointnodetree.h"
|
|
#include "dust3dutil.h"
|
|
|
|
class Poser : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
Poser(const std::vector<AutoRiggerBone> &bones);
|
|
~Poser();
|
|
const AutoRiggerBone *findBone(const QString &name);
|
|
int findBoneIndex(const QString &name);
|
|
const std::vector<AutoRiggerBone> &bones() const;
|
|
const std::vector<JointNode> &resultNodes() const;
|
|
const JointNodeTree &resultJointNodeTree() const;
|
|
std::map<QString, std::map<QString, QString>> ¶meters();
|
|
virtual void commit();
|
|
void reset();
|
|
protected:
|
|
std::vector<AutoRiggerBone> m_bones;
|
|
std::map<QString, int> m_boneNameToIndexMap;
|
|
JointNodeTree m_jointNodeTree;
|
|
std::map<QString, std::map<QString, QString>> m_parameters;
|
|
};
|
|
|
|
#endif
|