7fd59977 |
1 | // TexturesExt_Presentation.h: interface for the TexturesExt_Presentation class. |
2 | // Creation of textural presentation of shape |
3 | ////////////////////////////////////////////////////////////////////// |
4 | |
5 | #if !defined(AFX_TexturesExt_Presentation_H__790EED7F_7BA2_11D5_BA4A_0060B0EE18EA__INCLUDED_) |
6 | #define AFX_TexturesExt_Presentation_H__790EED7F_7BA2_11D5_BA4A_0060B0EE18EA__INCLUDED_ |
7 | |
8 | #if _MSC_VER > 1000 |
9 | #pragma once |
10 | #endif // _MSC_VER > 1000 |
11 | |
12 | #include <OCCDemo_Presentation.h> |
13 | class TopoDS_Shape; |
14 | class TCollection_AsciiString; |
92efcf78 |
15 | class AIS_TexturedShape; |
7fd59977 |
16 | |
17 | class TexturesExt_Presentation : public OCCDemo_Presentation |
18 | { |
19 | public: |
20 | // Construction |
21 | TexturesExt_Presentation(); |
22 | |
23 | public: |
24 | // Iteration on samples |
25 | virtual void DoSample(); |
26 | // one phase of iterations |
27 | |
28 | virtual void Init(); |
29 | |
30 | private: |
31 | // display an AIS_TexturedShape based on a given shape with texture with given filename |
32 | // filename can also be an integer value ("2", "5", etc.), in this case |
33 | // a predefined texture from Graphic3d_NameOfTexture2D with number = this value |
34 | // is loaded. |
92efcf78 |
35 | Handle(AIS_TexturedShape) Texturize( |
7fd59977 |
36 | const TopoDS_Shape& aShape, TCollection_AsciiString aTFileName, |
37 | Standard_Real toScaleU=1.0, Standard_Real toScaleV=1.0, |
38 | Standard_Real toRepeatU=1.0, Standard_Real toRepeatV=1.0, |
39 | Standard_Real originU=0.0, Standard_Real originV=0.0); |
40 | |
41 | // loads a shape from a given brep file from data dir into a given TopoDS_Shape object |
42 | Standard_Boolean loadShape(TopoDS_Shape&, TCollection_AsciiString); |
43 | |
44 | // turns 6 diretional lights on/off for brighter demonstration |
45 | void lightsOnOff(Standard_Boolean isOn); |
46 | |
47 | // Sample functions |
48 | void sampleBottle(); |
49 | void sampleTerrain(); |
50 | void sampleKitchen(); |
51 | |
52 | private: |
53 | // Array of pointers to sample functions |
54 | typedef void (TexturesExt_Presentation::*PSampleFuncType)(); |
55 | static const PSampleFuncType SampleFuncs[]; |
56 | |
57 | }; |
58 | |
59 | #endif // !defined(AFX_TexturesExt_Presentation_H__790EED7F_7BA2_11D5_BA4A_0060B0EE18EA__INCLUDED_) |