#pragma once #include "ZxDataObjectDbl.h" // 油藏 class M_PROJECTMANAGER_EXPORT ZxDataWellBore : public ZxDataObjectDbl { ZX_DECLARE_DYNAMIC public: ZxDataWellBore(); ZxDataWellBore(const ZxDataWellBore &other); virtual ~ZxDataWellBore(); ZxDataWellBore &operator = (const ZxDataWellBore &other); bool operator == (const ZxDataWellBore &other) const; bool operator != (const ZxDataWellBore &other) const; public: // 接口 virtual ZxDataObject* clone(); virtual QString type() const; // 加载保存 virtual bool _parseData(VecVariant vec, int& n); //解析 virtual bool _sumUpData(VecVariant& vec); // 序列化 virtual void onSerialize(ZxSerializer* ser); virtual void onDeserialize(ZxSerializer* ser); // Icon virtual QIcon getIcon(bool expanded) const; // 该函数是,在本对象被Append至parent之后,对本对象进行一些调整。 // 比如,压力数据在被 井 appendChild 之后,把压力数据的 井号 设置一下 virtual void adjustWithParent(); public: void setWellCode(const QString& s); QString getWellCode() const; void set_WellboreRadius(const double& d); double get_WellboreRadius() const; void set_CasingOuterRadius(const double& d); double get_CasingOuterRadius() const; void set_CasingInnerRadius(const double& d); double get_CasingInnerRadius() const; void set_TubingOuterRadius(const double& d); double get_TubingOuterRadius() const; void set_TubingInnerRadius(const double& d); double get_TubingInnerRadius() const; void set_WellboreLength(const double& d); double get_WellboreLength() const; void set_WellInclination(const double& d); double get_WellInclination() const; void set_PipeRoughness(const double& d); double get_PipeRoughness() const; void set_CasingInEmiss(const double& d); double get_CasingInEmiss() const; void set_TubingOutEmiss(const double& d); double get_TubingOutEmiss() const; void set_AnnulusTC(const double& d); double get_AnnulusTC() const; void set_CementTC(const double& d); double get_CementTC() const; void setBoundaryDistance(const double& d); double getBoundaryDistance() const; protected: //QString m_sID; QString m_sWellCode; //QString m_sBoreName; double m_dWellboreRadius; double m_dCasingOuterRadius; double m_dCasingInnerRadius; double m_dTubingOuterRadius; double m_dTubingInnerRadius; double m_dWellboreLength; double m_dWellInclination; double m_dPipeRoughness; double m_dCasingInEmiss; double m_dTubingOutEmiss; double m_dAnnulusTC; double m_dCementTC; double m_dBoundaryDistance; };