#include <IGESSolid_TopoBuilder.hxx>
Public Member Functions | |
void * | operator new (size_t, void *anAddress) |
void * | operator new (size_t size) |
void | operator delete (void *anAddress) |
Standard_EXPORT | IGESSolid_TopoBuilder () |
Creates an empty TopoBuilder This creates also a unique VertexList and a unique EdgeList, empty, but which can be referenced from starting . | |
Standard_EXPORT void | Clear () |
Resets the TopoBuilder for an entirely new operation (with a new EdgeList, a new VertexList, new Shells, ...) . | |
Standard_EXPORT void | AddVertex (const gp_XYZ &val) |
Adds a Vertex to the VertexList . | |
Standard_EXPORT Standard_Integer | NbVertices () const |
Returns the count of already recorded Vertices . | |
Standard_EXPORT const gp_XYZ & | Vertex (const Standard_Integer num) const |
Returns a Vertex, given its rank . | |
Standard_EXPORT Handle_IGESSolid_VertexList | VertexList () const |
Returns the VertexList. It can be referenced, but it remains empty until call to EndShell or EndSolid . | |
Standard_EXPORT void | AddEdge (const Handle(IGESData_IGESEntity)&curve, const Standard_Integer vstart, const Standard_Integer vend) |
Adds an Edge (3D) to the EdgeList, defined by a Curve and two number of Vertex, for start and end . | |
Standard_EXPORT Standard_Integer | NbEdges () const |
Returns the count of recorded Edges (3D) . | |
Standard_EXPORT void | Edge (const Standard_Integer num, Handle(IGESData_IGESEntity)&curve, Standard_Integer &vstart, Standard_Integer &vend) const |
Returns the definition of an Edge (3D) given its rank . | |
Standard_EXPORT Handle_IGESSolid_EdgeList | EdgeList () const |
Returns the EdgeList. It can be referenced, but it remains empty until call to EndShell or EndSolid . | |
Standard_EXPORT void | MakeLoop () |
Begins the definition of a new Loop : it is the Current Loop All Edges (UV) defined by MakeEdge/EndEdge will be added in it The Loop can then be referenced but is empty. It will be filled with its Edges(UV) by EndLoop (from SetOuter/AddInner) . | |
Standard_EXPORT void | MakeEdge (const Standard_Integer edgetype, const Standard_Integer edge3d, const Standard_Integer orientation) |
Defines an Edge(UV), to be added in the current Loop by EndEdge <edgetype> gives the type of the edge <edge3d> identifies the Edge(3D) used as support The EdgeList is allways the current one <orientation gives the orientation flag It is then necessary to : - give the parametric curves - close the definition of this edge(UV) by EndEdge, else the next call to MakeEdge will erase this one . | |
Standard_EXPORT void | AddCurveUV (const Handle(IGESData_IGESEntity)&curve, const Standard_Integer iso) |
Adds a Parametric Curve (UV) to the current Edge(UV) . | |
Standard_EXPORT void | EndEdge () |
Closes the definition of an Edge(UV) and adds it to the current Loop . | |
Standard_EXPORT void | MakeFace (const Handle(IGESData_IGESEntity)&surface) |
Begins the definition of a new Face, on a surface All Loops defined by MakeLoop will be added in it, according the closing call : SetOuter for the Outer Loop (by default, if SetOuter is not called, no OuterLoop is defined); AddInner for the list of Inner Loops (there can be none) . | |
Standard_EXPORT void | SetOuter () |
Closes the current Loop and sets it Loop as Outer Loop. If no current Loop has yet been defined, does nothing. . | |
Standard_EXPORT void | AddInner () |
Closes the current Loop and adds it to the list of Inner Loops for the current Face . | |
Standard_EXPORT void | EndFace (const Standard_Integer orientation) |
Closes the definition of the current Face, fills it and adds it to the current Shell with an orientation flag (0/1) . | |
Standard_EXPORT void | MakeShell () |
Begins the definition of a new Shell (either Simple or in a Solid) . | |
Standard_EXPORT void | EndSimpleShell () |
Closes the whole definition as that of a simple Shell . | |
Standard_EXPORT void | SetMainShell (const Standard_Integer orientation) |
Closes the definition of the current Shell as for the Main Shell of a Solid, with an orientation flag (0/1) . | |
Standard_EXPORT void | AddVoidShell (const Standard_Integer orientation) |
Closes the definition of the current Shell and adds it to the list of Void Shells of a Solid, with an orientation flag (0/1) . | |
Standard_EXPORT void | EndSolid () |
Closes the whole definition as that of a ManifoldSolid Its call is exclusive from that of EndSimpleShell . | |
Standard_EXPORT Handle_IGESSolid_Shell | Shell () const |
Returns the current Shell. The current Shell is created empty by MakeShell and filled by EndShell . | |
Standard_EXPORT Handle_IGESSolid_ManifoldSolid | Solid () const |
Returns the current ManifoldSolid. It is created empty by Create and filled by EndSolid . | |
Protected Member Functions | |
Standard_EXPORT void | EndLists () |
Closes the definition of Vertex and Edge Lists Warning : Called only by EndSimpleShell and EndSolid . | |
Standard_EXPORT void | EndLoop () |
Closes the definition of a Loop and fills it Warning : EndLoop should not be called directly but through SetOuter or AddInner, which work on the current Face . | |
Standard_EXPORT void | EndShell () |
Closes the definition of the current Shell Warning : EndShell should not be called directly but through EndSimpleShell (for a simple Shell), SetMainShell (for main Shell of a Solid) or AddVoidShell (to a Solid) . | |
Private Attributes | |
Handle_IGESSolid_ManifoldSolid | thesolid |
Handle_IGESSolid_Shell | themains |
Standard_Integer | themflag |
Handle_TColStd_HSequenceOfTransient | thevoids |
Handle_TColStd_HSequenceOfInteger | thevflag |
Handle_IGESSolid_Shell | theshell |
Handle_TColStd_HSequenceOfTransient | thefaces |
Handle_TColStd_HSequenceOfInteger | thefflag |
Handle_IGESSolid_Face | theface |
Handle_IGESData_IGESEntity | thesurf |
Standard_Integer | theouter |
Handle_TColStd_HSequenceOfTransient | theinner |
Handle_IGESSolid_Loop | theloop |
Handle_TColStd_HSequenceOfInteger | theetype |
Handle_TColStd_HSequenceOfInteger | thee3d |
Handle_TColStd_HSequenceOfInteger | theeflag |
Handle_TColStd_HSequenceOfTransient | theeuv |
Handle_TColStd_HSequenceOfInteger | theisol |
Handle_TColStd_HSequenceOfTransient | thecuruv |
Handle_TColStd_HSequenceOfTransient | theiso |
Handle_IGESSolid_EdgeList | theedgel |
Handle_TColStd_HSequenceOfTransient | thecur3d |
Handle_TColStd_HSequenceOfInteger | thevstar |
Handle_TColStd_HSequenceOfInteger | thevend |
Handle_IGESSolid_VertexList | thevertl |
Handle_TColgp_HSequenceOfXYZ | thepoint |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|