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.
nmWTAI-Platform/Include/nmNum/nmData/nmDataFault.h

56 lines
1.8 KiB
C++

#ifndef NMDATAFAULT_H
#define NMDATAFAULT_H
#include "nmData_global.h"
#include "nmDataBase.h"
#include "nmDefines.h"
#include "nmDataAttribute.h"
class NM_DATA_EXPORT nmDataFault : public nmDataBase
{
Q_OBJECT
public:
nmDataFault();
nmDataFault(const nmDataFault& other); // 拷贝构造函数
nmDataFault& operator=(const nmDataFault& other); // 赋值运算符
~nmDataFault();
//virtual void saveDataToDom(rapidjson::Document &dom) override;
//virtual void readDataFromDom(rapidjson::Document &dom) override;
// 实现 nmDataBase 的抽象方法:将当前 C++ 对象序列化为 RapidJSON Value
virtual rapidjson::Value ToJsonValue(rapidjson::Document::AllocatorType& allocator) const override;
// 实现 nmDataBase 的抽象方法:从 RapidJSON Value 反序列化数据到当前 C++ 对象
virtual void FromJsonValue(const rapidjson::Value& jsonValue) override;
public:
// Getter and Setter for m_faultName
QString getFaultName() const;
void setFaultName(const QString& faultName);
// Getter and Setter for m_faultFlowModel
nmDataAttribute& getFaultFlowModel();
void setFaultFlowModel(const nmDataAttribute& faultFlowModel);
// Getter and Setter for m_faultLeakage
nmDataAttribute& getFaultLeakage();
void setFaultLeakage(const nmDataAttribute& faultLeakage);
// Getter and Setter for m_vecPts
QVector<QPointF> getFaultPoints() const;
void setFaultPoints(const QVector<QPointF>& vecPts);
bool getPlotVisible() const;
void setPlotVisible(const bool newState);
private:
QString m_sFaultName; // 断层名称
QVector<QPointF> m_vecPts; // 断层位置信息
nmDataAttribute m_faultFlowModel; // 断层流动模型
nmDataAttribute m_faultLeakage; // 断层渗漏率
bool m_bPlotVisible; // 图元是否可见
};
#endif // NMDATAFAULT_H