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...

90 lines
2.3 KiB
C++

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/**
运动属性
*/
#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; // Motion Type
// 运动方式
// json中没有对应位置
QString m_MotionMode; // Motion Mode
// 转轴原点
QString m_RotationAxisOrigin; // Rotation Axis Origin
// 转轴方向
QString m_RotationAxisDirection; // Rotation Axis Direction
// 转速
double m_RotationSpeed; // 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