0024023: Revamp the OCCT Handle -- ambiguity
[occt.git] / src / BRepOffset / BRepOffset_Tool.cdl
CommitLineData
b311480e 1-- Created on: 1995-10-23
2-- Created by: Yves FRICAUD
3-- Copyright (c) 1995-1999 Matra Datavision
973c2be1 4-- Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5--
973c2be1 6-- This file is part of Open CASCADE Technology software library.
b311480e 7--
d5f74e42 8-- This library is free software; you can redistribute it and/or modify it under
9-- the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 10-- by the Free Software Foundation, with special exception defined in the file
11-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12-- distribution for complete text of the license and disclaimer of any warranty.
b311480e 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
7fd59977 16
17class Tool from BRepOffset
18
19 ---Purpose:
20
21uses
22 Edge from TopoDS,
23 Face from TopoDS,
24 Wire from TopoDS,
25 Shape from TopoDS,
26 Orientation from TopAbs,
27 MapOfShape from TopTools,
975ec82a 28 IndexedMapOfShape from TopTools,
7fd59977 29 DataMapOfShapeShape from TopTools,
30 DataMapOfShapeListOfShape from TopTools,
31 ListOfShape from TopTools,
32 Vertex from TopoDS,
33 State from TopAbs,
34 Image from BRepAlgo,
35 AsDes from BRepAlgo,
36 Analyse from BRepOffset,
37 Curve from Geom
38
39is
40 EdgeVertices (myclass; E : Edge from TopoDS;
41 V1 : in out Vertex from TopoDS;
42 V2 : in out Vertex from TopoDS);
43 ---Purpose: <V1> is the FirstVertex ,<V2> is the Last Vertex of <Edge>
44 -- taking account the orientation of Edge.
45
46 OriEdgeInFace (myclass; E : Edge from TopoDS;
47 F : Face from TopoDS)
48 ---Purpose: returns the cumul of the orientation of <Edge>
49 -- and thc containing wire in <Face>
50 returns Orientation from TopAbs;
51
52
53
54 OrientSection (myclass; E : Edge from TopoDS;
55 F1,F2 : Face from TopoDS;
56 O1,O2 : in out Orientation from TopAbs);
57 ---Purpose: <E> is a section between <F1> and <F2>. Computes
58 -- <O1> the orientation of <E> in <F1> influenced by <F2>.
59 -- idem for <O2>.
60
61 HasCommonShapes (myclass; F1,F2 : Face from TopoDS;
62 LE : in out ListOfShape from TopTools;
63 LV : in out ListOfShape from TopTools)
64 ---Purpose: Returns True if <F1> and <F2> has common Vertices
65 -- or edges , <LE> contains the common edges. <LV> the
66 -- common vertices.
67 returns Boolean from Standard;
68
69 Inter3D (myclass; F1, F2 : Face from TopoDS;
70 LInt1 : in out ListOfShape from TopTools;
71 LInt2 : in out ListOfShape from TopTools;
72 Side : State from TopAbs;
73 RefEdge : Edge from TopoDS;
74 IsRefEdgeDefined : Boolean from Standard = Standard_False);
75
76 ---Purpose: Computes the Section betwwen <F1> and <F2> the
77 -- edges solution are stored in <LInt1> with the
78 -- orientation on <F1>, the sames edges are stored in
79 -- <Lint2> with the orientation on <F2>.
80
81 TryProject (myclass; F1, F2 : Face from TopoDS;
82 Edges : ListOfShape from TopTools;
83 LInt1 : in out ListOfShape from TopTools;
84 LInt2 : in out ListOfShape from TopTools;
85 Side : State from TopAbs;
86 TolConf: Real from Standard)
87
88 ---Purpose: Find if the edges <Edges> of the face <F2> are on
89 -- the face <F1>.
90 -- Set in <LInt1> <LInt2> the updated edges.
91 -- If all the edges are computed, returns true.
92 --
93 returns Boolean from Standard;
94
95 PipeInter (myclass; F1, F2 : Face from TopoDS;
96 LInt1 : in out ListOfShape from TopTools;
97 LInt2 : in out ListOfShape from TopTools;
98 Side : State from TopAbs);
99
100 Inter2d (myclass; F : Face from TopoDS;
101 E1,E2 : Edge from TopoDS;
102 LV : in out ListOfShape from TopTools;
103 Tol : Real from Standard);
104
105 InterOrExtent (myclass; F1, F2 : Face from TopoDS;
106 LInt1 : in out ListOfShape from TopTools;
107 LInt2 : in out ListOfShape from TopTools;
108 Side : State from TopAbs);
109
110 CheckBounds(myclass; F : Face from TopoDS;
111 Analyse : Analyse from BRepOffset;
112 enlargeU, enlargeVfirst, enlargeVlast : out Boolean from Standard);
113
114 EnLargeFace(myclass; F : Face from TopoDS;
115 NF : in out Face from TopoDS;
116 ChangeGeom : Boolean from Standard;
117 UpDatePCurve : Boolean from Standard = Standard_False;
118 enlargeU : Boolean from Standard = Standard_True;
119 enlargeVfirst : Boolean from Standard = Standard_True;
120 enlargeVlast : Boolean from Standard = Standard_True)
121 ---Purpose: if <ChangeGeom> is TRUE , the surface can be
122 -- changed .
123 -- if <UpdatePCurve> is TRUE, update the pcurves of the
124 -- edges of <F> on the new surface.if the surface has been changed,
125 -- Returns True if The Surface of <NF> has changed.
126 --
127 returns Boolean from Standard;
128
129 ExtentFace (myclass;
130 F : Face from TopoDS;
131 ConstShapes : in out DataMapOfShapeShape from TopTools;
132 ToBuild : in out DataMapOfShapeShape from TopTools;
133 Side : State from TopAbs ;
134 TolConf : Real from Standard;
135 NF : in out Face from TopoDS);
136
137
138 BuildNeighbour (myclass;
139 W : Wire from TopoDS;
140 F : Face from TopoDS;
141 NOnV1 : in out DataMapOfShapeShape from TopTools;
142 NOnV2 : in out DataMapOfShapeShape from TopTools);
143 ---Purpose: Via the wire explorer store in <NOnV1> for
144 -- an Edge <E> of <W> his Edge neighbour on the first
145 -- vertex <V1> of <E>.
146 -- Store in NOnV2 the Neighbour of <E>on the last
147 -- vertex <V2> of <E>.
148
149 MapVertexEdges (myclass;
150 S : Shape from TopoDS;
151 MVE : in out DataMapOfShapeListOfShape from TopTools);
152 ---Purpose: Store in MVE for a vertex <V> in <S> the incident
153 -- edges <E> in <S>.
154 -- An Edge is Store only one Time for a vertex.
155
156
157
158 Deboucle3D (myclass;
159 S : in Shape from TopoDS;
160 Boundary : in MapOfShape from TopTools)
161 ---Purpose: Remove the non valid part of an offsetshape
162 -- 1 - Remove all the free boundary and the faces
163 -- connex to such edges.
164 -- 2 - Remove all the shapes not valid in the result
165 -- (according to the side of offseting)
166 -- in this verion only the first point is implemented.
167 returns Shape from TopoDS;
168
169 CorrectOrientation (myclass ;
170 SI : in Shape from TopoDS;
975ec82a 171 NewEdges : in IndexedMapOfShape from TopTools;
7fd59977 172 AsDes : in out AsDes from BRepAlgo;
173 InitOffset : in out Image from BRepAlgo;
174 Offset : in Real from Standard);
175
176 Gabarit(myclass ;
177 aCurve : Curve from Geom)
178 returns Real from Standard;
179
180end Tool;