0025354: Intersection operation
[occt.git] / src / QANewModTopOpe / QANewModTopOpe_Tools.cdl
1 -- Created on: 2003-05-06
2 -- Created by: Michael KLOKOV
3 -- Copyright (c) 2003-2014 OPEN CASCADE SAS
4 --
5 -- This file is part of Open CASCADE Technology software library.
6 --
7 -- This library is free software; you can redistribute it and/or modify it under
8 -- the terms of the GNU Lesser General Public License version 2.1 as published
9 -- by the Free Software Foundation, with special exception defined in the file
10 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11 -- distribution for complete text of the license and disclaimer of any warranty.
12 --
13 -- Alternatively, this file may be used under the terms of Open CASCADE
14 -- commercial license or contractual agreement.
15
16 class Tools from QANewModTopOpe
17         ---Purpose: to  provide  several  tools  for  porting  to  OCC  5.0  (mkk)
18
19 uses
20     Edge from TopoDS,
21     Shape from TopoDS,
22     State from TopAbs,
23     PPaveFiller from BOPAlgo,  
24     PBuilder from BOPAlgo, 
25     PBOP from BOPAlgo,
26     ListOfShape from TopTools,
27     IndexedDataMapOfShapeListOfShape from TopTools
28
29 is
30
31     NbPoints(myclass; theDSFiller: PPaveFiller from BOPAlgo)
32      returns Integer from Standard;
33
34     NewVertex(myclass; theDSFiller: PPaveFiller from BOPAlgo;
35                  theIndex   : Integer from Standard)
36      returns Shape from TopoDS;
37  
38     HasSameDomain(myclass; theBuilder: PBuilder from BOPAlgo;
39                   theFace    : Shape from TopoDS)
40      returns Boolean from Standard;
41     
42     SameDomain(myclass; theBuilder: PBuilder from BOPAlgo;
43                theFace    : Shape from TopoDS;
44                theResultList: out ListOfShape from TopTools); 
45
46
47     IsSplit(myclass; theDSFiller: PPaveFiller from BOPAlgo;
48                theEdge    : Shape from TopoDS;
49                theState   : State from TopAbs)
50      returns Boolean from Standard;
51  ---Warning: This method could be called only after boolean operation,
52  ---         arguments of which was solids or compounds of solids.
53  ---
54
55     Splits(myclass; theDSFiller: PPaveFiller from BOPAlgo;
56               theEdge    : Shape from TopoDS;
57               theState   : State from TopAbs;
58               theResultList: out ListOfShape from TopTools);
59  ---Warning: This method could be called only after boolean operation,
60  ---         arguments of which was solids or compounds of solids.
61  ---
62
63     SplitE(myclass; theEdge  : Edge from TopoDS;
64               theSplits: out ListOfShape from TopTools)
65      returns Boolean from Standard;
66
67     EdgeCurveAncestors(myclass; theDSFiller: PPaveFiller from BOPAlgo;
68                     theEdge    : Shape from TopoDS;
69     theFace1   : out Shape from TopoDS;
70     theFace2   : out Shape from TopoDS)
71      returns Boolean from Standard;
72     
73     EdgeSectionAncestors(myclass; theDSFiller: PPaveFiller from BOPAlgo;
74                       theEdge    : Shape from TopoDS;
75                       LF1,LF2    : out ListOfShape from TopTools;
76       LE1,LE2 : out ListOfShape from TopTools)
77      returns Boolean from Standard;
78
79     BoolOpe(myclass; theFace1: Shape from TopoDS;
80                theFace2: Shape from TopoDS;
81        IsCommonFound: out Boolean from Standard;
82                theHistoryMap: out IndexedDataMapOfShapeListOfShape from TopTools)
83      returns Boolean from Standard;
84
85 end Tools from QANewModTopOpe;