#if !defined(AFX_APPDATACEIPCURVEGRAPHVIEW_H__0A16334E_CF93_4AED_B33F_2F74F1592666__INCLUDED_) #define AFX_APPDATACEIPCURVEGRAPHVIEW_H__0A16334E_CF93_4AED_B33F_2F74F1592666__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 // AppDataCEIpCurveGraphView.h : header file // ///////////////////////////////////////////////////////////////////////////// // CAppDataCEIpCurveGraphView view #define MAX_DISCHARGE_PT 50 #define FILL_TIMEWIN_NUM 8 class CAppDataCEIpCurveGraphView : public CView { protected: CAppDataCEIpCurveGraphView(); // protected constructor used by dynamic creation DECLARE_DYNCREATE(CAppDataCEIpCurveGraphView) // Attributes public: float m_fMaxAbsV; CStringArray m_saOrgDataOne; CStringArray m_saOrgDataTwo; double m_dPeriodInfo; std::vector m_vtTimeWin; // Operations public: // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CAppDataCEIpCurveGraphView) public: virtual void OnInitialUpdate(); protected: virtual void OnDraw(CDC* pDC); // overridden to draw this view //}}AFX_VIRTUAL // Implementation protected: virtual ~CAppDataCEIpCurveGraphView(); #ifdef _DEBUG virtual void AssertValid() const; virtual void Dump(CDumpContext& dc) const; #endif // Generated message map functions protected: //{{AFX_MSG(CAppDataCEIpCurveGraphView) // NOTE - the ClassWizard will add and remove member functions here. afx_msg int OnMouseActivate(CWnd* pDesktopWnd, UINT nHitTest, UINT message); //}}AFX_MSG DECLARE_MESSAGE_MAP() private: void CalculateIpCurve(); void DrawLine(CDC* const pDC); void DrawEX(CDC* const pDC); void DrawLY(CDC* const pDC); int CoordinateMapping(float fValue, float fMappingRange, int MappingFactor); void CalculateMaxScale(); void CalculatePointCoo(); void ClearPoint(); //m_iCXOffset和m_iCYOffset所确定的是左上角的一个起点,用来画X轴和Y轴的,也就是Y轴的最高点 //中心点的坐标(m_iCXOffset-1, m_iCYOffset+150),Y轴上下长度为150 int m_iCXOffset; int m_iCYOffset; int m_iMaxXScale; int m_iMaxYScale; POINT* m_pPoint; POINT* m_pPointTwo; POINT* m_pFillTWPt1; POINT* m_pFillTWPt2; int m_iPtNum; double m_dChrVoltage1; //第一次充电的电压 double m_dCoffient1[MAX_DISCHARGE_PT]; double m_dX1Average; double m_dChrVoltage2; //第二次充电电压 double m_dCoffient2[MAX_DISCHARGE_PT]; double m_dX2Average; // int m_iPtNumTwo; }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif // !defined(AFX_APPDATACEIPCURVEGRAPHVIEW_H__0A16334E_CF93_4AED_B33F_2F74F1592666__INCLUDED_)