5 #if !defined( __IGESIFSTREAM_H__)
6 #define __IGESIFSTREAM_H__
13 #include "mg/Straight.h"
15 #include "mg/RLBRep.h"
17 #include "mg/RSBRep.h"
19 #include "mg/Sphere.h"
20 #include "mgIges/IgesFstream.h"
21 #include "mgIges/IgesFstream.h"
22 #include "mgIges/IgesVertexListMap.h"
23 #include "mgIges/Iges504EdgeListMap.h"
59 MG_DLL_DECLR
bool good()
const{
return m_ifstream.good();};
81 MG_DLL_DECLR
bool is_open(){
return m_ifstream.is_open();};
85 MG_DLL_DECLR
void open(
const TCHAR* filename);
86 MG_DLL_DECLR
void close();
91 char& sectionID_letter,
269 std::ifstream m_ifstream;
274 #endif // __IGESIFSTREAM_H__
MGEdge * convert_edge(int edge_list, int edge) const
Convert an edge in type=504 edge list entries to MGEdge.
MGBVertex is 0 manifold dimension binder cell, is an point.
Definition: BVertex.h:30
MGIgesVertexListMap m_vertexListMap
VERTEX list of the directory entry of type 502 vertex.
Definition: IgesIfstream.h:47
MGCurve is an abstract class which represents a whole curve.
Definition: Curve.h:63
MGPlane is infinite plane in 3D space.
Definition: Plane.h:38
MGEllipse * convert_arc(const MGIgesDirectoryEntry &de) const
Convert de to MGEllipse(a newed object). de must be of type 100(Circular Arc).
MGCylinder is a Cylinder in 3D space.
Definition: Cylinder.h:37
MGPoint represents one dimensional manifold, a point in a space.
Definition: Point.h:28
MGBVertex * convert_vertex(int vertex_list, int vertex) const
Convert de(type=502: VERTEX List entries) to MGGroup.
MGCompositeCurve is a composite of other leaf curves.
Definition: CompositeCurve.h:39
void get_one_line(char *lineData, char §ionID_letter, int &sequence, int nchar=72)
From the current stream position, get one line data.
MGIges504EdgeListMap m_edgeListMap
EDGE list of the directory entry of type 504 edge.
Definition: IgesIfstream.h:50
MGLoop * convert_loop(const MGIgesDirectoryEntry &de, const MGSurface &srf) const
MGObject * convert_plane(const MGIgesDirectoryEntry &de) const
MGLBRep * convert_spline(const MGIgesDirectoryEntry &d) const
MGSurface * convert_nurbs_surface(const MGIgesDirectoryEntry &de) const
MG_DLL_DECLR MGIgesIfstream(const TCHAR *filename)
Constructors.
MGSurface * convert_ruled_surface(const MGIgesDirectoryEntry &de) const
MGLBRep is a class for B-SPline representation.
Definition: LBRep.h:41
MGIgesDirectoryEntry describes a directory entry section of an IGES file.
Definition: IgesDirectoryEntry.h:20
MGObject * convert_conic_arc(const MGIgesDirectoryEntry &de) const
Is an abstract class which represents a whole geometry and a topology.
Definition: Object.h:42
MGShell is a composition of MGFace's(trimmed surface).
Definition: Shell.h:32
MGPlane * convert_planeSurface(const MGIgesDirectoryEntry &de) const
MGColor defines the OpenGL color (R,G,B,A).
Definition: Color.h:26
void initialize()
initialization
MGFace is a trimmed surface.
Definition: Face.h:51
MGGel * convert_MSBO(const MGIgesDirectoryEntry &de) const
MGGel is an abstract class which represents a group element.
Definition: Gel.h:53
MGGel * convert_to_gel(int i) const
Member functions.
MGEdge is an instance of MGCellNB, represents a boundary element of 2D manifold.
Definition: Edge.h:33
MGIgesIfstream read in *.iges; *.igs file, transforming IGES objects to MGCL objects.
Definition: IgesIfstream.h:43
MGStraight is a curve of any space dimension, represent a straight line.
Definition: Straight.h:49
MGCylinder * convert_cylinder(const MGIgesDirectoryEntry &de) const
MGShell * convert_shell(const MGIgesDirectoryEntry &de) const
MG_DLL_DECLR bool is_open()
Test if input stream is open.
Definition: IgesIfstream.h:81
MGSurface is an abstract class of 3D surface.
Definition: Surface.h:54
MGLoop is a boundary of a face, a boundary of 2D manifold cell.
Definition: Loop.h:44
MGCompositeCurve * convert_composite(const MGIgesDirectoryEntry &de) const
MGIgesFstream is a super class for MGIfstream and MGOfstream.
Definition: Igesfstream.h:24
MGFace * convert_trimmed_surface(const MGIgesDirectoryEntry &de) const
MGColor * convert_color(const MGIgesDirectoryEntry &de) const
MGSphere is a Sphere in 3D space.
Definition: Sphere.h:42
MGSphere * convert_sphere158(const MGIgesDirectoryEntry &de) const
Convert de to MGObject(a newed object). de must be of type 158(SPHERE).
MGSurface * convert_revolution_surface(const MGIgesDirectoryEntry &de) const
MGSurface * convert_tab_cyl(const MGIgesDirectoryEntry &de) const
Is the class to store MGEdge*(newed objects) generated for MGIges504 EDGE list.
Definition: iges504EdgeListMap.h:16
MGFace * convert_bounded_surface(const MGIgesDirectoryEntry &de) const
Is the class to store MGBVertex*(newed objects) generated for MGIges502 Vertices list.
Definition: igesVertexListMap.h:16
MG_DLL_DECLR bool good() const
Definition: IgesIfstream.h:59
MGStraight * convert_line(const MGIgesDirectoryEntry &de) const
MG_DLL_DECLR void close()
MGGroup is a class which constains MGGel elements.
Definition: Group.h:35
MGFace * convert_face(const MGIgesDirectoryEntry &de) const
MGGroup * convert_group(const MGIgesDirectoryEntry &de) const
MGEllipse is a class to define an ellipse of 2D or 3D.
Definition: Ellipse.h:38
MGCurve * convert_nurbs(const MGIgesDirectoryEntry &de) const
MG_DLL_DECLR MGIgesIfstream & operator>>(MGGroup &)
Operator overload.
void transform(const MGIgesDirectoryEntry &de, MGGel &obj) const
Transform obj if de has the transformation matrix.
MGSphere * convert_sphere(const MGIgesDirectoryEntry &de) const
MG_DLL_DECLR void open(const TCHAR *filename)
MGPoint * convert_point(const MGIgesDirectoryEntry &de) const