Integration of OCCT 6.5.0 from SVN
[occt.git] / src / TopOpeBRepBuild / TopOpeBRepBuild_ShellFaceSet.cxx
1 // File:        TopOpeBRepBuild_ShellFaceSet.cxx
2 // Created:     Thu Jun 17 17:21:05 1993
3 // Author:      Jean Yves LEBEY
4 //              <jyl@zerox>
5
6 #ifdef DRAW
7 #include <DBRep.hxx>
8 #include <TestTopOpeDraw_TTOT.hxx>
9 static TCollection_AsciiString PRODINS("dins ");
10 #endif
11
12 #include <TopOpeBRepBuild_ShellFaceSet.ixx>
13 #include <TopOpeBRepBuild_Builder.hxx>
14 #include <TopOpeBRepBuild_define.hxx>
15 #include <TopoDS.hxx>
16
17 #ifdef DEB
18 Standard_IMPORT Standard_Boolean TopOpeBRepBuild_GettraceCHK();
19 #endif
20
21 //=======================================================================
22 //function : TopOpeBRepBuild_ShellFaceSet
23 //purpose  : 
24 //=======================================================================
25
26 TopOpeBRepBuild_ShellFaceSet::TopOpeBRepBuild_ShellFaceSet() :
27 TopOpeBRepBuild_ShapeSet(TopAbs_EDGE)
28 {
29 #ifdef DEB
30   myDEBName = "SFS";
31 #endif
32 }
33
34 //=======================================================================
35 //function : TopOpeBRepBuild_ShellFaceSet
36 //purpose  : 
37 //=======================================================================
38
39 TopOpeBRepBuild_ShellFaceSet::TopOpeBRepBuild_ShellFaceSet
40 (const TopoDS_Shape& S,const Standard_Address A) : // DEB
41 TopOpeBRepBuild_ShapeSet(TopAbs_EDGE)
42 {
43   mySolid = TopoDS::Solid(S);
44
45 #ifdef DEB
46   myDEBName = "SFS";
47   if (A != NULL) {
48     TopOpeBRepBuild_Builder* pB = ((TopOpeBRepBuild_Builder*)((void*)A));
49     myDEBNumber = pB->GdumpSHASETindex();
50     Standard_Integer iS; Standard_Boolean tSPS = pB->GtraceSPS(S,iS);
51     if(tSPS){cout<<"creation SFS "<<myDEBNumber<<" on ";}
52     if(tSPS){pB->GdumpSHA(S,NULL);cout<<endl;}
53   }
54
55   if (TopOpeBRepBuild_GettraceCHK() && !myCheckShape) {
56     DumpName(cout,"no checkshape in creation of ");cout<<endl;
57   }
58 #endif
59 }
60
61 //=======================================================================
62 //function : AddShape
63 //purpose  : 
64 //=======================================================================
65 void TopOpeBRepBuild_ShellFaceSet::AddShape(const TopoDS_Shape& S)
66 {
67   TopOpeBRepBuild_ShapeSet::AddShape(S);
68 }
69
70 //=======================================================================
71 //function : AddStartElement
72 //purpose  : 
73 //=======================================================================
74 void TopOpeBRepBuild_ShellFaceSet::AddStartElement(const TopoDS_Shape& S)
75 {
76   TopOpeBRepBuild_ShapeSet::ProcessAddStartElement(S);
77 }
78
79 //=======================================================================
80 //function : AddElement
81 //purpose  : 
82 //=======================================================================
83 void TopOpeBRepBuild_ShellFaceSet::AddElement(const TopoDS_Shape& S)
84 {
85   TopOpeBRepBuild_ShapeSet::AddElement(S);
86 }
87
88 //=======================================================================
89 //function : Solid
90 //purpose  : 
91 //=======================================================================
92
93 const TopoDS_Solid& TopOpeBRepBuild_ShellFaceSet::Solid() const 
94 {
95   return mySolid;
96 }
97
98 //=======================================================================
99 //function : DumpSS
100 //purpose  : 
101 //=======================================================================
102
103 void TopOpeBRepBuild_ShellFaceSet::DumpSS()
104 {
105 #ifdef DEB
106   TopOpeBRepBuild_ShapeSet::DumpSS();
107 #endif
108 }
109
110 //=======================================================================
111 //function : SName
112 //purpose  : 
113 //=======================================================================
114 TCollection_AsciiString TopOpeBRepBuild_ShellFaceSet::SName(const TopoDS_Shape& S,const TCollection_AsciiString& sb,const TCollection_AsciiString& sa) const
115 {
116   TCollection_AsciiString str=sb;
117 #ifdef DRAW
118   str=str+TopOpeBRepBuild_ShapeSet::SName(S);
119   str=str+sa;
120   DBRep::Set(str.ToCString(),S);
121 #endif
122   return str;
123 }
124
125 //=======================================================================
126 //function : SNameori
127 //purpose  : 
128 //=======================================================================
129 TCollection_AsciiString TopOpeBRepBuild_ShellFaceSet::SNameori(const TopoDS_Shape& S,const TCollection_AsciiString& sb,const TCollection_AsciiString& sa) const
130 {
131   TCollection_AsciiString str=sb;
132 #ifdef DRAW
133   str=str+TopOpeBRepBuild_ShapeSet::SNameori(S);
134   if ( S.ShapeType() == TopAbs_FACE ) {
135     const TopoDS_Shape& F = TopoDS::Face(S);
136     DBRep::Set(str.ToCString(),S);
137   }
138 #endif
139   return str;
140 }
141
142 //=======================================================================
143 //function : SName
144 //purpose  : 
145 //=======================================================================
146 TCollection_AsciiString TopOpeBRepBuild_ShellFaceSet::SName(const TopTools_ListOfShape& L,const TCollection_AsciiString& sb,const TCollection_AsciiString& sa) const
147 {
148   TCollection_AsciiString str;
149 #ifdef DRAW
150   for (TopTools_ListIteratorOfListOfShape it(L);it.More();it.Next()) str=str+sb+SName(it.Value())+sa+" ";
151 #endif
152   return str;
153 }
154
155 //=======================================================================
156 //function : SNameori
157 //purpose  : 
158 //=======================================================================
159 TCollection_AsciiString TopOpeBRepBuild_ShellFaceSet::SNameori(const TopTools_ListOfShape& L,const TCollection_AsciiString& sb,const TCollection_AsciiString& sa) const
160 {
161   TCollection_AsciiString str;
162 #ifdef DRAW
163   for (TopTools_ListIteratorOfListOfShape it(L);it.More();it.Next()) str=str+sb+SNameori(it.Value())+sa+" ";
164 #endif
165   return str;
166 }