summaryrefslogtreecommitdiff
path: root/inc/Aspect_Grid.hxx
blob: 0340ef7cbb43be629033e153ca3b2439053ec08a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _Aspect_Grid_HeaderFile
#define _Aspect_Grid_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_DefineHandle_HeaderFile
#include <Standard_DefineHandle.hxx>
#endif
#ifndef _Handle_Aspect_Grid_HeaderFile
#include <Handle_Aspect_Grid.hxx>
#endif

#ifndef _Quantity_PlaneAngle_HeaderFile
#include <Quantity_PlaneAngle.hxx>
#endif
#ifndef _Quantity_Length_HeaderFile
#include <Quantity_Length.hxx>
#endif
#ifndef _Quantity_Color_HeaderFile
#include <Quantity_Color.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _Aspect_GridDrawMode_HeaderFile
#include <Aspect_GridDrawMode.hxx>
#endif
#ifndef _MMgt_TShared_HeaderFile
#include <MMgt_TShared.hxx>
#endif
class Quantity_Color;



class Aspect_Grid : public MMgt_TShared {

public:

  //! defines the x Origin of the grid. <br>
  Standard_EXPORT     void SetXOrigin(const Quantity_Length anOrigin) ;
  //! defines the y Origin of the grid. <br>
  Standard_EXPORT     void SetYOrigin(const Quantity_Length anOrigin) ;
  //! defines the orientation of the the grid. <br>
  Standard_EXPORT     void SetRotationAngle(const Quantity_PlaneAngle anAngle) ;
  //! Rotate the grid from a relative angle. <br>
  Standard_EXPORT     void Rotate(const Quantity_PlaneAngle anAngle) ;
  //! Translate the grid from a relative distance. <br>
  Standard_EXPORT     void Translate(const Quantity_Length aDx,const Quantity_Length aDy) ;
  //! Change the colors of the grid <br>
  Standard_EXPORT   virtual  void SetColors(const Quantity_Color& aColor,const Quantity_Color& aTenthColor) ;
  //! returns the point of the grid the closest to the point X,Y <br>
//!          if the grid is active. If the grid is not active returns <br>
//!          X,Y. <br>
  Standard_EXPORT     void Hit(const Quantity_Length X,const Quantity_Length Y,Quantity_Length& gridX,Quantity_Length& gridY) const;
  //! returns the point of the grid the closest to the point X,Y <br>
  Standard_EXPORT   virtual  void Compute(const Quantity_Length X,const Quantity_Length Y,Quantity_Length& gridX,Quantity_Length& gridY) const = 0;
  //! activates the grid. The Hit method will return <br>
//!          gridx and gridx computed according to the steps <br>
//!          of the grid. <br>
  Standard_EXPORT     void Activate() ;
  //! deactivates the grid. The hit method will return <br>
//!          gridx and gridx as the enter value X & Y. <br>
  Standard_EXPORT     void Deactivate() ;
  //! returns the x Origin of the grid. <br>
  Standard_EXPORT     Quantity_Length XOrigin() const;
  //! returns the x Origin of the grid. <br>
  Standard_EXPORT     Quantity_Length YOrigin() const;
  //! returns the x Angle of the grid. <br>
  Standard_EXPORT     Quantity_PlaneAngle RotationAngle() const;
  //! Returns TRUE when the grid is active. <br>
  Standard_EXPORT     Standard_Boolean IsActive() const;
  //! Returns the colors of the grid. <br>
  Standard_EXPORT     void Colors(Quantity_Color& aColor,Quantity_Color& aTenthColor) const;
  //! Change the grid aspect. <br>
  Standard_EXPORT     void SetDrawMode(const Aspect_GridDrawMode aDrawMode) ;
  //! Returns the grid aspect. <br>
  Standard_EXPORT     Aspect_GridDrawMode DrawMode() const;
  //! Display the grid at screen. <br>
  Standard_EXPORT   virtual  void Display() ;
  //! Erase the grid from screen. <br>
  Standard_EXPORT   virtual  void Erase() const;
  //! Returns TRUE when the grid is displayed at screen. <br>
  Standard_EXPORT   virtual  Standard_Boolean IsDisplayed() const;
  
  Standard_EXPORT   virtual  void Init()  = 0;




  DEFINE_STANDARD_RTTI(Aspect_Grid)

protected:

  //! creates a new grid. By default this grid is not <br>
//!          active. <br>
  Standard_EXPORT   Aspect_Grid(const Quantity_Length anXOrigin = 0.0,const Quantity_Length anYOrigin = 0.0,const Quantity_PlaneAngle aRotationAngle = 0,const Quantity_Color& aColor = Quantity_NOC_GRAY50,const Quantity_Color& aTenthColor = Quantity_NOC_GRAY70);
  //! Updates the grid parameters. <br>
  Standard_EXPORT   virtual  void UpdateDisplay() ;

Quantity_PlaneAngle myRotationAngle;
Quantity_Length myXOrigin;
Quantity_Length myYOrigin;
Quantity_Color myColor;
Quantity_Color myTenthColor;


private: 


Standard_Boolean myIsActive;
Standard_Boolean myIsDisplayed;
Aspect_GridDrawMode myDrawMode;


};





// other Inline functions and methods (like "C++: function call" methods)


#endif