1 // Copyright (c) 1999-2014 OPEN CASCADE SAS
3 // This file is part of Open CASCADE Technology software library.
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
14 #ifndef _Graphic3d_CView_HeaderFile
15 #define _Graphic3d_CView_HeaderFile
17 #include <InterfaceGraphic_Graphic3d.hxx>
18 #include <InterfaceGraphic_Visual3d.hxx>
19 #include <Graphic3d_TextureEnv.hxx>
20 #include <Graphic3d_Camera.hxx>
22 #include <Graphic3d_CLight.hxx>
23 #include <Graphic3d_SequenceOfHClipPlane.hxx>
25 class CALL_DEF_VIEWCONTEXT
30 CALL_DEF_VIEWCONTEXT()
35 ZClipFrontPlane (0.0f),
36 ZClipBackPlane (0.0f),
37 DepthFrontPlane (0.0f),
38 DepthBackPlane (0.0f),
59 float ZClipFrontPlane;
62 float DepthFrontPlane;
70 Graphic3d_CLight* ActiveLight;
72 Handle(Graphic3d_TextureEnv) TextureEnv;
75 Graphic3d_SequenceOfHClipPlane ClipPlanes;
77 Handle(Graphic3d_Camera) Camera;
101 IsShadowsEnabled (1),
102 IsReflectionsEnabled (0),
103 IsAntialiasingEnabled (0)
105 memset(&DefWindow,0,sizeof(DefWindow));
119 CALL_DEF_VIEWCONTEXT Context;
121 CALL_DEF_WINDOW DefWindow;
128 Aspect_RenderingContext GContext;
129 Aspect_GraphicCallbackProc GDisplayCB;
134 //! Was the window redrawn by standard OpenGL?
135 mutable int WasRedrawnGL;
137 //! Enables/disables OpenCL-based ray-tracing.
140 //! Enables/disables ray-traced sharp shadows.
141 int IsShadowsEnabled;
143 //! Enables/disables ray-traced reflections.
144 int IsReflectionsEnabled;
146 //! Enables/disables ray-traced adaptive anti-aliasing.
147 int IsAntialiasingEnabled;
151 #endif // Graphic3d_CView_HeaderFile