blob: 28594780a7824a87aa9038b3a855175c7148cb1a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//
//=============================================================================//
#if !defined(AFX_TORUSDLG_H__C146AA5D_38FE_11D1_AFC9_0060979D2F4E__INCLUDED_)
#define AFX_TORUSDLG_H__C146AA5D_38FE_11D1_AFC9_0060979D2F4E__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
// TorusDlg.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CTorusDlg dialog
#define ARC_MAX_POINTS 4096
class CTorusDlg : public CDialog
{
// Construction
public:
CTorusDlg(Vector& bmins, Vector& bmaxs, CWnd* pParent = NULL); // standard constructor
~CTorusDlg(); // standard constructor
void DrawTorusTopView( CDC *pDC );
void DrawTorusCrossSection( CDC *pDC );
float GetTorusCrossSectionRadius() const;
BOOL bInitialized;
Vector bmins, bmaxs;
// Dialog Data
//{{AFX_DATA(CTorusDlg)
enum { IDD = IDD_TORUS };
CSpinButtonCtrl m_cStartAngleSpin;
CSpinButtonCtrl m_cWallWidthSpin;
CEdit m_cWallWidth;
CSpinButtonCtrl m_cSidesSpin;
CEdit m_cSides;
CSpinButtonCtrl m_cArcSpin;
CEdit m_cArc;
CStatic m_cPreview;
CStatic m_cTopViewPreview;
int m_iSides;
int m_iWallWidth;
float m_fArc;
float m_fAngle;
float m_fRotationArc;
float m_fRotationAngle;
int m_iRotationSides;
int m_iAddHeight;
float m_fCrossSectionRadius;
//}}AFX_DATA
void SetMaxWallWidth(int iMaxWallWidth) { m_iMaxWallWidth = iMaxWallWidth; }
void SaveValues();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CTorusDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
float MaxTorusCrossSectionRadius() const;
int m_iMaxWallWidth;
// Generated message map functions
//{{AFX_MSG(CTorusDlg)
afx_msg void OnChangeArc();
afx_msg void OnChangeTorusArc();
afx_msg void OnCircle();
afx_msg void OnComputeRadius();
afx_msg void OnUpdateSides();
afx_msg void OnUpdateWallwidth();
virtual BOOL OnInitDialog();
afx_msg void OnPaint();
afx_msg void OnTorusPreview();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_TORUSDLG_H__C146AA5D_38FE_11D1_AFC9_0060979D2F4E__INCLUDED_)
|