0024428: Implementation of LGPL license
[occt.git] / src / BRepFeat / BRepFeat_SplitShape.cxx
1 // Created on: 1995-09-04
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
9 // under the terms of the GNU Lesser General Public 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 #include <BRepFeat_SplitShape.ixx>
18
19 #include <TopTools_ListIteratorOfListOfShape.hxx>
20 #include <Standard_Failure.hxx>
21
22 //=======================================================================
23 //function : Build
24 //purpose  : 
25 //=======================================================================
26
27 void BRepFeat_SplitShape::Build ()
28 {
29   mySShape.Perform(myWOnShape);
30   if (mySShape.IsDone()) {
31     Done();
32     myShape = mySShape.ResultingShape();
33   }
34 }
35
36
37
38 //=======================================================================
39 //function : DirectLeft
40 //purpose  : 
41 //=======================================================================
42
43 const TopTools_ListOfShape& BRepFeat_SplitShape::DirectLeft() const
44 {
45   return mySShape.DirectLeft();
46 }
47
48
49 //=======================================================================
50 //function : DirectLeft
51 //purpose  : 
52 //=======================================================================
53
54 const TopTools_ListOfShape& BRepFeat_SplitShape::Left() const
55 {
56   return mySShape.Left();
57 }
58
59 //=======================================================================
60 //function : isDeleted
61 //purpose  : 
62 //=======================================================================
63
64 Standard_Boolean BRepFeat_SplitShape::IsDeleted(const TopoDS_Shape& F) 
65 {
66   TopTools_ListIteratorOfListOfShape itl
67     (((LocOpe_Spliter*) &mySShape)->DescendantShapes(F));
68   // all that to swindle the constant
69
70   return (!itl.More());// a priori impossible
71
72 }
73 //=======================================================================
74 //function : Modified
75 //purpose  : 
76 //=======================================================================
77
78 const TopTools_ListOfShape& BRepFeat_SplitShape::Modified
79    (const TopoDS_Shape& F)
80 {
81   return mySShape.DescendantShapes(F);
82 }
83
84
85
86