0022149: Strings with Japanese characters can not be displayed in 3D viewer
[occt.git] / src / Graphic3d / Graphic3d_CGraduatedTrihedron.hxx
1 // File:      Graphic3d_CGraduatedTrihedron.hxx
2 // Created:   6 March 2011
3 // Author:    Sergey ZERCHANINOV
4 // Copyright: OPEN CASCADE SA 2011
5
6 #ifndef _Graphic3d_CGraduatedTrihedron_HeaderFile
7 #define _Graphic3d_CGraduatedTrihedron_HeaderFile
8
9 #include <Standard_Boolean.hxx>
10 #include <Standard_Integer.hxx>
11 #include <Standard_Type.hxx>
12 #include <Quantity_Color.hxx>
13 #include <TCollection_AsciiString.hxx>
14 #include <TCollection_ExtendedString.hxx>
15 #include <OSD_FontAspect.hxx>
16
17 typedef void (*minMaxValuesCallback)(void*);
18 class Graphic3d_CGraduatedTrihedron
19 {
20   public:
21     /* Default constructor. Nullifies the view pointer */
22     Graphic3d_CGraduatedTrihedron () : ptrVisual3dView(NULL) {}
23
24     /* Names of axes */
25     TCollection_ExtendedString xname, yname, zname;
26     /* Draw names */
27     Standard_Boolean xdrawname, ydrawname, zdrawname;
28     /* Draw values */
29     Standard_Boolean xdrawvalues, ydrawvalues, zdrawvalues;
30     /* Draw grid */
31     Standard_Boolean drawgrid;
32     /* Draw axes */
33     Standard_Boolean drawaxes;
34     /* Number of splits along axes */
35     Standard_Integer nbx, nby, nbz;
36     /* Offset for drawing values */
37     Standard_Integer xoffset, yoffset, zoffset;
38     /* Offset for drawing names of axes */
39     Standard_Integer xaxisoffset, yaxisoffset, zaxisoffset;
40     /* Draw tickmarks */
41     Standard_Boolean xdrawtickmarks, ydrawtickmarks, zdrawtickmarks;
42     /* Length of tickmarks */
43     Standard_Integer xtickmarklength, ytickmarklength, ztickmarklength;
44     /* Grid color */
45     Quantity_Color gridcolor;
46     /* Colors of axis names */
47     Quantity_Color xnamecolor, ynamecolor, znamecolor;
48     /* Colors of axis and values */
49     Quantity_Color xcolor, ycolor, zcolor;
50     /* Font name of names of axes: Courier, Arial, ... */
51     TCollection_AsciiString fontOfNames;
52     /* Style of names of axes: OSD_FA_Regular, OSD_FA_Bold, ... */
53     OSD_FontAspect styleOfNames;
54     /* Size of names of axes: 8, 10, 12, 14, ... */
55     Standard_Integer sizeOfNames;
56     /* Font name of values: Courier, Arial, ... */
57     TCollection_AsciiString fontOfValues;
58     /* Style of values: OSD_FA_Regular, OSD_FA_Bold, ... */
59     OSD_FontAspect styleOfValues;
60     /* Size of values: 8, 10, 12, 14, ... */
61     Standard_Integer sizeOfValues;
62
63     /* Callback function to define boundary box of displayed objects */
64     minMaxValuesCallback cbCubicAxes;
65     void* ptrVisual3dView;
66 };
67
68 const Handle(Standard_Type)& TYPE(Graphic3d_CGraduatedTrihedron);
69
70 #endif /*Graphic3d_CGraduatedTrihedron_HeaderFile*/