0023429: BRepFeat_SplitShape algorithm misses some section edges while building resul...
[occt.git] / src / BRepFeat / BRepFeat_SplitShape.lxx
CommitLineData
b311480e 1// Created on: 1995-09-04
2// Created by: Jacques GOUSSARD
3// Copyright (c) 1995-1999 Matra Datavision
4// Copyright (c) 1999-2012 OPEN CASCADE SAS
5//
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.
10//
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.
13//
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.
20
7fd59977 21
22#include <LocOpe_WiresOnShape.hxx>
23
24
25//=======================================================================
26//function : BRepFeat_SplitShape
27//purpose :
28//=======================================================================
29
30inline BRepFeat_SplitShape::BRepFeat_SplitShape () {}
31
32
33
34
35//=======================================================================
36//function : BRepFeat_SplitShape
37//purpose :
38//=======================================================================
39
40inline BRepFeat_SplitShape::BRepFeat_SplitShape (const TopoDS_Shape& S) :
41 mySShape(S)
42{
43 myWOnShape = new LocOpe_WiresOnShape(S);
44}
45
46
47//=======================================================================
48//function : Init
49//purpose :
50//=======================================================================
51
52inline void BRepFeat_SplitShape::Init(const TopoDS_Shape& S)
53{
54 mySShape.Init(S);
55 if (myWOnShape.IsNull()) {
56 myWOnShape = new LocOpe_WiresOnShape(S);
57 }
58 else {
59 myWOnShape->Init(S);
60 }
61}
62
7c104885 63//=======================================================================
64//function : SetCheckInterior
65//purpose :
66//=======================================================================
67
68inline void BRepFeat_SplitShape::SetCheckInterior(const Standard_Boolean ToCheckInterior)
69{
70 myWOnShape->SetCheckInterior(ToCheckInterior);
71}
7fd59977 72
73//=======================================================================
74//function : Add
75//purpose :
76//=======================================================================
77
78inline void BRepFeat_SplitShape::Add(const TopoDS_Wire& W,
79 const TopoDS_Face& F)
80{
81 myWOnShape->Bind(W,F);
82}
83
84
85//=======================================================================
86//function : Add
87//purpose :
88//=======================================================================
89
90inline void BRepFeat_SplitShape::Add(const TopoDS_Edge& E,
91 const TopoDS_Face& F)
92{
93 myWOnShape->Bind(E,F);
94}
95
ed60a55e 96//=======================================================================
97//function : Add
98//purpose :
99//=======================================================================
100
101inline void BRepFeat_SplitShape::Add(const TopoDS_Compound& Comp,
102 const TopoDS_Face& F)
103{
104 myWOnShape->Bind(Comp,F);
105}
106
7fd59977 107
108//=======================================================================
109//function : Add
110//purpose :
111//=======================================================================
112
113inline void BRepFeat_SplitShape::Add(const TopoDS_Edge& E,
114 const TopoDS_Edge& EOn)
115{
116 myWOnShape->Bind(E,EOn);
117}
118
119