0024234: occt master is not compiled by VC++ 2005 (vc8 32/64 bit TKBO)
[occt.git] / src / OpenGl / OpenGl_GraduatedTrihedron.hxx
CommitLineData
b311480e 1// Created on: 2011-09-20
2// Created by: Sergey ZERCHANINOV
a174a3c5 3// Copyright (c) 2011-2013 OPEN CASCADE SAS
b311480e 4//
5// The content of this file is subject to the Open CASCADE Technology Public
6// License Version 6.5 (the "License"). You may not use the content of this file
7// except in compliance with the License. Please obtain a copy of the License
8// at http://www.opencascade.org and read it completely before using this file.
9//
10// The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
11// main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
12//
13// The Original Code and all software distributed under the License is
14// distributed on an "AS IS" basis, without warranty of any kind, and the
15// Initial Developer hereby disclaims all such warranties, including without
16// limitation, any warranties of merchantability, fitness for a particular
17// purpose or non-infringement. Please see the License for the specific terms
18// and conditions governing the rights and limitations under the License.
19
2166f0fa
SK
20#ifndef _OpenGl_GraduatedTrihedron_Header
21#define _OpenGl_GraduatedTrihedron_Header
22
a174a3c5 23#include <OpenGl_Element.hxx>
2166f0fa 24
a174a3c5 25#include <OpenGl_Text.hxx>
2166f0fa
SK
26#include <Graphic3d_CGraduatedTrihedron.hxx>
27
28class OpenGl_View;
29
a174a3c5 30class OpenGl_GraduatedTrihedron : public OpenGl_Element
2166f0fa 31{
a174a3c5 32
33public:
2166f0fa
SK
34
35 static void SetMinMax (const Standard_ShortReal xMin, const Standard_ShortReal yMin, const Standard_ShortReal zMin,
36 const Standard_ShortReal xMax, const Standard_ShortReal yMax, const Standard_ShortReal zMax);
37
a174a3c5 38public:
39
40 OpenGl_GraduatedTrihedron (const Graphic3d_CGraduatedTrihedron& theData);
41
42 virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
43 virtual void Release (const Handle(OpenGl_Context)& theCtx);
2166f0fa 44
a174a3c5 45protected:
2166f0fa 46
a174a3c5 47 virtual ~OpenGl_GraduatedTrihedron();
2166f0fa 48
a174a3c5 49protected:
50
51 mutable OpenGl_Text myLabelX;
52 mutable OpenGl_Text myLabelY;
53 mutable OpenGl_Text myLabelZ;
54 mutable OpenGl_Text myLabelValues;
55 mutable OpenGl_AspectText myAspectLabels;
56 mutable OpenGl_AspectText myAspectValues;
57 TEL_COLOUR myXNameColor;
58 TEL_COLOUR myYNameColor;
59 TEL_COLOUR myZNameColor;
60
61 bool myToDrawXName;
62 bool myToDrawYName;
63 bool myToDrawZName;
64 bool myToDrawXValues;
65 bool myToDrawYValues;
66 bool myToDrawZValues;
67 bool myToDrawGrid;
68 bool myToDrawAxes;
2166f0fa
SK
69 unsigned int myNbX, myNbY, myNbZ;
70 int myXOffset, myYOffset, myZOffset;
71 int myXAxisOffset, myYAxisOffset, myZAxisOffset;
8263fcd3 72 Standard_Boolean myDrawXTickmarks;
73 Standard_Boolean myDrawYTickmarks;
74 Standard_Boolean myDrawZTickmarks;
2166f0fa
SK
75 unsigned int myXTickmarkLength, myYTickmarkLength, myZTickmarkLength;
76 float myGridColor[3];
a174a3c5 77 TEL_COLOUR myXColor;
78 TEL_COLOUR myYColor;
79 TEL_COLOUR myZColor;
2166f0fa
SK
80 minMaxValuesCallback myCbCubicAxes;
81 void* myPtrVisual3dView;
82
a174a3c5 83public:
84
1c35b92f 85 DEFINE_STANDARD_ALLOC
a174a3c5 86
2166f0fa
SK
87};
88
89#endif //_OpenGl_GraduatedTrihedron_Header