140 lines
4.0 KiB
C++
140 lines
4.0 KiB
C++
#if !defined(AFX_CALCRAINWELLDLG_H__F521719E_81EB_4B30_B0DF_7C637E249482__INCLUDED_)
|
|
#define AFX_CALCRAINWELLDLG_H__F521719E_81EB_4B30_B0DF_7C637E249482__INCLUDED_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
// CCalcRainWellDlg.h : header file
|
|
//
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CCalcRainWellDlg dialog
|
|
#include "Resource.h"
|
|
#include "WDGRID.h"
|
|
#include "adui.h"
|
|
#include "acui.h"
|
|
|
|
class TGridRainCalc: public WDGrid
|
|
{
|
|
protected:
|
|
virtual void OnBeforeRefresh(WDGridCell&cell);
|
|
virtual void OnCellComboString(WDGridCell&cell,CComboBox&combo);
|
|
public:
|
|
TGridRainCalc();
|
|
};
|
|
|
|
class TGridMaterialN : public WDGrid
|
|
{
|
|
protected:
|
|
virtual void OnBeforeRefresh(WDGridCell&cell);
|
|
virtual bool OnModified(WDGridCell&cell,CString &text);
|
|
public:
|
|
TGridMaterialN();
|
|
};
|
|
|
|
class SRainCalcData
|
|
{
|
|
public:
|
|
SRainCalcData(){ m_csName = ""; m_bIsWell = TRUE; m_nTime = 0; m_nQ = 0; m_nV = 0; m_nFactor =0; m_nAllArea = 0; m_nArea =0; m_ID = NULL; m_iDn = 0; m_nLength = 0; m_nI = 0; m_nLength = 0; };
|
|
CString m_csName; //井编号
|
|
int m_iDn; //管径
|
|
int m_iP; //重现期
|
|
double m_nLength; //管长 MM
|
|
double m_nI; //坡度
|
|
double m_nV; //坡度
|
|
double m_nQ; //流量
|
|
double m_nTime; //汇流时间
|
|
double m_nArea; //本井汇水面积
|
|
double m_nAllArea; //总汇流面积
|
|
double m_nFactor; //径流系数
|
|
double m_dI; //暴雨强度
|
|
BOOL m_bIsWell;
|
|
AcDbObjectId m_ID;
|
|
};
|
|
|
|
class CCalcRainWellDlg : public CAcUiDialog
|
|
{
|
|
// Construction
|
|
public:
|
|
CCalcRainWellDlg(CWnd* pParent = NULL); // standard constructor
|
|
// Dialog Data
|
|
//{{AFX_DATA(CCalcRainWellDlg)
|
|
enum { IDD = IDD_CALC_RAIN_SHEET };
|
|
CListBox m_listProvince;
|
|
CListBox m_listCity;
|
|
CString m_csA;
|
|
CString m_csB;
|
|
CString m_csC;
|
|
CString m_csN;
|
|
static double m_nFactor;
|
|
static double m_nP;
|
|
CString m_csCity;
|
|
CString m_csProvince;
|
|
static double m_dM;
|
|
static double m_dTime;
|
|
CString m_csN2;
|
|
//}}AFX_DATA
|
|
BOOL m_bCalc, m_bReCalc;
|
|
PickSet m_ssAll;
|
|
SSearchPipeList *m_pListAll;
|
|
SSearchPipeList *m_pNodeLong;
|
|
TGridRainCalc m_grid;
|
|
TGridMaterialN m_gridN; // ZXL 2013.12.31 ADD
|
|
std::map<CString, double> m_mapMeratialN;
|
|
CToolTipCtrl m_wndToolTip;
|
|
void UpdateGrid();
|
|
void TransWellListData(SSearchPipeList *pListAll, DList<SRainCalcData> &lstWellSys);
|
|
void CalcRainNode(SSearchPipeList *pListLast, int mode);
|
|
SSearchPipeList *GetNextWell(SSearchPipeList *pListAll, SSearchPipeList *pDisadvantage, DList<SRainCalcData> &lstData);
|
|
void ResetList(SSearchPipeList *pListAll);
|
|
|
|
// Overrides
|
|
// ClassWizard generated virtual function overrides
|
|
//{{AFX_VIRTUAL(CCalcRainWellDlg)
|
|
public:
|
|
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
|
protected:
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
|
//}}AFX_VIRTUAL
|
|
|
|
// Implementation
|
|
protected:
|
|
|
|
// Generated message map functions
|
|
//{{AFX_MSG(CCalcRainWellDlg)
|
|
virtual BOOL OnInitDialog();
|
|
virtual void OnCancel();
|
|
virtual void OnOK();
|
|
afx_msg void OnButtonCalc();
|
|
afx_msg void OnButtonWord();
|
|
afx_msg void OnButtonDim();
|
|
afx_msg void OnButtonP();
|
|
afx_msg void OnSelchangeListProvince();
|
|
afx_msg void OnSelchangeListCity();
|
|
afx_msg void OnButtonFactor();
|
|
afx_msg void OnButtonNewCity();
|
|
afx_msg void OnButtonHide();
|
|
afx_msg void OnButtonCalc2();
|
|
afx_msg void OnDestroy();
|
|
afx_msg void OnBtnCalcTable();
|
|
afx_msg void OnPaint();
|
|
afx_msg void OnKillfocusEdtP();
|
|
afx_msg void OnKillfocusEdtM();
|
|
afx_msg void OnKillfocusEdtFactor();
|
|
afx_msg void OnKillfocusEdtTime();
|
|
//}}AFX_MSG
|
|
DECLARE_MESSAGE_MAP()
|
|
|
|
private:
|
|
//绘制计算表
|
|
void DrawCalcTable(DList<SSearchPipeList> &lstNode, DList<SSearchPipeList> &lstWell);
|
|
|
|
private:
|
|
CStringArray m_arRainStom;
|
|
};
|
|
|
|
//{{AFX_INSERT_LOCATION}}
|
|
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
|
|
|
#endif // !defined(AFX_CALCSHEETDLG_H__F521719E_81EB_4B30_B0DF_7C637E249482__INCLUDED_)
|