📄 graphexpdoc.h
字号:
// GraphExpDoc.h : interface of the CGraphExpDoc class
//
/////////////////////////////////////////////////////////////////////////////
#include"iostream.h"
#include "Line.h"
#include <vector>
using namespace std;
#include "graphexpview.h"
#if !defined(AFX_GRAPHEXPDOC_H__74E7415A_56E8_444E_832B_D0DFD47330DA__INCLUDED_)
#define AFX_GRAPHEXPDOC_H__74E7415A_56E8_444E_832B_D0DFD47330DA__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "CB2Line.h"
#include "Rect3D.h"
// Added by ClassView
class CGraphExpDoc : public CDocument
{
protected: // create from serialization only
vector<CLine>m_vLines;
vector<CPoint>m_vPoints;
vector <CB_Line> m_vB2Lines;
vector <CB_Line> m_vB3Lines;
vector <CB_Line> m_vBezier2;
vector <CB_Line> m_vBezier3;
vector <CB_Line> m_vBezierN;
vector <CRect3D>m_vRect3;
CPoint m_pStart,m_pEnd;
CPoint m_pStartB,m_pEndB;
CPoint m_pCircle;
int m_mCircleR;
CPoint m_pCircleP;
int m_pCircleR;
COLORREF m_color;
COLORREF m_colorB;
COLORREF m_colorM;
COLORREF m_colorP;
CGraphExpDoc();
DECLARE_DYNCREATE(CGraphExpDoc)
// Attributes
public:
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CGraphExpDoc)
public:
virtual BOOL OnNewDocument();
virtual void Serialize(CArchive& ar);
//}}AFX_VIRTUAL
// Implementation
public:
int GetRect3Number();
CRect3D GetRect3(int index);
void AddRect3(COLORREF color,CPoint pStart,CPoint pEnd);
int GetBezierNLineNumber();
CB_Line Get_BezierN_Line(int index);
void Add_BezierN_Line(CPoint *m_Bezier,int num,COLORREF color);
int GetBezier3LineNumber();
CB_Line Get_Bezier3_Line(int index);
void Add_Bezier3_Line(CPoint m_p1,CPoint m_p2,CPoint m_p3,CPoint m_p4,COLORREF color);
int GetBezier2LineNumber();
CB_Line Get_Bezier2_Line(int index);
void Add_Bezier2_Line(CPoint m_p1,CPoint m_p2,CPoint m_p3,COLORREF color);
int GetB3LineNumber();
CB_Line Get_B3_Line(int index);
void Add_B3_Line(CPoint m_p1,CPoint m_p2,CPoint m_p3,CPoint m_p4,COLORREF color);
int GetB2LineNumber();
CB_Line Get_B2_Line(int index);
void Add_B2_Line(CPoint m_p1,CPoint m_p2,CPoint m_p3,COLORREF color);
void DrawRect(CDC *pDC);
CPoint m_RngRD;
CPoint m_RngLU;
void AddRect(CPoint m_RctLU,CPoint m_RctRD);
void ClipSHRect(CPoint m_RctLU, CPoint m_RctRD);
void ClipSHLineD(CPoint blan);
void ClipSHLineU(CPoint blan);
void ClipSHLineR(CPoint blan);
void ClipSHLineL(CPoint blan);
void DrawPloygon(CDC *pDC);
int m_nPloy;
void AddPloygon(CPoint *m_Ploy,int m_numPloy);
CPoint* m_Ploygon;
void ClipBarskyLine(CPoint m_RctLU,CPoint m_RctRD);
int ClipBarskyTest(float p,float q,float *u1,float *u2);
void ClipCohen(CPoint m_RctLU,CPoint m_RctRD);
void Code(CPoint m_pnt,CPoint m_RctLU, CPoint m_RctRD,int &c);
CPoint LineSetD(CPoint m_RctLU,CPoint m_RctRD);
CPoint LineSetU(CPoint m_RctLU,CPoint m_RctRD);
CPoint LineSetR(CPoint m_RctLU,CPoint m_RctRD);
CPoint LineSetL(CPoint m_RctLU,CPoint m_RctRD);
void SlipPoint(CPoint m_RctLU,CPoint m_RctRD);
void DrawPoint(CDC *pDC);
int GetPointNumber();
CPoint GetPoint(int index);
void AddPoint(CPoint m_pnt);
void DrawPnarc(CDC *pDC);
void AddPnarc(int x0, int y0, int r, COLORREF crColor);
void DrawMidpointCircle(CDC *pDC);
void AddMidpointCircle(int x0, int y0, int r, COLORREF crColor);
void DrawLineBresenham(CDC *pDC);
void DrawLineDDA(CDC *pDC);
void AddLineDDA(int x1,int y1,int x2,int y2,COLORREF crColor);
void AddLineBresenham(int x1,int y1,int x2,int y2,COLORREF crColor);
void AddLineDDA(CDC *pDC,int x1,int y1,int x2,int y2,COLORREF crColor);
virtual void DeleteContents();
int GetLineNumber();
CLine GetLine(int index);
void AddLine(CPoint pntStart,CPoint pntEnd);
virtual ~CGraphExpDoc();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
protected:
// Generated message map functions
protected:
//{{AFX_MSG(CGraphExpDoc)
afx_msg void OnEditUndo();
afx_msg void OnUpdateEditUndo(CCmdUI* pCmdUI);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_GRAPHEXPDOC_H__74E7415A_56E8_444E_832B_D0DFD47330DA__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -