summaryrefslogtreecommitdiff
path: root/inc/Geom2dLProp_CLProps2d.hxx
blob: eb623689f2a069d4fce72bdb9e7d5454b7612332 (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
// 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 _Geom2dLProp_CLProps2d_HeaderFile
#define _Geom2dLProp_CLProps2d_HeaderFile

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

#ifndef _Handle_Geom2d_Curve_HeaderFile
#include <Handle_Geom2d_Curve.hxx>
#endif
#ifndef _Standard_Real_HeaderFile
#include <Standard_Real.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _gp_Pnt2d_HeaderFile
#include <gp_Pnt2d.hxx>
#endif
#ifndef _gp_Vec2d_HeaderFile
#include <gp_Vec2d.hxx>
#endif
#ifndef _gp_Dir2d_HeaderFile
#include <gp_Dir2d.hxx>
#endif
#ifndef _LProp_Status_HeaderFile
#include <LProp_Status.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
class Geom2d_Curve;
class LProp_BadContinuity;
class Standard_DomainError;
class Standard_OutOfRange;
class LProp_NotDefined;
class gp_Vec2d;
class gp_Pnt2d;
class gp_Dir2d;
class Geom2dLProp_Curve2dTool;



class Geom2dLProp_CLProps2d  {
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); 
  }

  
  Standard_EXPORT   Geom2dLProp_CLProps2d(const Handle(Geom2d_Curve)& C,const Standard_Integer N,const Standard_Real Resolution);
  
  Standard_EXPORT   Geom2dLProp_CLProps2d(const Handle(Geom2d_Curve)& C,const Standard_Real U,const Standard_Integer N,const Standard_Real Resolution);
  
  Standard_EXPORT   Geom2dLProp_CLProps2d(const Standard_Integer N,const Standard_Real Resolution);
  
  Standard_EXPORT     void SetParameter(const Standard_Real U) ;
  
  Standard_EXPORT     void SetCurve(const Handle(Geom2d_Curve)& C) ;
  
  Standard_EXPORT    const gp_Pnt2d& Value() const;
  
  Standard_EXPORT    const gp_Vec2d& D1() ;
  
  Standard_EXPORT    const gp_Vec2d& D2() ;
  
  Standard_EXPORT    const gp_Vec2d& D3() ;
  
  Standard_EXPORT     Standard_Boolean IsTangentDefined() ;
  
  Standard_EXPORT     void Tangent(gp_Dir2d& D) ;
  
  Standard_EXPORT     Standard_Real Curvature() ;
  
  Standard_EXPORT     void Normal(gp_Dir2d& N) ;
  
  Standard_EXPORT     void CentreOfCurvature(gp_Pnt2d& P) ;





protected:





private:



Handle_Geom2d_Curve myCurve;
Standard_Real u;
Standard_Integer level;
Standard_Real cn;
Standard_Real linTol;
gp_Pnt2d pnt;
gp_Vec2d d[3];
gp_Dir2d tangent;
Standard_Real curvature;
LProp_Status tangentStatus;
Standard_Integer significantFirstDerivativeOrder;


};





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


#endif