1 -- Created on: 1993-09-30
2 -- Created by: Isabelle GRIGNON
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.
22 class ShapeTool from BRepMesh
26 uses Shape from TopoDS,
34 Curve from BRepAdaptor,
35 Orientation from TopAbs,
36 Triangulation from Poly,
37 HArray1OfInteger from TColStd
39 raises NoSuchObject from Standard
42 Create returns ShapeTool ;
44 Init(me : in out ; S : Shape from TopoDS)
48 MoreFace(me: in out ) returns Boolean from Standard
56 CurrentFace( me : in out) returns Face from TopoDS
61 Init(me : in out ; F: Face from TopoDS)
65 MoreEdge(me: in out ) returns Boolean from Standard
73 CurrentEdge(me : in out)
74 ---C++: return const &
76 returns Edge from TopoDS
79 Init(me : in out ; E : Edge from TopoDS)
83 MoreInternalVertex(me: in out ) returns Boolean from Standard
87 NextInternalVertex(me : in out)
91 CurrentInternalVertex( me : in out) returns Vertex from TopoDS
92 ---C++: return const &
96 Orientation(myclass; F :Face from TopoDS )
98 returns Orientation from TopAbs;
100 Orientation(myclass; E : Edge from TopoDS )
102 returns Orientation from TopAbs;
104 Bound(myclass; F :Face from TopoDS )
105 returns Box from Bnd;
107 Bound(myclass; E : Edge from TopoDS )
108 returns Box from Bnd;
110 FirstVertex(myclass; E : Edge from TopoDS )
111 returns Vertex from TopoDS
113 --if there is not first vertex (semi-infinite edge)
115 LastVertex(myclass; E : Edge from TopoDS)
116 returns Vertex from TopoDS
118 --if there is not last vertex (semi-infinite edge)
120 Vertices(myclass; E : Edge from TopoDS;
121 Vfirst, Vlast : out Vertex from TopoDS);
122 ---Purpose: If there is not First or Last vertex (infinite or
123 -- semi-infinite edge) return null shapes.
125 Range(myclass; E : Edge from TopoDS;
126 F : Face from TopoDS;
127 wFirst, wLast : in out Real from Standard);
130 UVPoints(myclass; E : Edge from TopoDS;
131 F : Face from TopoDS;
132 uvFirst, uvLast : out Pnt2d from gp);
135 Degenerated(myclass; E : Edge from TopoDS)
137 returns Boolean from Standard;
139 Tolerance(myclass; V : Vertex from TopoDS)
141 returns Real from Standard;
143 Parameter(myclass; V : Vertex from TopoDS;
144 E : Edge from TopoDS;
145 F : Face from TopoDS) returns Real from Standard;
149 E : Edge from TopoDS;
150 F : Face from TopoDS;
155 C : Curve from BRepAdaptor;
156 W : in Real; WFound : in out Real;
160 Pnt(myclass; V : Vertex from TopoDS)
166 F : Face from TopoDS;
167 T : in out Triangulation from Poly);
174 theFIterator : Explorer from TopExp;
175 theEIterator : Explorer from TopExp;
176 theVIterator : Explorer from TopExp;