summaryrefslogtreecommitdiff
path: root/inc/StdPrs_DeflectionCurve.hxx
blob: 08835964b78d5cd8ca558ffc12e7995581ca0d3a (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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
// 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 _StdPrs_DeflectionCurve_HeaderFile
#define _StdPrs_DeflectionCurve_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

#ifndef _Prs3d_Root_HeaderFile
#include <Prs3d_Root.hxx>
#endif
#ifndef _Handle_Prs3d_Presentation_HeaderFile
#include <Handle_Prs3d_Presentation.hxx>
#endif
#ifndef _Handle_Prs3d_Drawer_HeaderFile
#include <Handle_Prs3d_Drawer.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _Standard_Real_HeaderFile
#include <Standard_Real.hxx>
#endif
#ifndef _Quantity_Length_HeaderFile
#include <Quantity_Length.hxx>
#endif
class Prs3d_Presentation;
class Adaptor3d_Curve;
class Prs3d_Drawer;
class TColgp_SequenceOfPnt;


//! A framework to provide display of any curve with <br>
//! respect to the maximal chordal deviation defined in <br>
//! the Prs3d_Drawer attributes manager. <br>
class StdPrs_DeflectionCurve  : public Prs3d_Root {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  //! adds to the presentation aPresentation the drawing of the curve <br>
//!          aCurve with respect to the maximal chordial deviation defined <br>
//!          by the drawer aDrawer. <br>
//!          The aspect is defined by LineAspect in aDrawer. <br>
//!          If drawCurve equals Standard_False the curve will not be displayed, <br>
//!          it is used if the curve is a part of some shape and PrimitiveArray <br>
//!          visualization approach is activated (it is activated by default). <br>
  Standard_EXPORT   static  void Add(const Handle(Prs3d_Presentation)& aPresentation,Adaptor3d_Curve& aCurve,const Handle(Prs3d_Drawer)& aDrawer,const Standard_Boolean drawCurve = Standard_True) ;
  //! adds to the presentation aPresentation the drawing of the curve <br>
//!          aCurve with respect to the maximal chordial deviation defined <br>
//!          by the drawer aDrawer. <br>
//!          The aspect is defined by LineAspect in aDrawer. <br>
//!          The drawing will be limited between the points of parameter U1 and U2. <br>
//!          If drawCurve equals Standard_False the curve will not be displayed, <br>
//!          it is used if the curve is a part of some shape and PrimitiveArray <br>
//!          visualization approach is activated (it is activated by default). <br>
  Standard_EXPORT   static  void Add(const Handle(Prs3d_Presentation)& aPresentation,Adaptor3d_Curve& aCurve,const Standard_Real U1,const Standard_Real U2,const Handle(Prs3d_Drawer)& aDrawer,const Standard_Boolean drawCurve = Standard_True) ;
  //! adds to the presentation aPresentation the drawing of the curve <br>
//!          aCurve with respect to the maximal chordial deviation aDeflection. <br>
//!          The aspect is the current aspect <br>
//!          If drawCurve equals Standard_False the curve will not be displayed, <br>
//!          it is used if the curve is a part of some shape and PrimitiveArray <br>
//!          visualization approach is activated (it is activated by default). <br>
  Standard_EXPORT   static  void Add(const Handle(Prs3d_Presentation)& aPresentation,Adaptor3d_Curve& aCurve,const Standard_Real aDeflection,const Standard_Real aLimit,const Standard_Real anAngle = 0.2,const Standard_Boolean drawCurve = Standard_True) ;
  //! adds to the presentation aPresentation the drawing of the curve <br>
//!          aCurve with respect to the maximal chordial deviation aDeflection. <br>
//!          The aspect is the current aspect <br>
//!          Points give a sequence of curve points. <br>
//!          If drawCurve equals Standard_False the curve will not be displayed, <br>
//!          it is used if the curve is a part of some shape and PrimitiveArray <br>
//!          visualization approach is activated (it is activated by default). <br>
  Standard_EXPORT   static  void Add(const Handle(Prs3d_Presentation)& aPresentation,Adaptor3d_Curve& aCurve,const Standard_Real aDeflection,const Handle(Prs3d_Drawer)& aDrawer,TColgp_SequenceOfPnt& Points,const Standard_Boolean drawCurve = Standard_True) ;
  //! adds to the presentation aPresentation the drawing of the curve <br>
//!          aCurve with respect to the maximal chordial deviation aDeflection. <br>
//!          The aspect is the current aspect <br>
//!          The drawing will be limited between the points of parameter U1 and U2. <br>
//!          Points give a sequence of curve points. <br>
//!          If drawCurve equals Standard_False the curve will not be displayed, <br>
//!          it is used if the curve is a part of some shape and PrimitiveArray <br>
//!          visualization approach is activated (it is activated by default). <br>
  Standard_EXPORT   static  void Add(const Handle(Prs3d_Presentation)& aPresentation,Adaptor3d_Curve& aCurve,const Standard_Real U1,const Standard_Real U2,const Standard_Real aDeflection,TColgp_SequenceOfPnt& Points,const Standard_Real anAngle = 0.2,const Standard_Boolean drawCurve = Standard_True) ;
  //! returns true if the distance between the point (X,Y,Z) and the <br>
//!          drawing of the curve aCurve with respect of the maximal <br>
//!          chordial deviation defined by the drawer aDrawer is less then aDistance. <br>
  Standard_EXPORT   static  Standard_Boolean Match(const Quantity_Length X,const Quantity_Length Y,const Quantity_Length Z,const Quantity_Length aDistance,const Adaptor3d_Curve& aCurve,const Handle(Prs3d_Drawer)& aDrawer) ;
  //! returns true if the distance between the point (X,Y,Z) and the <br>
//!          drawing of the curve aCurve with respect of the maximal <br>
//!          chordial deviation defined by the drawer aDrawer is less <br>
//!          then aDistance. The drawing is considered between the points <br>
//!          of parameter U1 and U2; <br>
  Standard_EXPORT   static  Standard_Boolean Match(const Quantity_Length X,const Quantity_Length Y,const Quantity_Length Z,const Quantity_Length aDistance,const Adaptor3d_Curve& aCurve,const Standard_Real U1,const Standard_Real U2,const Handle(Prs3d_Drawer)& aDrawer) ;
  //! returns true if the distance between the point (X,Y,Z) and the <br>
//!          drawing with respect of the maximal chordial deviation <br>
//!          aDeflection is less then aDistance. <br>
  Standard_EXPORT   static  Standard_Boolean Match(const Quantity_Length X,const Quantity_Length Y,const Quantity_Length Z,const Quantity_Length aDistance,const Adaptor3d_Curve& aCurve,const Standard_Real aDeflection,const Standard_Real aLimit,const Standard_Real anAngle = 0.2) ;
  //! returns true if the distance between the point (X,Y,Z) and the <br>
//!          drawing with respect of the maximal chordial deviation <br>
//!          aDeflection is less then aDistance. The drawing is considered <br>
//!          between the points of parameter U1 and U2; <br>
  Standard_EXPORT   static  Standard_Boolean Match(const Quantity_Length X,const Quantity_Length Y,const Quantity_Length Z,const Quantity_Length aDistance,const Adaptor3d_Curve& aCurve,const Standard_Real U1,const Standard_Real U2,const Standard_Real aDeflection,const Standard_Real anAngle = 0.2) ;





protected:





private:





};





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


#endif