DXF_Parser.cpp

Summary
DXF_Parser.cpp
Functions
DXF_PARSERコンストラクタ
DXF_Parser_MainDXFパーサメイン
ReadEntitiesSectionエンティティセクションの読み込み
ChangeEntityforNurbs円,直線エンティティをNURBSに変換
GetArcData円弧のデータを取得しBODYに格納
CalcUVvecCIRAのUV直交座標を設定する
SetStartEndPtArc円弧の始点,終点をセット Parameter: *Cira - 円/円弧へのポインタ
GetCircleData円のデータを取得しBODYに格納
GetLineData線分のデータを取得しBODYに格納
ResearchEntNum各エンティティの数をリサーチ
ReadTablesSectionテーブルセクションの読み込み(スケルトン)
ReadBlocksSectionブロックセクションの読み込み(スケルトン)
ReadObjectsSectionオブジェクトセクションの読み込み(スケルトン)
EvenOdd奇数偶数判別
CheckSectionセクション判別
InitDisplayStat各エンティティの表示属性を設定

Functions

DXF_PARSER

DXF_PARSER::DXF_PARSER()

コンストラクタ

DXF_Parser_Main

int DXF_PARSER::DXF_Parser_Main(BODY *body,
const char *DXF_fname)

DXFパーサメイン

Parameter

*body立体を構成するエンティティの集合オブジェクトへのポインタ
TypeNum[]各エンティティの数が格納される

Return

指定されたファイルが開けない:KOD_ERR, 読み込み成功:KOD_TRUE

ReadEntitiesSection

int DXF_PARSER::ReadEntitiesSection(FILE *fp,
int Line,
BODY *body)

エンティティセクションの読み込み

Parameter

*fpDXFファイルへのファイルポインタ
Line現在の行番号
*bodyBODYへのポインタ

Return

KOD_TRUE

ChangeEntityforNurbs

int DXF_PARSER::ChangeEntityforNurbs(BODY *body)

円,直線エンティティをNURBSに変換

Parameter

*bodyBODYへのポインタ

Return

メモリー確保に失敗:KOD_ERR

GetArcData

int DXF_PARSER::GetArcData(FILE *fp,
BODY *body)

円弧のデータを取得しBODYに格納

Parameter

*fpDXFファイルへのファイルポインタ
*bodyBODYへのポインタ

Return

KOD_TRUE

CalcUVvec

int DXF_PARSER::CalcUVvec(CIRA *Cira)

CIRAのUV直交座標を設定する

Parameter

*Cira円/円弧へのポインタ

Return

KOD_TRUE

SetStartEndPtArc

int DXF_PARSER::SetStartEndPtArc(CIRA *Cira)

円弧の始点,終点をセット Parameter: *Cira - 円/円弧へのポインタ

Return

KOD_TRUE

GetCircleData

int DXF_PARSER::GetCircleData(FILE *fp,
BODY *body)

円のデータを取得しBODYに格納

Parameter

*fpDXFファイルへのファイルポインタ
*bodyBODYへのポインタ

Return

KOD_TRUE

GetLineData

int DXF_PARSER::GetLineData(FILE *fp,
BODY *body)

線分のデータを取得しBODYに格納

Parameter

*fpDXFファイルへのファイルポインタ
*bodyBODYへのポインタ

Return

KOD_TRUE

ResearchEntNum

int DXF_PARSER::ResearchEntNum(FILE *fp,
BODY *body)

各エンティティの数をリサーチ

Parameter

*fpDXFファイルへのファイルポインタ
*bodyBODYへのポインタ

Return

KOD_TRUE

ReadTablesSection

int DXF_PARSER::ReadTablesSection(FILE *fp,
int Line,
BODY *body)

テーブルセクションの読み込み(スケルトン)

Parameter

*fpDXFファイルへのファイルポインタ
*bodyBODYへのポインタ

Return

KOD_TRUE

ReadBlocksSection

int DXF_PARSER::ReadBlocksSection(FILE *fp,
int Line,
BODY *body)

ブロックセクションの読み込み(スケルトン)

Parameter

*fpDXFファイルへのファイルポインタ
*bodyBODYへのポインタ

Return

KOD_TRUE

ReadObjectsSection

int DXF_PARSER::ReadObjectsSection(FILE *fp,
int Line,
BODY *body)

オブジェクトセクションの読み込み(スケルトン)

Parameter

*fpDXFファイルへのファイルポインタ
*bodyBODYへのポインタ

Return

KOD_TRUE

EvenOdd

int DXF_PARSER::EvenOdd(int val)

奇数偶数判別

Parameter

val整数値

Return

偶数:EVEN, 奇数:ODD

CheckSection

int DXF_PARSER::CheckSection(char *str)

セクション判別

Parameter

*str1行

Return

各セクションのシンボル

InitDisplayStat

void DXF_PARSER::InitDisplayStat(DispStat *Dstat)

各エンティティの表示属性を設定

Parameter

*Dstat表示属性
DXF_PARSER::DXF_PARSER()
コンストラクタ
int DXF_PARSER::DXF_Parser_Main(BODY *body,
const char *DXF_fname)
DXFパーサメイン
int DXF_PARSER::ReadEntitiesSection(FILE *fp,
int Line,
BODY *body)
エンティティセクションの読み込み
int DXF_PARSER::ChangeEntityforNurbs(BODY *body)
円,直線エンティティをNURBSに変換
int DXF_PARSER::GetArcData(FILE *fp,
BODY *body)
円弧のデータを取得しBODYに格納
int DXF_PARSER::CalcUVvec(CIRA *Cira)
CIRAのUV直交座標を設定する
int DXF_PARSER::SetStartEndPtArc(CIRA *Cira)
円弧の始点,終点をセット Parameter: *Cira - 円/円弧へのポインタ
int DXF_PARSER::GetCircleData(FILE *fp,
BODY *body)
円のデータを取得しBODYに格納
int DXF_PARSER::GetLineData(FILE *fp,
BODY *body)
線分のデータを取得しBODYに格納
int DXF_PARSER::ResearchEntNum(FILE *fp,
BODY *body)
各エンティティの数をリサーチ
int DXF_PARSER::ReadTablesSection(FILE *fp,
int Line,
BODY *body)
テーブルセクションの読み込み(スケルトン)
int DXF_PARSER::ReadBlocksSection(FILE *fp,
int Line,
BODY *body)
ブロックセクションの読み込み(スケルトン)
int DXF_PARSER::ReadObjectsSection(FILE *fp,
int Line,
BODY *body)
オブジェクトセクションの読み込み(スケルトン)
int DXF_PARSER::EvenOdd(int val)
奇数偶数判別
int DXF_PARSER::CheckSection(char *str)
セクション判別
void DXF_PARSER::InitDisplayStat(DispStat *Dstat)
各エンティティの表示属性を設定