1 -- Created on: 1993-07-06
2 -- Created by: Remi LEQUETTE
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
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.
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.
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.
24 class MakeEdge from BRepLib inherits MakeShape from BRepLib
26 ---Purpose: Provides methods to build edges.
28 -- The methods have the following syntax, where
29 -- TheCurve is one of Lin, Circ, ...
31 -- Create(C : TheCurve)
33 -- Makes an edge on the whole curve. Add vertices
36 -- Create(C : TheCurve; p1,p2 : Real)
38 -- Make an edge on the curve between parameters p1
39 -- and p2. if p2 < p1 the edge will be REVERSED. If
40 -- p1 or p2 is infinite the curve will be open in
41 -- that direction. Vertices are created for finite
42 -- values of p1 and p2.
44 -- Create(C : TheCurve; P1, P2 : Pnt from gp)
46 -- Make an edge on the curve between the points P1
47 -- and P2. The points are projected on the curve
48 -- and the previous method is used. An error is
49 -- raised if the points are not on the curve.
51 -- Create(C : TheCurve; V1, V2 : Vertex from TopoDS)
53 -- Make an edge on the curve between the vertices
54 -- V1 and V2. Same as the previous but no vertices
55 -- are created. If a vertex is Null the curve will
56 -- be open in this direction.
59 EdgeError from BRepLib,
77 Create returns MakeEdge from BRepLib;
79 ----------------------------------------
81 ----------------------------------------
83 Create(V1, V2 : Vertex from TopoDS)
85 returns MakeEdge from BRepLib;
87 Create(P1, P2 : Pnt from gp)
89 returns MakeEdge from BRepLib;
92 ----------------------------------------
94 ----------------------------------------
96 Create(L : Lin from gp)
98 returns MakeEdge from BRepLib;
100 Create(L : Lin from gp; p1,p2 : Real)
102 returns MakeEdge from BRepLib;
104 Create(L : Lin from gp; P1,P2 : Pnt from gp)
106 returns MakeEdge from BRepLib;
108 Create(L : Lin from gp; V1, V2 : Vertex from TopoDS)
110 returns MakeEdge from BRepLib;
112 ----------------------------------------
114 ----------------------------------------
116 Create(L : Circ from gp)
118 returns MakeEdge from BRepLib;
120 Create(L : Circ from gp; p1,p2 : Real)
122 returns MakeEdge from BRepLib;
124 Create(L : Circ from gp; P1,P2 : Pnt from gp)
126 returns MakeEdge from BRepLib;
128 Create(L : Circ from gp; V1, V2 : Vertex from TopoDS)
130 returns MakeEdge from BRepLib;
133 ----------------------------------------
135 ----------------------------------------
137 Create(L : Elips from gp)
139 returns MakeEdge from BRepLib;
141 Create(L : Elips from gp; p1,p2 : Real)
143 returns MakeEdge from BRepLib;
145 Create(L : Elips from gp; P1,P2 : Pnt from gp)
147 returns MakeEdge from BRepLib;
149 Create(L : Elips from gp; V1, V2 : Vertex from TopoDS)
151 returns MakeEdge from BRepLib;
153 ----------------------------------------
155 ----------------------------------------
157 Create(L : Hypr from gp)
159 returns MakeEdge from BRepLib;
161 Create(L : Hypr from gp; p1,p2 : Real)
163 returns MakeEdge from BRepLib;
165 Create(L : Hypr from gp; P1,P2 : Pnt from gp)
167 returns MakeEdge from BRepLib;
169 Create(L : Hypr from gp; V1, V2 : Vertex from TopoDS)
171 returns MakeEdge from BRepLib;
173 ----------------------------------------
175 ----------------------------------------
177 Create(L : Parab from gp)
179 returns MakeEdge from BRepLib;
181 Create(L : Parab from gp; p1,p2 : Real)
183 returns MakeEdge from BRepLib;
185 Create(L : Parab from gp; P1,P2 : Pnt from gp)
187 returns MakeEdge from BRepLib;
189 Create(L : Parab from gp; V1, V2 : Vertex from TopoDS)
191 returns MakeEdge from BRepLib;
193 ----------------------------------------
195 ----------------------------------------
197 Create(L : Curve from Geom)
199 returns MakeEdge from BRepLib;
201 Create(L : Curve from Geom; p1,p2 : Real)
203 returns MakeEdge from BRepLib;
205 Create(L : Curve from Geom;
208 returns MakeEdge from BRepLib;
210 Create(L : Curve from Geom;
211 V1, V2 : Vertex from TopoDS)
213 returns MakeEdge from BRepLib;
215 Create(L : Curve from Geom;
216 P1,P2 : Pnt from gp; p1,p2 : Real)
218 returns MakeEdge from BRepLib;
220 Create(L : Curve from Geom;
221 V1, V2 : Vertex from TopoDS;
224 returns MakeEdge from BRepLib;
226 ----------------------------------------
228 ----------------------------------------
230 Create(L : Curve from Geom2d; S : Surface from Geom)
232 returns MakeEdge from BRepLib;
234 Create(L : Curve from Geom2d; S : Surface from Geom; p1,p2 : Real)
236 returns MakeEdge from BRepLib;
238 Create(L : Curve from Geom2d; S : Surface from Geom;
241 returns MakeEdge from BRepLib;
243 Create(L : Curve from Geom2d; S : Surface from Geom;
244 V1, V2 : Vertex from TopoDS)
246 returns MakeEdge from BRepLib;
248 Create(L : Curve from Geom2d; S : Surface from Geom;
249 P1,P2 : Pnt from gp; p1,p2 : Real)
251 returns MakeEdge from BRepLib;
253 Create(L : Curve from Geom2d; S : Surface from Geom;
254 V1, V2 : Vertex from TopoDS;
257 returns MakeEdge from BRepLib;
259 ----------------------------------------
261 ----------------------------------------
263 Init(me : in out; C : Curve from Geom)
267 Init(me : in out; C : Curve from Geom;
272 Init(me : in out; C : Curve from Geom;
273 P1, P2 : Pnt from gp)
277 Init(me : in out; C : Curve from Geom;
278 V1, V2 : Vertex from TopoDS)
282 Init(me : in out; C : Curve from Geom;
283 P1, P2 : Pnt from gp;
288 Init(me : in out; C : Curve from Geom;
289 V1, V2 : Vertex from TopoDS;
294 Init(me : in out; C : Curve from Geom2d; S : Surface from Geom)
298 Init(me : in out; C : Curve from Geom2d; S : Surface from Geom;
303 Init(me : in out; C : Curve from Geom2d; S : Surface from Geom;
304 P1, P2 : Pnt from gp)
308 Init(me : in out; C : Curve from Geom2d; S : Surface from Geom;
309 V1, V2 : Vertex from TopoDS)
313 Init(me : in out; C : Curve from Geom2d; S : Surface from Geom;
314 P1, P2 : Pnt from gp;
319 Init(me : in out; C : Curve from Geom2d; S : Surface from Geom;
320 V1, V2 : Vertex from TopoDS;
326 ----------------------------------------
328 ----------------------------------------
330 Error(me) returns EdgeError from BRepLib
331 ---Purpose: Returns the error description when NotDone.
335 Edge(me) returns Edge from TopoDS
336 ---C++: return const &
337 ---C++: alias "Standard_EXPORT operator TopoDS_Edge() const;"
343 Vertex1(me) returns Vertex from TopoDS
344 ---Purpose: Returns the first vertex of the edge. May be Null.
346 ---C++: return const &
350 Vertex2(me) returns Vertex from TopoDS
351 ---Purpose: Returns the second vertex of the edge. May be Null.
353 ---C++: return const &
359 myError : EdgeError from BRepLib;
360 myVertex1 : Vertex from TopoDS;
361 myVertex2 : Vertex from TopoDS;