summaryrefslogtreecommitdiff
path: root/inc/BRepToIGESBRep_Entity.hxx
blob: 3a93dfba7aca97b47d2e3c51f57c38b727d52aa3 (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
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _BRepToIGESBRep_Entity_HeaderFile
#define _BRepToIGESBRep_Entity_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

#ifndef _TopTools_IndexedMapOfShape_HeaderFile
#include <TopTools_IndexedMapOfShape.hxx>
#endif
#ifndef _TColStd_IndexedMapOfTransient_HeaderFile
#include <TColStd_IndexedMapOfTransient.hxx>
#endif
#ifndef _Handle_IGESSolid_EdgeList_HeaderFile
#include <Handle_IGESSolid_EdgeList.hxx>
#endif
#ifndef _Handle_IGESSolid_VertexList_HeaderFile
#include <Handle_IGESSolid_VertexList.hxx>
#endif
#ifndef _BRepToIGES_BREntity_HeaderFile
#include <BRepToIGES_BREntity.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Handle_IGESData_IGESEntity_HeaderFile
#include <Handle_IGESData_IGESEntity.hxx>
#endif
#ifndef _Standard_Real_HeaderFile
#include <Standard_Real.hxx>
#endif
#ifndef _Handle_IGESSolid_Loop_HeaderFile
#include <Handle_IGESSolid_Loop.hxx>
#endif
#ifndef _Handle_IGESSolid_Face_HeaderFile
#include <Handle_IGESSolid_Face.hxx>
#endif
#ifndef _Handle_IGESSolid_Shell_HeaderFile
#include <Handle_IGESSolid_Shell.hxx>
#endif
#ifndef _Handle_IGESSolid_ManifoldSolid_HeaderFile
#include <Handle_IGESSolid_ManifoldSolid.hxx>
#endif
class IGESSolid_EdgeList;
class IGESSolid_VertexList;
class TopoDS_Vertex;
class TopoDS_Edge;
class IGESData_IGESEntity;
class TopoDS_Shape;
class TopoDS_Face;
class IGESSolid_Loop;
class TopoDS_Wire;
class IGESSolid_Face;
class IGESSolid_Shell;
class TopoDS_Shell;
class IGESSolid_ManifoldSolid;
class TopoDS_Solid;
class TopoDS_CompSolid;
class TopoDS_Compound;


//! provides methods to transfer BRep entity from CASCADE to IGESBRep. <br>
class BRepToIGESBRep_Entity  : public BRepToIGES_BREntity {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  //! Creates a tool Entity <br>
  Standard_EXPORT   BRepToIGESBRep_Entity();
  //! Clears the contents of the fields <br>
  Standard_EXPORT     void Clear() ;
  //!  Create the VertexList entity <br>
  Standard_EXPORT     void TransferVertexList() ;
  //! Returns the index of <myvertex> in "myVertices" <br>
  Standard_EXPORT     Standard_Integer IndexVertex(const TopoDS_Vertex& myvertex) const;
  //! Stores <myvertex> in "myVertices" <br>
//!          Returns the index of <myvertex>. <br>
  Standard_EXPORT     Standard_Integer AddVertex(const TopoDS_Vertex& myvertex) ;
  //!  Transfert an Edge entity from TopoDS to IGES <br>
  Standard_EXPORT     void TransferEdgeList() ;
  //! Returns the index of <myedge> in "myEdges" <br>
  Standard_EXPORT     Standard_Integer IndexEdge(const TopoDS_Edge& myedge) const;
  //! Stores <myedge> in "myEdges" and <mycurve3d> in "myCurves". <br>
//!           Returns the index of <myedge>. <br>
  Standard_EXPORT     Standard_Integer AddEdge(const TopoDS_Edge& myedge,const Handle(IGESData_IGESEntity)& mycurve3d) ;
  //! Returns the result of the transfert of any Shape <br>
//!           If  the transfer has  failed, this member return a NullEntity. <br>
  Standard_EXPORT   virtual  Handle_IGESData_IGESEntity TransferShape(const TopoDS_Shape& start) ;
  //!  Transfert an Edge entity from TopoDS to IGES <br>
//!            If this Entity could not be converted, this member returns a NullEntity. <br>
  Standard_EXPORT     Handle_IGESData_IGESEntity TransferEdge(const TopoDS_Edge& myedge) ;
  //!  Transfert an Edge entity from TopoDS to IGES <br>
//!            If this Entity could not be converted, this member returns a NullEntity. <br>
  Standard_EXPORT     Handle_IGESData_IGESEntity TransferEdge(const TopoDS_Edge& myedge,const TopoDS_Face& myface,const Standard_Real length) ;
  //!  Transfert a Wire entity from TopoDS to IGES. <br>
//!            Returns the curve associated to mywire in the parametric space of myface. <br>
//!            If this Entity could not be converted, this member returns a NullEntity. <br>
  Standard_EXPORT     Handle_IGESSolid_Loop TransferWire(const TopoDS_Wire& mywire,const TopoDS_Face& myface,const Standard_Real length) ;
  //!  Transfert a Face entity from TopoDS to IGES <br>
//!            If this Entity could not be converted, this member returns a NullEntity. <br>
  Standard_EXPORT     Handle_IGESSolid_Face TransferFace(const TopoDS_Face& start) ;
  //!  Transfert an Shell entity from TopoDS to IGES <br>
//!            If this Entity could not be converted, this member returns a NullEntity. <br>
  Standard_EXPORT     Handle_IGESSolid_Shell TransferShell(const TopoDS_Shell& start) ;
  //!  Transfert a Solid entity from TopoDS to IGES <br>
//!            If this Entity could not be converted, this member returns a NullEntity. <br>
  Standard_EXPORT     Handle_IGESSolid_ManifoldSolid TransferSolid(const TopoDS_Solid& start) ;
  //!  Transfert an CompSolid entity from TopoDS to IGES <br>
//!            If this Entity could not be converted, this member returns a NullEntity. <br>
  Standard_EXPORT     Handle_IGESData_IGESEntity TransferCompSolid(const TopoDS_CompSolid& start) ;
  //!  Transfert a Compound entity from TopoDS to IGES <br>
//!            If this Entity could not be converted, this member returns a NullEntity. <br>
  Standard_EXPORT     Handle_IGESData_IGESEntity TransferCompound(const TopoDS_Compound& start) ;





protected:





private:



TopTools_IndexedMapOfShape myVertices;
TopTools_IndexedMapOfShape myEdges;
TColStd_IndexedMapOfTransient myCurves;
Handle_IGESSolid_EdgeList myEdgeList;
Handle_IGESSolid_VertexList myVertexList;


};





// other Inline functions and methods (like "C++: function call" methods)


#endif