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
|
// 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_RectangularGrid_HeaderFile
#define _Aspect_RectangularGrid_HeaderFile
#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_DefineHandle_HeaderFile
#include <Standard_DefineHandle.hxx>
#endif
#ifndef _Handle_Aspect_RectangularGrid_HeaderFile
#include <Handle_Aspect_RectangularGrid.hxx>
#endif
#ifndef _Quantity_Length_HeaderFile
#include <Quantity_Length.hxx>
#endif
#ifndef _Quantity_PlaneAngle_HeaderFile
#include <Quantity_PlaneAngle.hxx>
#endif
#ifndef _Standard_Real_HeaderFile
#include <Standard_Real.hxx>
#endif
#ifndef _Aspect_Grid_HeaderFile
#include <Aspect_Grid.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
class Standard_NegativeValue;
class Standard_NullValue;
class Standard_NumericError;
class Aspect_RectangularGrid : public Aspect_Grid {
public:
//! creates a new grid. By default this grid is not <br>
//! active. <br>
//! The first angle is given relatively to the horizontal. <br>
//! The second angle is given relatively to the vertical. <br>
Standard_EXPORT Aspect_RectangularGrid(const Quantity_Length aXStep,const Quantity_Length aYStep,const Quantity_Length anXOrigin = 0,const Quantity_Length anYOrigin = 0,const Quantity_PlaneAngle aFirstAngle = 0,const Quantity_PlaneAngle aSecondAngle = 0,const Quantity_PlaneAngle aRotationAngle = 0);
//! defines the x step of the grid. <br>
Standard_EXPORT void SetXStep(const Quantity_Length aStep) ;
//! defines the y step of the grid. <br>
Standard_EXPORT void SetYStep(const Quantity_Length aStep) ;
//! defines the angle of the second network <br>
//! the fist angle is given relatively to the horizontal. <br>
//! the second angle is given relatively to the vertical. <br>
Standard_EXPORT void SetAngle(const Quantity_PlaneAngle anAngle1,const Quantity_PlaneAngle anAngle2) ;
Standard_EXPORT void SetGridValues(const Quantity_Length XOrigin,const Quantity_Length YOrigin,const Quantity_Length XStep,const Quantity_Length YStep,const Quantity_PlaneAngle RotationAngle) ;
//! returns the point of the grid the closest to the point X,Y <br>
Standard_EXPORT void Compute(const Quantity_Length X,const Quantity_Length Y,Quantity_Length& gridX,Quantity_Length& gridY) const;
//! returns the x step of the grid. <br>
Standard_EXPORT Quantity_Length XStep() const;
//! returns the x step of the grid. <br>
Standard_EXPORT Quantity_Length YStep() const;
//! returns the x Angle of the grid, relatively to the horizontal. <br>
Standard_EXPORT Quantity_PlaneAngle FirstAngle() const;
//! returns the y Angle of the grid, relatively to the vertical. <br>
Standard_EXPORT Quantity_PlaneAngle SecondAngle() const;
Standard_EXPORT void Init() ;
DEFINE_STANDARD_RTTI(Aspect_RectangularGrid)
protected:
private:
Standard_EXPORT Standard_Boolean CheckAngle(const Quantity_PlaneAngle alpha,const Quantity_PlaneAngle beta) const;
Quantity_Length myXStep;
Quantity_Length myYStep;
Quantity_PlaneAngle myFirstAngle;
Quantity_PlaneAngle mySecondAngle;
Standard_Real a1;
Standard_Real b1;
Standard_Real c1;
Standard_Real a2;
Standard_Real b2;
Standard_Real c2;
};
// other Inline functions and methods (like "C++: function call" methods)
#endif
|