Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
16
Добавлен:
01.05.2014
Размер:
3.08 Кб
Скачать
// 3DProjectDlg.h : header file
//

#if !defined(AFX_3DPROJECTDLG_H__3B86B176_246F_49A7_8477_936EC830E5AF__INCLUDED_)
#define AFX_3DPROJECTDLG_H__3B86B176_246F_49A7_8477_936EC830E5AF__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <gl\gl.h>
#include <gl\glu.h>
#include <gl\glaux.h>

/////////////////////////////////////////////////////////////////////////////
// C3DProjectDlg dialog

class C3DProjectDlg : public CDialog
{
// Construction
public:
	C3DProjectDlg(CWnd* pParent = NULL);	// standard constructor

// Dialog Data
	//{{AFX_DATA(C3DProjectDlg)
	enum { IDD = IDD_MY3DPROJECT_DIALOG };
	CSliderCtrl	m_ctrlXRotate;
	CSliderCtrl	m_ctrlXTranslate;
	CSliderCtrl	m_ctrlYRotate;
	CSliderCtrl	m_ctrlYTranslate;
	CSliderCtrl	m_ctrlZRotate;
	CSliderCtrl	m_ctrlZTranslate;
	CSliderCtrl	m_ctrlAngleRotate;
	CSliderCtrl	m_ctrlCenterY;
	CSliderCtrl	m_ctrlEyeZ;
	CSliderCtrl	m_ctrlEyeY;
	CSliderCtrl	m_ctrlEyeX;
	CSliderCtrl	m_ctrlUpZ;
	CSliderCtrl	m_ctrlUpY;
	CSliderCtrl	m_ctrlUpX;
	CSliderCtrl	m_ctrlCenterZ;
	CSliderCtrl	m_ctrlCenterX;
	CSliderCtrl	m_ctrlZNear;
	CSliderCtrl	m_ctrlZFar;
	CSliderCtrl	m_ctrlAspect;
	CSliderCtrl	m_ctrlAngleY;
	CSliderCtrl	m_ctrlZMove;
	CSliderCtrl	m_ctrlYMove;
	CSliderCtrl	m_ctrlXMove;
	CSliderCtrl	m_ctrlAmbientR;
	CSliderCtrl	m_ctrlAmbientG;
	CSliderCtrl	m_ctrlAmbientB;
	CSliderCtrl	m_ctrlAmbientA;
	CSliderCtrl	m_ctrlDiffuseR;
	CSliderCtrl	m_ctrlDiffuseG;
	CSliderCtrl	m_ctrlDiffuseB;
	CSliderCtrl	m_ctrlDiffuseA;
	CSliderCtrl	m_ctrlSpecularR;
	CSliderCtrl	m_ctrlSpecularG;
	CSliderCtrl	m_ctrlSpecularB;
	CSliderCtrl	m_ctrlSpecularA;
	BOOL	m_bLamp1;
	BOOL	m_bLamp2;
	BOOL	m_bLamp3;
	BOOL	m_bLightOn;
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(C3DProjectDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	HICON m_hIcon;
	HGLRC m_hRC;
	CRect m_rImageRect;
	
	void OnDraw(CDC* pDC);
	void DrawWithOpenGL();
	void Draw3DFigure();
	void SetTransformations();
	void RecalcEdit();
	void DisableLamps();
	void EnableLamps();
	void SetLamps();
	void SetMaterial();
	void DrawCoordinates();
	
	// Generated message map functions
	//{{AFX_MSG(C3DProjectDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
	afx_msg void OnLamp1();
	afx_msg void OnLamp2();
	afx_msg void OnLamp3();
	afx_msg void OnLighton();
	afx_msg void OnDestroy();
	afx_msg void OnClickCombomaterial(short Area);
	DECLARE_EVENTSINK_MAP()
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_3DPROJECTDLG_H__3B86B176_246F_49A7_8477_936EC830E5AF__INCLUDED_)
Соседние файлы в папке Лабораторная работа №31