MGCL V10  V10
MGCL V10
 全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 フレンド グループ ページ
Iges.h
1 /********************************************************************/
2 /* Copyright (c) 2015 DG Technologies Inc. and Yuzi Mizuno */
3 /* All rights reserved. */
4 /********************************************************************/
5 #if !defined( __IGES_H__)
6 #define __IGES_H__
7 
8 #include <string>
9 #include <sstream>
10 #include <ostream>
11 #include <istream>
12 #include <iomanip>
13 #include "mg/Pvector.h"
14 
15 class MGIgesGSec;
17 class MGIgesPD;
18 class MGIgesParamLine;
19 
22 namespace MGIges{
23 
25  Null=0,
28  CONIC_ARC=104,
29  //CopiousData=106,
30  PLANE=108,
31  LINE=110,
33  //ParametricSplineSurface=114,
34  POINT=116,
38  DIRECTION=123,
40  //Flash=125,
43  //OffsetCurve=130,
44  //ConnectPoint=132,
45  //Node=134,
46  //FiniteElement=136,
47  //NodalDisplacementAndRotation=138,
48  //OffsetSurface=140,
49  BOUNDARY=141,
53  //NodalResults=146,
54  //ElementResults=148,
55  //Block=150,
56  //RightAngularWedge=152,
57  //RightCircularCylinder=154,
58  //RightCircularConeFrustum=156,
59  SPHERE=158,
60  //Torus=160,
61  //SolidOfRevolution=162,
62  //Ellipsoid=168,
63  //BooleanTree=180,
64  //SelectedComponent=182,
65  //SolidAssembly=184,
69  //RightCircularConicalSurface=194,
71  //ToridalSurface=198,
72  //AngularDimension=202,
73  //CurveDimension=202,
74  //CurveDimension=204,
75  //DiameterDimension=206,
76  //FlagNote=208,
77  //GeneralLabel=210,
78  //GeneralNote=212,
79  //NewGeneralNote=213,
80  //Leader=214,
81  //LinearDimension=216,
82  //OrdinateDimension=218,
83  //PointDimension=220,
84  //RadiusDimension=222,
85  //GeneralSymbol=228,
86  //SectionedArea=230,
87  //AssociativityDifinition=302,
88  //LineFontDefinition=304,
89  //MACRODefinition=306,
90  //SubfigureDefinition=308,
91  //TextFontDefinition=310,
92  //TextDisplayTemplate=312,
94  //UnitsData=316,
95  //NetworkSubfigureDefinition=320,
96  //AttributeTableDefinition=322,
98  //Drawing=404,
99  //Property=406,
100  //SingularSubfigureInstance=408,
101  //View=410,
102  //RectangularArraySubfigureInstance=412,
103  //CircularArraySubfigureInstance=414,
104  //ExternalReference=416,
105  //NodalLoad=418,
106  //NetworkSubfigureInstance=420,
107  //AttributeTableInstance=422,
108  //SolidInstance=430,
109  VERTEX=502,
110  EDGE=504,
111  LOOP=508,
112  FACE=510,
113  SHELL=514
114 };
115 
118 int DEpointer_to_lnumber(int DEpointer);
119 
122 int lnumber_to_DEpointer(int line_number);
123 
129 bool get_DEpointer(
130  char pDelimeter,
131  std::istringstream& istrm,
132  int& DEpointer
134 );
135 
141  char pDelimeter,
142  std::istringstream& istrm,
143  std::string& strngData
145 );
146 
151 MG_DLL_DECLR bool get_integer(
152  char pDelimeter,
153  std::istringstream& istrm,
154  int& intData
156 );
157 MG_DLL_DECLR bool get_integer(
158  char pDelimeter,
159  std::istringstream& istrm,
160  short& shortData
162 );
163 
168 MG_DLL_DECLR bool get_real(
169  char pDelimeter,
170  std::istringstream& istrm,
171  double& realData
173 );
174 MG_DLL_DECLR bool get_real(
175  char pDelimeter,
176  std::istringstream& istrm,
177  float& floatData
179 );
180 
182 void get_ID_sequence(
183  const std::string& line,
184  char& sectionID_letter,
185  int& sequence
186 );
187 
191 MG_DLL_DECLR void put_integer(
192  int idata,
193  const MGIgesGSec& gsec,
194  MGPvector<std::string>& plines,
195  int line_len=64
204 );
205 
209 MG_DLL_DECLR void put_real(
210  double rdata,
211  const MGIgesGSec& gsec,
212  MGPvector<std::string>& plines,
213  int line_len=64
222 );
223 
228  const std::string& strngData,
229  const MGIgesGSec& gsec,
231  MGPvector<std::string>& plines,
232  int line_len=64
241 );
242 
247 void put_DEpointer(
248  int DEpointer,
249  const MGIgesGSec& gsec,
250  MGPvector<std::string>& plines
251 );
260 
263  char record_del,
264  MGPvector<std::string>& plines,
265  int line_len=64
266 );
267 
268 };
269 
270 #endif // __IGES_H__
void get_ID_sequence(const std::string &line, char &sectionID_letter, int &sequence)
convert the line id into int(sequence), inputting one line.
Associativity Instance Entity.
Definition: Iges.h:97
Tabulated Cylinder Entity.
Definition: Iges.h:37
Vertex Entity.
Definition: Iges.h:109
Parametric Spline Curve Entity.
Definition: Iges.h:32
Point Entity.
Definition: Iges.h:34
int DEpointer_to_lnumber(int DEpointer)
Null Entity.
Definition: Iges.h:25
MGIgesDirectoryEntry describes a directory entry section of an IGES file.
Definition: IgesDirectoryEntry.h:20
Conic Arc Entity.
Definition: Iges.h:28
void put_Hollerith_string(const std::string &strngData, const MGIgesGSec &gsec, MGPvector< std::string > &plines, int line_len=64)
Curve on a Parameteric Surface Entity.
Definition: Iges.h:50
Definition: Iges.h:22
MGIgesParamLine describes a line of Parameter Data of an IGES file.
Definition: IgesParamLine.h:15
bool get_Hollerith_string(char pDelimeter, std::istringstream &istrm, std::string &strngData)
Line Entity.
Definition: Iges.h:31
Surface of Revolution Entity.
Definition: Iges.h:36
Spherical Surface Entity.
Definition: Iges.h:70
Circular Arc Entity Entity.
Definition: Iges.h:26
Direction Entity.
Definition: Iges.h:38
MG_DLL_DECLR bool get_integer(char pDelimeter, std::istringstream &istrm, int &intData)
MGIgesPD is the parent class of all the Parameter data section type.
Definition: igesPD.h:17
MG_DLL_DECLR bool get_real(char pDelimeter, std::istringstream &istrm, double &realData)
MG_DLL_DECLR void put_real(double rdata, const MGIgesGSec &gsec, MGPvector< std::string > &plines, int line_len=64)
Rational B-Spline Surface Entity.
Definition: Iges.h:42
Face Entity.
Definition: Iges.h:112
Edge Entity.
Definition: Iges.h:110
void append_record_delimeter(char record_del, MGPvector< std::string > &plines, int line_len=64)
append record delimeter to plines.
Manifole Solid B-Rep Object Entity.
Definition: Iges.h:66
void put_DEpointer(int DEpointer, const MGIgesGSec &gsec, MGPvector< std::string > &plines)
Transformation Matrix Entity.
Definition: Iges.h:39
bool get_DEpointer(char pDelimeter, std::istringstream &istrm, int &DEpointer)
int lnumber_to_DEpointer(int line_number)
Trimmed(Parametric) Surface Entity.
Definition: Iges.h:52
Rational B-Spline Curve Entity.
Definition: Iges.h:41
MG_DLL_DECLR void put_integer(int idata, const MGIgesGSec &gsec, MGPvector< std::string > &plines, int line_len=64)
MGIgesGSec describes a Global Section of a IGES file.
Definition: IgesGSec.h:18
EntityTypeNumber
Definition: Iges.h:24
Right Circular Cylinderical Surface Entity.
Definition: Iges.h:68
Ruled Surface Entity.
Definition: Iges.h:35
Boundary Entity.
Definition: Iges.h:49
Bounded Surface Entity.
Definition: Iges.h:51
Plane Surface Entity.
Definition: Iges.h:67
Plane Entity.
Definition: Iges.h:30
Sphere Entity.
Definition: Iges.h:59
Composite Curve Entity.
Definition: Iges.h:27
Shell Entity.
Definition: Iges.h:113
Color Definition Entity.
Definition: Iges.h:93
Defines Vector of newed object pointers.
Definition: Pvector.h:27
Loop Entity.
Definition: Iges.h:111