You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AppFlow/CFDStruct/CFDStructDataManager/CFDStructDataSolverSportsAt...

96 lines
2.5 KiB
C

/**
*/
#ifndef CFDSTRUCTDATASOLVERSPORTSATTRIBUTESMANAGER_H
#define CFDSTRUCTDATASOLVERSPORTSATTRIBUTESMANAGER_H
#include "CFDStructDataManager_global.h"
#include <CFDStructDataManagerBase.h>
class CUIConfig;
class CFDSTRUCTDATAMANAGER_EXPORT CFDStructDataSolverSportsAttributesItemManager : public CFDStructDataManagerBase {
Q_OBJECT
public:
explicit CFDStructDataSolverSportsAttributesItemManager(QObject *parent = nullptr);
~CFDStructDataSolverSportsAttributesItemManager();
CUIConfig *getParamUIConfig();
void saveDataToDom(rapidjson::Document &dom);
void readDataFromDom(rapidjson::Document &dom);
private:
// 生成运动坐标系的界面配置
CUIConfig *genMovingFrameModeUIConfig();
// 生成刚体的界面配置
CUIConfig *genRigidBodyModeUIConfig();
signals:
private:
// 运动id
int m_id = 0;
public:
void setId(int id);
int getId();
private:
// 运动名称
QString m_MotionName = ""; // Motion Name
// 运动类型
int m_MotionType = 0; // Motion Type
// 运动方式
// json中没有对应位置
QString m_MotionMode; // Motion Mode
// 转轴原点
// QString m_RotationAxisOrigin; // Rotation Axis Origin
double m_originX = 0;
double m_originY = 0;
double m_originZ = 0;
// 转轴方向
// QString m_RotationAxisDirection; // Rotation Axis Direction
double m_axisX = 0;
double m_axisY = 0;
double m_axisZ = 0;
// 转速
double m_RotationSpeed = 0; // Rotation Speed in rpm
/**
* TODO
* jsonregion[0] motion[$1] meshMotion zone[$2]
*/
};
class CFDSTRUCTDATAMANAGER_EXPORT CFDStructDataSolverSportsAttributesManager : public CFDStructDataManagerBase {
Q_OBJECT
public:
explicit CFDStructDataSolverSportsAttributesManager(QObject *parent = nullptr);
~CFDStructDataSolverSportsAttributesManager();
CUIConfig *getParamUIConfig();
void saveDataToDom(rapidjson::Document &dom);
void readDataFromDom(rapidjson::Document &dom);
private:
// // 生成运动坐标系的界面配置
// CUIConfig* genMovingFrameModeUIConfig();
// // 生成刚体的界面配置
// CUIConfig* genRigidBodyModeUIConfig();
virtual void addNewSportAttributesItem();
virtual void deleteSportAttributesItem(int index);
signals:
private:
QVector<CFDStructDataSolverSportsAttributesItemManager *> m_itemList;
};
#endif // CFDSTRUCTDATASOLVERSPORTSATTRIBUTESMANAGER_H