0024752: Visualization - inherit OpenGl_Group from Graphic3d_Group
[occt.git] / src / InterfaceGraphic / InterfaceGraphic_Graphic3d.hxx
CommitLineData
b311480e 1// Copyright (c) 1991-1999 Matra Datavision
973c2be1 2// Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 3//
973c2be1 4// This file is part of Open CASCADE Technology software library.
b311480e 5//
d5f74e42 6// This library is free software; you can redistribute it and/or modify it under
7// the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 8// by the Free Software Foundation, with special exception defined in the file
9// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10// distribution for complete text of the license and disclaimer of any warranty.
b311480e 11//
973c2be1 12// Alternatively, this file may be used under the terms of Open CASCADE
13// commercial license or contractual agreement.
b311480e 14
7fd59977 15#ifndef InterfaceGraphic_Graphic3dHeader
16#define InterfaceGraphic_Graphic3dHeader
17
18#include <InterfaceGraphic_PrimitiveArray.hxx>
bf75be98 19#include <Standard_Transient.hxx>
7fd59977 20
7fd59977 21/* COULEUR */
22
23typedef struct {
24
25 float r, g, b;
26
27} CALL_DEF_COLOR;
28
7fd59977 29/* POINT */
30
31typedef struct {
32
33 float x, y, z;
34
35} CALL_DEF_POINT;
36
7fd59977 37/* BOITE ENGLOBANTE */
38
39typedef struct {
40
41 CALL_DEF_COLOR Color;
42
43 CALL_DEF_POINT Pmin;
44
45 CALL_DEF_POINT Pmax;
46
47} CALL_DEF_BOUNDBOX;
48
7fd59977 49/* MATERIAL */
50
51typedef struct {
52
53 float Ambient;
54 int IsAmbient;
55
56 float Diffuse;
57 int IsDiffuse;
58
59 float Specular;
60 int IsSpecular;
61
62 float Emission;
63 int IsEmission;
64
65 float Transparency;
66 float Shininess;
67
68 float EnvReflexion;
bf75be98 69
7fd59977 70 int IsPhysic;
71
72 /* Attribut couleur eclairage */
bf75be98 73 CALL_DEF_COLOR ColorAmb, ColorDif, ColorSpec, ColorEms, Color;
7fd59977 74
7fd59977 75
bf75be98 76} CALL_DEF_MATERIAL;
7fd59977 77
7fd59977 78/* Transform persistence struct */
79typedef struct
80{
81 int IsSet;
82 int IsDef;
83 int Flag;
84 CALL_DEF_POINT Point;
85} CALL_DEF_TRANSFORM_PERSISTENCE;
86
7fd59977 87/* BOUNDING BOX */
88
89typedef struct {
90
91 float XMin;
92 float YMin;
93 float ZMin;
bf75be98 94
7fd59977 95 float XMax;
96 float YMax;
97 float ZMax;
98
99} CALL_DEF_BOUNDS;
100
101/* USERDRAW DATA */
102
103typedef struct {
104
105 void *Data;
106 CALL_DEF_BOUNDS *Bounds;
107
108} CALL_DEF_USERDRAW;
109
110#endif /* InterfaceGraphic_Graphic3dHeader */