0025243: BRepFeat_SplitShape algorithm processes incorrect faces with degenerated...
[occt.git] / src / LocOpe / LocOpe.cdl
1 -- Created on: 1995-04-25
2 -- Created by: Jacques GOUSSARD
3 -- Copyright (c) 1995-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
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
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.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 package LocOpe
18
19         ---Purpose: Provides  tools to implement local     topological
20         --          operations on a shape.
21
22 uses MMgt,
23      StdFail,
24      TCollection,
25      TColStd,
26      gp, 
27      Geom,
28      TColGeom,
29      TColgp,
30
31      TopAbs,
32      TopoDS,
33      TopExp,
34      TopTools,
35      BRepFill,
36      BRepSweep, 
37      TopOpeBRepDS
38 --     TopOpeBRepBuild
39
40 is 
41
42     class SplitShape;
43
44     --deferred class ProjectedWires;      -- inherits TShared from MMgt
45     
46     class WiresOnShape;                 -- inherits ProjectedWires from LocOpe
47
48
49     class Spliter;
50
51     class Generator;
52
53     deferred class GeneratedShape;      -- inherits TShared from MMgt
54     
55     class GluedShape;                   -- inherits GeneratedShape from LocOpe
56     class Prism;
57     class Revol;
58
59     class Pipe;
60
61     class DPrism;
62
63     class LinearForm;
64
65     class RevolutionForm;
66
67     class Gluer;
68
69     class FindEdges;
70
71     class FindEdgesInFace;
72
73     class DataMapOfShapePnt instantiates DataMap from TCollection
74             (Shape          from TopoDS,
75          Pnt            from gp,
76          ShapeMapHasher from TopTools);
77
78     class PntFace;
79     
80     class CurveShapeIntersector;
81     
82     class CSIntersector;
83     
84
85     class BuildShape;
86
87     class SplitDrafts;
88
89
90     class SequenceOfPntFace instantiates Sequence from TCollection
91             (PntFace from LocOpe);
92
93     class SequenceOfLin instantiates Sequence from TCollection
94             (Lin from gp);
95
96     class SequenceOfCirc instantiates Sequence from TCollection
97             (Circ from gp);
98
99     private class HBuilder;    -- inherits HBuilder from TopOpeBRepBuild
100
101     private class BuildWires;   -- used in LocOpe_Spliter
102
103     enumeration Operation is
104             FUSE,
105         CUT,
106         INVALID
107     end Operation;
108
109
110     Closed(W: Wire from TopoDS; OnF: Face from TopoDS)
111         ---Purpose: Returns Standard_True  when the wire <W> is closed
112         --          on the face <OnF>.
113             returns Boolean from Standard;
114     
115
116     Closed(E: Edge from TopoDS; OnF: Face from TopoDS)
117         ---Purpose: Returns Standard_True  when the edge <E> is closed
118         --          on the face <OnF>.
119             returns Boolean from Standard;
120
121     TgtFaces(E : Edge from TopoDS; 
122                  F1: Face from TopoDS;
123                  F2: Face from TopoDS)
124         ---Purpose: Returns Standard_True  when the faces are tangent
125             returns Boolean from Standard;
126
127
128     
129 --    IsInside(F1: Face from TopoDS; F2: Face from TopoDS)
130 --         ---Purpose: Returns Standard_True when  the face F1 is in  the
131 --         --          F2 .
132 --            returns Boolean from Standard;
133    
134
135     SampleEdges(S : Shape from TopoDS;
136                     Pt: in out SequenceOfPnt from TColgp);
137
138
139 end LocOpe;
140
141
142
143
144