📄 gmcaddoc.h
字号:
// GMCADDoc.h : interface of the CGMCADDoc class
//
/////////////////////////////////////////////////////////////////////////////
#if !defined(AFX_GMCADDOC_H__E2B3D3CA_E509_11D5_8CE4_E4B541D5F37A__INCLUDED_)
#define AFX_GMCADDOC_H__E2B3D3CA_E509_11D5_8CE4_E4B541D5F37A__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class FPOINT
{
public:
double x;
double y;
};
class TempStruct
{
public:
double xna1,yna1,xnb1,ynb1,xna2,yna2,xnb2,ynb2;
//(xna1,yna1)为第一条线的起点,(xnb1,ynb1)为第一条线的终点,
//(xna2,yna2)为第二条线的起点,(xnb2,ynb2)为第二条线的终点
};
double Angle(double CX,double CY,double R,double px,double py);
void AngleArc(CDC *pDC,double X,double Y, double r,double a1,double a2);
void SER_Arc(CDC *pDC,double StartX, double StrartY,double EndX,double EndY,double CX,double CY,double R);
TempStruct offsetxy(char xx1,double xa1,double ya1,double xb1,double yb1,double xc1,double yc1,double r1,
char xx2,double xa2,double ya2,double xb2,double yb2,double xc2,double yc2,double r2,
double s, int jlh1,int jlh2);
void qgxdyj(CStdioFile *cf,double qdx,double qdy,double zdy);
FPOINT linecircle(double cx,double cy, double r, double k);
double Vol_YuanTai(double d1, double d2, double h);
double Area_YuanTai(double d1, double d2, double h);
double Vol_HuTai(double Axisx,double h, double r, double x0, double y0, double Y,
char symbol);
double Area_HuTai(double Axisx,double h, double r, double x0, double y0, double Y,
char symbol);
void SymmetryLine(double cx,double bx,double by,double ex,double ey);
void SymmetryArc(CDC *pDC,double cx,double x0,double y0,double r,double bx,
double by,double ex,double ey,char symbol);
class CRevSurf : public CObject
{
public:
char m_XX;
double m_Bx,m_By,m_Ex,m_Ey;
double m_H,PreDD,m_Vol,m_Area;
CRevSurf(){}
DECLARE_SERIAL(CRevSurf)
public:
virtual void Drawing(CDC *pDC){}
virtual void Serialize(CArchive &ar);
};
class CCuboid : public CRevSurf
{
protected:
CCuboid(){}
DECLARE_SERIAL(CCuboid)
public:
CCuboid(double Bx,double By,double Ex,double Ey,double h,double predd,double Vol,double Area);
void Drawing(CDC *pDC);
virtual void Serialize(CArchive &ar);
};
class CHLine : public CRevSurf
{
protected:
CHLine(){}
DECLARE_SERIAL(CHLine)
public:
CHLine(double Bx,double By,double Ex,double Ey,double h,double predd,double Vol,double Area);
void Drawing(CDC *pDC);
virtual void Serialize(CArchive &ar);
};
class CYuanTai : public CRevSurf
{
protected:
CYuanTai(){}
DECLARE_SERIAL(CYuanTai)
public:
double m_Axisx;
CYuanTai(double Bx,double By,double Ex,double Ey,double Ax,
double h,double predd,double Vol,double Area);
void Drawing(CDC *pDC);
virtual void Serialize(CArchive &ar);
};
class CHuTai : public CRevSurf
{
public:
double m_x0,m_y0,m_r;
double m_Axisx;
char m_LorR;
CHuTai(){}
DECLARE_SERIAL(CHuTai)
public:
CHuTai(double Bx,double By,double Ex,double Ey,double Ax,double x0,
double y0,double r, char LorR,double h,double predd,double Vol,double Area);
void Drawing(CDC *pDC);
virtual void Serialize(CArchive &ar);
};
class CPingDi : public CRevSurf
{
protected:
CPingDi(){}
DECLARE_SERIAL(CPingDi)
double m_Ax,m_R1,m_R2;
double m_x1,m_y1,m_x2,m_y2;
public:
CPingDi(double Axisx,double Bx,double By,double xc,double yc,
double x01,double y01,double r1,double x02,double y02,double r2,
double predd,double h,double Vol,double Area);
void Drawing(CDC *pDC);
virtual void Serialize(CArchive &ar);
};
////////////////////////////////////////////////////////////////////////
class CGMCADDoc : public CDocument
{
protected: // create from serialization only
CGMCADDoc();
DECLARE_DYNCREATE(CGMCADDoc)
CObArray m_ObArray;
CObArray m_RedoObArray;
// Attributes
public:
int m_DesignFinish;
double m_TotalVolue;
double m_TotalArea;
double m_TotalH,m_RH;
double m_StartX,m_StartY;
double m_Axisx;
double m_CenterY;
double PreDD;
int CurrentDesign;
int blf;
// Operations
public:
void AddRevSurf(CRevSurf *pRevSurf);
CRevSurf *GetRevSurf(int index);
int GetRevSurfNumber();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CGMCADDoc)
public:
virtual BOOL OnNewDocument();
virtual void Serialize(CArchive& ar);
virtual void DeleteContents();
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CGMCADDoc();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
protected:
// Generated message map functions
protected:
//{{AFX_MSG(CGMCADDoc)
afx_msg void OnEditUndo();
afx_msg void OnUpdateEditUndo(CCmdUI* pCmdUI);
afx_msg void OnEditRedo();
afx_msg void OnUpdateEditRedo(CCmdUI* pCmdUI);
afx_msg void OnTranRefsurf();
afx_msg void OnUpdateTranRefsurf(CCmdUI* pCmdUI);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// MS Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_GMCADDOC_H__E2B3D3CA_E509_11D5_8CE4_E4B541D5F37A__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -