b311480e |
1 | -- Created on: 1995-05-04 |
2 | -- Created by: Laurent BOURESCHE |
3 | -- Copyright (c) 1995-1999 Matra Datavision |
4 | -- Copyright (c) 1999-2012 OPEN CASCADE SAS |
5 | -- |
6 | -- The content of this file is subject to the Open CASCADE Technology Public |
7 | -- License Version 6.5 (the "License"). You may not use the content of this file |
8 | -- except in compliance with the License. Please obtain a copy of the License |
9 | -- at http://www.opencascade.org and read it completely before using this file. |
10 | -- |
11 | -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its |
12 | -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France. |
13 | -- |
14 | -- The Original Code and all software distributed under the License is |
15 | -- distributed on an "AS IS" basis, without warranty of any kind, and the |
16 | -- Initial Developer hereby disclaims all such warranties, including without |
17 | -- limitation, any warranties of merchantability, fitness for a particular |
18 | -- purpose or non-infringement. Please see the License for the specific terms |
19 | -- and conditions governing the rights and limitations under the License. |
20 | |
7fd59977 |
21 | |
22 | |
23 | class ElSpine from ChFiDS inherits Curve from Adaptor3d |
24 | |
25 | ---Purpose: Elementary Spine for cheminements and approximations. |
26 | |
27 | uses |
28 | Pnt from gp, |
29 | Vec from gp, |
30 | Lin from gp, |
31 | Circ from gp, |
32 | Elips from gp, |
33 | Hypr from gp, |
34 | Parab from gp, |
35 | BezierCurve from Geom, |
36 | BSplineCurve from Geom, |
37 | Array1OfReal from TColStd, |
38 | SurfData from ChFiDS, |
39 | Shape from GeomAbs, |
40 | CurveType from GeomAbs, |
41 | HCurve from Adaptor3d, |
42 | Curve from Geom, |
43 | Curve from GeomAdaptor |
44 | |
45 | raises |
46 | OutOfRange from Standard, |
47 | NoSuchObject from Standard, |
48 | DomainError from Standard |
49 | is |
50 | |
51 | Create returns ElSpine from ChFiDS; |
52 | |
53 | FirstParameter(me) returns Real from Standard |
54 | is redefined; |
55 | |
56 | LastParameter(me) returns Real from Standard |
57 | is redefined; |
58 | |
59 | Continuity(me) returns Shape from GeomAbs |
60 | is redefined static; |
61 | |
62 | NbIntervals(me: in out; S : Shape from GeomAbs) |
63 | returns Integer is redefined static; |
64 | |
65 | Intervals(me: in out; |
66 | T : in out Array1OfReal from TColStd; |
67 | S : Shape from GeomAbs) |
68 | is redefined static; |
69 | |
70 | Trim(me; First, Last, Tol : Real) returns HCurve from Adaptor3d |
71 | ---Purpose: Returns a curve equivalent of <me> between |
72 | -- parameters <First> and <Last>. <Tol> is used to |
73 | -- test for 3d points confusion. |
74 | is redefined; |
75 | |
76 | Resolution(me; R3d : Real) returns Real |
77 | is redefined; |
78 | |
79 | GetType(me) returns CurveType from GeomAbs |
80 | is redefined; |
81 | |
82 | IsPeriodic(me) returns Boolean |
83 | is redefined; |
84 | |
85 | SetPeriodic(me : in out ; I : Boolean from Standard) is static; |
86 | |
87 | Period(me) returns Real |
88 | is redefined; |
89 | |
90 | Value(me ; AbsC : Real ) returns Pnt from gp |
91 | is redefined; |
92 | |
93 | D0(me ; AbsC : Real ; P : out Pnt from gp) |
94 | is redefined; |
95 | |
96 | D1(me ; AbsC : Real ; P : out Pnt from gp; V1 : out Vec from gp) |
97 | is redefined; |
98 | |
99 | D2(me ; AbsC : Real ; P : out Pnt from gp; |
100 | V1,V2 : out Vec from gp) |
101 | is redefined; |
102 | |
103 | D3(me ; AbsC : Real ; P : out Pnt from gp; |
104 | V1,V2, V3 : out Vec from gp) |
105 | is redefined; |
106 | |
107 | FirstParameter(me : in out; P : Real from Standard); |
108 | |
109 | LastParameter(me : in out; P : Real from Standard); |
110 | |
111 | SetOrigin(me : in out; O : Real from Standard); |
112 | |
113 | FirstPointAndTgt(me; P : out Pnt from gp; T : out Vec from gp); |
114 | |
115 | LastPointAndTgt(me; P : out Pnt from gp; T : out Vec from gp); |
116 | |
117 | SetFirstPointAndTgt(me : in out; P : Pnt from gp; T : Vec from gp); |
118 | |
119 | SetLastPointAndTgt(me : in out; P : Pnt from gp; T : Vec from gp); |
120 | |
121 | SetCurve(me : in out; C : Curve from Geom); |
122 | |
123 | Previous(me) returns mutable SurfData from ChFiDS; |
124 | ---C++: return const & |
125 | |
126 | ChangePrevious(me : in out) returns any SurfData from ChFiDS; |
127 | ---C++: return & |
128 | |
129 | Next(me) returns mutable SurfData from ChFiDS; |
130 | ---C++: return const & |
131 | |
132 | ChangeNext(me : in out) returns any SurfData from ChFiDS; |
133 | ---C++: return & |
134 | |
135 | Line(me) returns Lin from gp |
136 | raises |
137 | NoSuchObject from Standard |
138 | is redefined static; |
139 | |
140 | Circle(me) returns Circ from gp |
141 | raises |
142 | NoSuchObject from Standard |
143 | is redefined static; |
144 | |
145 | Ellipse(me) returns Elips from gp |
146 | raises |
147 | NoSuchObject from Standard |
148 | is redefined static; |
149 | |
150 | Hyperbola(me) returns Hypr from gp |
151 | raises |
152 | NoSuchObject from Standard |
153 | is redefined static; |
154 | |
155 | Parabola(me) returns Parab from gp |
156 | raises |
157 | NoSuchObject from Standard |
158 | is redefined static; |
159 | |
160 | |
161 | Bezier(me) returns BezierCurve from Geom |
162 | raises |
163 | NoSuchObject from Standard |
164 | is redefined static; |
165 | --Purpose: Warning : This will NOT make a copy of the |
166 | -- Bezier Curve : If you want to modify |
167 | -- the Curve please make a copy yourself |
168 | -- Also it will NOT trim the surface to |
169 | -- myFirst/Last. |
170 | |
171 | BSpline(me) returns BSplineCurve from Geom |
172 | raises |
173 | NoSuchObject from Standard |
174 | is redefined static; |
175 | -- Purpose : Warning : This will NOT make a copy of the |
176 | -- BSpline Curve : If you want to modify |
177 | -- the Curve please make a copy yourself |
178 | -- Also it will NOT trim the surface to |
179 | -- myFirst/Last. |
180 | fields |
181 | |
182 | curve : Curve from GeomAdaptor; |
183 | |
184 | ptfirst : Pnt from gp; |
185 | ptlast : Pnt from gp; |
186 | tgfirst : Vec from gp; |
187 | tglast : Vec from gp; |
188 | |
189 | previous : SurfData from ChFiDS; |
190 | next : SurfData from ChFiDS; |
191 | |
192 | pfirst : Real from Standard; |
193 | plast : Real from Standard; |
194 | period : Real from Standard; |
195 | periodic : Boolean from Standard; |
196 | |
197 | |
198 | end ElSpine; |