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
146
147
148
149
150
151
152
153
154
155
156
157
158
|
// 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 _Extrema_CurveTool_HeaderFile
#define _Extrema_CurveTool_HeaderFile
#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif
#ifndef _Standard_Real_HeaderFile
#include <Standard_Real.hxx>
#endif
#ifndef _GeomAbs_Shape_HeaderFile
#include <GeomAbs_Shape.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _GeomAbs_CurveType_HeaderFile
#include <GeomAbs_CurveType.hxx>
#endif
#ifndef _gp_Pnt_HeaderFile
#include <gp_Pnt.hxx>
#endif
#ifndef _gp_Lin_HeaderFile
#include <gp_Lin.hxx>
#endif
#ifndef _gp_Circ_HeaderFile
#include <gp_Circ.hxx>
#endif
#ifndef _gp_Elips_HeaderFile
#include <gp_Elips.hxx>
#endif
#ifndef _gp_Hypr_HeaderFile
#include <gp_Hypr.hxx>
#endif
#ifndef _gp_Parab_HeaderFile
#include <gp_Parab.hxx>
#endif
#ifndef _Handle_Geom_BezierCurve_HeaderFile
#include <Handle_Geom_BezierCurve.hxx>
#endif
#ifndef _Handle_Geom_BSplineCurve_HeaderFile
#include <Handle_Geom_BSplineCurve.hxx>
#endif
class Adaptor3d_Curve;
class TColStd_Array1OfReal;
class gp_Pnt;
class gp_Vec;
class Geom_BezierCurve;
class Geom_BSplineCurve;
class Extrema_CurveTool {
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);
}
static Standard_Real FirstParameter(const Adaptor3d_Curve& C) ;
static Standard_Real LastParameter(const Adaptor3d_Curve& C) ;
static GeomAbs_Shape Continuity(const Adaptor3d_Curve& C) ;
//! Returns the number of intervals for continuity <br>
//! <S>. May be one if Continuity(me) >= <S> <br>
static Standard_Integer NbIntervals(Adaptor3d_Curve& C,const GeomAbs_Shape S) ;
//! Stores in <T> the parameters bounding the intervals <br>
//! of continuity <S>. <br>
//! <br>
//! The array must provide enough room to accomodate <br>
//! for the parameters. i.e. T.Length() > NbIntervals() <br>
static void Intervals(Adaptor3d_Curve& C,TColStd_Array1OfReal& T,const GeomAbs_Shape S) ;
Standard_EXPORT static Standard_Boolean IsPeriodic(const Adaptor3d_Curve& C) ;
static Standard_Real Period(const Adaptor3d_Curve& C) ;
static Standard_Real Resolution(const Adaptor3d_Curve& C,const Standard_Real R3d) ;
static GeomAbs_CurveType GetType(const Adaptor3d_Curve& C) ;
static gp_Pnt Value(const Adaptor3d_Curve& C,const Standard_Real U) ;
static void D1(const Adaptor3d_Curve& C,const Standard_Real U,gp_Pnt& P,gp_Vec& V) ;
static void D2(const Adaptor3d_Curve& C,const Standard_Real U,gp_Pnt& P,gp_Vec& V1,gp_Vec& V2) ;
static gp_Lin Line(const Adaptor3d_Curve& C) ;
static gp_Circ Circle(const Adaptor3d_Curve& C) ;
static gp_Elips Ellipse(const Adaptor3d_Curve& C) ;
static gp_Hypr Hyperbola(const Adaptor3d_Curve& C) ;
static gp_Parab Parabola(const Adaptor3d_Curve& C) ;
static Standard_Integer Degree(const Adaptor3d_Curve& C) ;
static Standard_Boolean IsRational(const Adaptor3d_Curve& C) ;
static Standard_Integer NbPoles(const Adaptor3d_Curve& C) ;
static Standard_Integer NbKnots(const Adaptor3d_Curve& C) ;
static Handle_Geom_BezierCurve Bezier(const Adaptor3d_Curve& C) ;
static Handle_Geom_BSplineCurve BSpline(const Adaptor3d_Curve& C) ;
protected:
private:
};
#include <Extrema_CurveTool.lxx>
// other Inline functions and methods (like "C++: function call" methods)
#endif
|