summaryrefslogtreecommitdiff
path: root/src/BRepBuilderAPI/BRepBuilderAPI_MakeShell.cxx
blob: ff3801ba50fbde6eb1321c5320fd017d95115ee8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
// File:	BRepBuilderAPI_MakeShell.cxx
// Created:	Fri Feb 18 15:13:16 1994
// Author:	Remi LEQUETTE
//		<rle@nonox>


#include <BRepBuilderAPI_MakeShell.ixx>


//=======================================================================
//function : BRepBuilderAPI_MakeShell
//purpose  : 
//=======================================================================

BRepBuilderAPI_MakeShell::BRepBuilderAPI_MakeShell()
{
}


//=======================================================================
//function : BRepBuilderAPI_MakeShell
//purpose  : 
//=======================================================================

BRepBuilderAPI_MakeShell::BRepBuilderAPI_MakeShell(const Handle(Geom_Surface)& S,
				     const Standard_Boolean Segment)
: myMakeShell(S,Segment)
{
  if ( myMakeShell.IsDone()) {
    Done();
    myShape = myMakeShell.Shape();
  }
}


//=======================================================================
//function : BRepBuilderAPI_MakeShell
//purpose  : 
//=======================================================================

BRepBuilderAPI_MakeShell::BRepBuilderAPI_MakeShell(const Handle(Geom_Surface)& S, 
				     const Standard_Real UMin,
				     const Standard_Real UMax, 
				     const Standard_Real VMin, 
				     const Standard_Real VMax,
				     const Standard_Boolean Segment)
: myMakeShell(S,UMin,UMax,VMin,VMax,Segment)
{
  if ( myMakeShell.IsDone()) {
    Done();
    myShape = myMakeShell.Shape();
  }
}


//=======================================================================
//function : Init
//purpose  : 
//=======================================================================

void BRepBuilderAPI_MakeShell::Init(const Handle(Geom_Surface)& S, 
			     const Standard_Real UMin, 
			     const Standard_Real UMax, 
			     const Standard_Real VMin, 
			     const Standard_Real VMax,
			     const Standard_Boolean Segment)
{
  myMakeShell.Init(S,UMin,UMax,VMin,VMax,Segment);
  if ( myMakeShell.IsDone()) {
    Done();
    myShape = myMakeShell.Shape();
  }
}

//=======================================================================
//function : IsDone
//purpose  : 
//=======================================================================

Standard_Boolean BRepBuilderAPI_MakeShell::IsDone() const
{
  return myMakeShell.IsDone();
}



//=======================================================================
//function : Error
//purpose  : 
//=======================================================================

BRepBuilderAPI_ShellError BRepBuilderAPI_MakeShell::Error() const 
{
  switch ( myMakeShell.Error()) {

  case BRepLib_ShellDone:
    return BRepBuilderAPI_ShellDone;

  case BRepLib_EmptyShell:
    return BRepBuilderAPI_EmptyShell;

  case BRepLib_DisconnectedShell:
    return BRepBuilderAPI_DisconnectedShell;

  case BRepLib_ShellParametersOutOfRange:
    return BRepBuilderAPI_ShellParametersOutOfRange;

  }

  // portage WNT
  return BRepBuilderAPI_ShellDone;
}


//=======================================================================
//function : TopoDS_Shell&
//purpose  : 
//=======================================================================

const TopoDS_Shell& BRepBuilderAPI_MakeShell::Shell() const 
{
  return myMakeShell.Shell();
}



//=======================================================================
//function : TopoDS_Shell
//purpose  : 
//=======================================================================

BRepBuilderAPI_MakeShell::operator TopoDS_Shell() const
{
  return Shell();
}