0022819: Redesign of OpenGl driver
[occt.git] / src / OpenGl / OpenGl_telem_view.hxx
1 /***********************************************************************
2
3 FONCTION :
4 ----------
5 File OpenGl_telem_view.h :
6
7
8 REMARQUES:
9 ---------- 
10
11
12 HISTORIQUE DES MODIFICATIONS   :
13 --------------------------------
14 xx-xx-xx : xxx ; Creation.
15 02-07-96 : FMN ; Suppression WSWSHeight et WSWSWidth
16 Suppression de TelSetWSWindow
17 03-07-96 : FMN ; A une workstation correspond une vue.
18 Suppression de TelGetViewportAtLocation()
19 Suppression de TelPrintAllViews()
20 03-03-98 : FMN ; Suppression variable externe TglWhetherPerspective 
21
22 ************************************************************************/
23
24 #ifndef  OPENGL_TELEM_VIEW_H
25 #define  OPENGL_TELEM_VIEW_H
26
27 #include <InterfaceGraphic_tgl_all.hxx>
28
29 typedef  struct
30 {
31   Tfloat    xmin;
32   Tfloat    xmax;
33   Tfloat    ymin;
34   Tfloat    ymax;
35 } Tlimit;
36
37 typedef  struct
38 {
39   Tfloat    xmin;
40   Tfloat    xmax;
41   Tfloat    ymin;
42   Tfloat    ymax;
43   Tfloat    zmin;
44   Tfloat    zmax;
45 } Tlimit3;
46
47 typedef  enum
48 {
49   TelParallel, TelPerspective
50 } TelProjType;
51
52 typedef  struct
53 {
54   Tlimit      window;
55   Tlimit3     viewport;
56   TelProjType proj;
57   Tfloat      prp[3];
58   Tfloat      vpd;
59   Tfloat      fpd;
60   Tfloat      bpd;
61 } TEL_VIEW_MAPPING, *tel_view_mapping;
62
63 extern  void              /* vrp,     vpn,     vup,     error_ind, mat */
64 TelEvalViewOrientationMatrix(Tfloat*, Tfloat*, Tfloat*, Tfloat*, Tint*, Tmatrix3);
65
66 extern  void            /*         mapping, error_ind,  mat */
67 TelEvalViewMappingMatrix( tel_view_mapping, Tint*, Tmatrix3 );
68
69 #endif