2018-10-25 00:19:38 +00:00
|
|
|
#ifndef DUST3D_POSE_MESH_CREATOR_H
|
|
|
|
#define DUST3D_POSE_MESH_CREATOR_H
|
2018-09-18 03:17:35 +00:00
|
|
|
#include <QObject>
|
2020-04-07 23:15:20 +00:00
|
|
|
#include "model.h"
|
2018-09-18 03:17:35 +00:00
|
|
|
#include "jointnodetree.h"
|
2018-10-25 00:19:38 +00:00
|
|
|
#include "outcome.h"
|
2018-09-18 03:17:35 +00:00
|
|
|
|
|
|
|
class PoseMeshCreator : public QObject
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
signals:
|
|
|
|
void finished();
|
|
|
|
public:
|
2018-10-02 04:59:30 +00:00
|
|
|
PoseMeshCreator(const std::vector<JointNode> &resultNodes,
|
2018-10-25 00:19:38 +00:00
|
|
|
const Outcome &outcome,
|
2018-10-26 23:04:45 +00:00
|
|
|
const std::map<int, RiggerVertexWeights> &resultWeights);
|
2018-09-18 03:17:35 +00:00
|
|
|
~PoseMeshCreator();
|
|
|
|
void createMesh();
|
2020-04-07 23:15:20 +00:00
|
|
|
Model *takeResultMesh();
|
2018-09-18 03:17:35 +00:00
|
|
|
public slots:
|
|
|
|
void process();
|
|
|
|
private:
|
|
|
|
std::vector<JointNode> m_resultNodes;
|
2018-10-25 00:19:38 +00:00
|
|
|
Outcome m_outcome;
|
2018-10-26 23:04:45 +00:00
|
|
|
std::map<int, RiggerVertexWeights> m_resultWeights;
|
2020-04-07 23:15:20 +00:00
|
|
|
Model *m_resultMesh = nullptr;
|
2018-09-18 03:17:35 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|