8977ba4d6f0a3600a62f0239fa62ea27a148cdec
[occt.git] / samples / mfc / standard / 01_Geometry / src / GeomSources.h
1 // GeomSources.h: interface for the GeomSources class.
2 //
3 //////////////////////////////////////////////////////////////////////
4
5 #if !defined(AFX__H__FE726813_A2C6_11D1_8DA3_0800369C8A03__INCLUDED_)
6 #define AFX__H__FE726813_A2C6_11D1_8DA3_0800369C8A03__INCLUDED_
7
8 #if _MSC_VER >= 1000
9 #pragma once
10 #endif // _MSC_VER >= 1000
11
12 #include "Standard_Macro.hxx"
13 #include "ResultDialog.h"
14 #include "GeometryDoc.h"
15
16 class GeomSources  
17 {
18 public:
19   Standard_EXPORT static void gpTest1(CGeometryDoc* aDoc);
20   Standard_EXPORT static void gpTest2(CGeometryDoc* aDoc);
21   Standard_EXPORT static void gpTest3(CGeometryDoc* aDoc);
22   Standard_EXPORT static void gpTest4(CGeometryDoc* aDoc);
23   Standard_EXPORT static void gpTest5(CGeometryDoc* aDoc);
24   Standard_EXPORT static void gpTest6(CGeometryDoc* aDoc);
25   Standard_EXPORT static void gpTest7(CGeometryDoc* aDoc);
26   Standard_EXPORT static void gpTest8(CGeometryDoc* aDoc);
27   Standard_EXPORT static void gpTest9(CGeometryDoc* aDoc);
28   Standard_EXPORT static void gpTest10(CGeometryDoc* aDoc);
29   Standard_EXPORT static void gpTest11(CGeometryDoc* aDoc);
30   Standard_EXPORT static void gpTest12(CGeometryDoc* aDoc);
31   Standard_EXPORT static void gpTest13(CGeometryDoc* aDoc);
32   Standard_EXPORT static void gpTest14(CGeometryDoc* aDoc);
33   Standard_EXPORT static void gpTest15(CGeometryDoc* aDoc);
34   Standard_EXPORT static void gpTest16(CGeometryDoc* aDoc);
35   Standard_EXPORT static void gpTest17(CGeometryDoc* aDoc);
36   Standard_EXPORT static void gpTest18(CGeometryDoc* aDoc);
37   Standard_EXPORT static void gpTest19(CGeometryDoc* aDoc);
38   Standard_EXPORT static void gpTest20(CGeometryDoc* aDoc);
39   Standard_EXPORT static void gpTest21(CGeometryDoc* aDoc);
40   Standard_EXPORT static void gpTest22(CGeometryDoc* aDoc);
41   Standard_EXPORT static void gpTest23(CGeometryDoc* aDoc);
42   Standard_EXPORT static void gpTest24(CGeometryDoc* aDoc);
43   Standard_EXPORT static void gpTest25(CGeometryDoc* aDoc);
44   Standard_EXPORT static void gpTest26(CGeometryDoc* aDoc);
45   Standard_EXPORT static void gpTest27(CGeometryDoc* aDoc);
46   Standard_EXPORT static void gpTest28(CGeometryDoc* aDoc);
47   Standard_EXPORT static void gpTest29(CGeometryDoc* aDoc);
48   Standard_EXPORT static void gpTest30(CGeometryDoc* aDoc);
49   Standard_EXPORT static void gpTest31(CGeometryDoc* aDoc);
50   Standard_EXPORT static void gpTest32(CGeometryDoc* aDoc);
51   Standard_EXPORT static void gpTest33(CGeometryDoc* aDoc);
52   Standard_EXPORT static void gpTest34(CGeometryDoc* aDoc);
53   Standard_EXPORT static void gpTest35(CGeometryDoc* aDoc);
54   Standard_EXPORT static void gpTest36(CGeometryDoc* aDoc);
55   Standard_EXPORT static void gpTest37(CGeometryDoc* aDoc);
56   Standard_EXPORT static void gpTest38(CGeometryDoc* aDoc);
57   Standard_EXPORT static void gpTest39(CGeometryDoc* aDoc);
58   Standard_EXPORT static void gpTest40(CGeometryDoc* aDoc);
59   Standard_EXPORT static void gpTest41(CGeometryDoc* aDoc);
60   Standard_EXPORT static void gpTest42(CGeometryDoc* aDoc);
61   Standard_EXPORT static void gpTest43(CGeometryDoc* aDoc);
62   Standard_EXPORT static void gpTest44(CGeometryDoc* aDoc);
63   Standard_EXPORT static void gpTest45(CGeometryDoc* aDoc);
64   Standard_EXPORT static void gpTest46(CGeometryDoc* aDoc);
65   Standard_EXPORT static void gpTest47(CGeometryDoc* aDoc);
66   Standard_EXPORT static void gpTest48(CGeometryDoc* aDoc);
67   Standard_EXPORT static void gpTest49(CGeometryDoc* aDoc);
68   Standard_EXPORT static void gpTest50(CGeometryDoc* aDoc);
69   Standard_EXPORT static void gpTest51(CGeometryDoc* aDoc);
70   GeomSources();
71   virtual ~GeomSources();
72
73 private:
74
75   enum DisplayType{No2DNo3D,   // 0 0 0
76     No2D3D  ,   // 0 0 1
77     a2DNo3D  ,   // 0 1 0
78     a2D3D    };  // 1 1 1
79   static  void PreProcess (CGeometryDoc* aDoc,DisplayType aDisplayType);
80   static void PostProcess(CGeometryDoc* aDoc,
81     UINT anID,
82     DisplayType aDisplayType,
83     const TCollection_AsciiString& aString,
84     Standard_Boolean UpdateViewer = Standard_True,
85     Quantity_Coefficient Coef = -1);
86   static void DisplayPoint(CGeometryDoc* aDoc,
87     const gp_Pnt2d& aPoint,
88     const char* aText,
89     Standard_Boolean UpdateViewer = Standard_False,
90     Standard_Real anXoffset =0,
91     Standard_Real anYoffset =0,
92     Standard_Real TextScale = 0.05);
93   static void DisplayPoint(CGeometryDoc* aDoc,
94     const gp_Pnt& aPoint,
95     const char* aText,
96     Standard_Boolean UpdateViewer = Standard_False,
97     Standard_Real anXoffset = 0,
98     Standard_Real anYoffset = 0,
99     Standard_Real aZoffset  = 0,
100     Standard_Real TextScale = 0.05);
101
102   static void DisplayCurve(CGeometryDoc* aDoc,
103     Handle(Geom2d_Curve) aCurve,
104     Standard_Integer aColorIndex = 4,
105     Standard_Boolean UpdateViewer = false);
106   static void DisplayCurveAndCurvature(CGeometryDoc* aDoc,
107     Handle(Geom2d_Curve) aCurve,
108     Standard_Integer aColorIndex = 4,
109     Standard_Boolean UpdateViewer = false);
110
111   static void DisplayCurve(CGeometryDoc* aDoc,
112     Handle(Geom_Curve) aCurve,
113     Quantity_NameOfColor aNameOfColor, 
114     Standard_Boolean UpdateViewer = false);
115
116   static void DisplayCurve(CGeometryDoc* aDoc,
117     Handle(Geom_Curve) aCurve,
118     Standard_Boolean UpdateViewer = false);
119
120   static void DisplaySurface  (CGeometryDoc* aDoc,
121     Handle(Geom_Surface) aSurface,
122     Quantity_NameOfColor aNameOfColor, 
123     Standard_Boolean UpdateViewer = false);
124
125   static void DisplaySurface  (CGeometryDoc* aDoc,
126     Handle(Geom_Surface) aSurface,
127     Standard_Boolean UpdateViewer = false);
128
129   static void ResetView(CGeometryDoc* aDoc);
130
131   static void AddSeparator(CGeometryDoc* aDoc,TCollection_AsciiString& aMessage);
132
133
134 };
135
136 #endif // !defined(AFX__H__FE726813_A2C6_11D1_8DA3_0800369C8A03__INCLUDED_)