BODY.cpp

Summary
BODY.cpp
Functions
BODYBODYクラスのコンストラクタ.各種初期化
NewBodyElemBODYクラスのメモリー確保
DleBodyElemBODYを構成する全エンティティのメモリ開放
DelBodyElemBODYを構成するエンティティを指定した数だけメモリ開放
CopyBody他のBODYを自身にコピーする
RotBodyBODYを回転させる
ShiftBodyBODYをシフトさせる
ExpandBodyBODYの拡大縮小
RegistBody自分を新たなBODYとして登録する
RegistNurbsCtoBody1つのNURBS曲線を新たなBODYとして登録する
RegistNurbsCtoBodyNN個のNURBS曲線を新たなBODYとして登録する
RegistNurbsStoBody1個のNURBS曲面を新たなBODYとして登録する
RegistNurbsStoBodyNN個のNURBS曲面を新たなBODYとして登録する
ChangeStatColorエンティティのステータスで定義されている色を変更
InitCurveColor線の色の初期値を与える
InitSurfaceColor面の色の初期値を与える
NewCirA円・円弧CIRAを指定した数だけメモリー確保し,初期化する
NewCompC複合曲線COMPCを指定した数だけメモリー確保し,初期化する
NewConA円錐曲線CONAを指定した数だけメモリー確保し,初期化する
NewLine線分LINE_を指定した数だけメモリー確保し,初期化する
NewTMat変換マトリックスTMATを指定した数だけメモリー確保し,初期化する
NewNurbsCNURBS曲線NURBSCを指定した数だけメモリー確保し,初期化する
NewNurbsSNURBS曲線NURBSSを指定した数だけメモリー確保し,初期化する
NewConpS面上線CONPSを指定した数だけメモリー確保し,初期化する
NewTrmSトリム面TRMSを指定した数だけメモリー確保し,初期化する
GetNurbsCFromLine直線エンティティをNURBS曲線エンティティへと変換する
GetNurbsCFromCirA円・円弧エンティティをNURBS曲線エンティティへと変換する
GetOuterEdgeNumトリム面を構成する外側エッジの数を取得する
GetInnerTrmNumトリム面を構成する内側トリムの数を取得する
GetInnerEdgeNumトリム面を構成する内側エッジの数を取得する
GetOuterCompCトリム面を構成する外側トリム曲線(複合曲線)へのポインタを取得する
GetInnerCompCトリム面を構成する外側トリム曲線(複合曲線)へのポインタを取得する

Functions

BODY

BODY::BODY()

BODYクラスのコンストラクタ.各種初期化

NewBodyElem

void BODY::NewBodyElem()

BODYクラスのメモリー確保

DleBodyElem

BODYを構成する全エンティティのメモリ開放

DelBodyElem

void BODY::DelBodyElem(int TypeNum_[])

BODYを構成するエンティティを指定した数だけメモリ開放

Parameters

TypeNum_[]各エンティティ番号をインデックスとした配列に,確保されている各エンティティ数を代入

CopyBody

void BODY::CopyBody(BODY *body)

他のBODYを自身にコピーする

Parameters

*bodyコピー元のBODYポインタ

RotBody

void BODY::RotBody(Coord Axis,
double deg)

BODYを回転させる

Parameters

Axis回転軸
deg回転角度

ShiftBody

void BODY::ShiftBody(Coord d)

BODYをシフトさせる

Parameters

d移動量

ExpandBody

void BODY::ExpandBody(Coord r)

BODYの拡大縮小

Parameters

rX, Y, Z各方向それぞれの拡大(縮小)率(1を基準)

RegistBody

void BODY::RegistBody(BODYList *BodyList,
const char BodyName[])

自分を新たなBODYとして登録する

Parameters

*BodyList登録先リスト
BodyName[]登録するBODY名

RegistNurbsCtoBody

void BODY::RegistNurbsCtoBody(BODYList *BodyList,
NURBSC Nurb,
const char BodyName[])

1つのNURBS曲線を新たなBODYとして登録する

Parameters

*BodyList登録先リスト
Nurb登録するNURBS曲線の実体
BodyName[]登録するBODY名

RegistNurbsCtoBodyN

void BODY::RegistNurbsCtoBodyN(BODYList *BodyList,
NURBSC Nurb[],
const char BodyName[],
int N)

N個のNURBS曲線を新たなBODYとして登録する

Parameters

*BodyList登録先リスト
Nurb[]登録するNURBS曲線の実体
BodyName[]登録するBODY名
N登録するNURBS曲線の数

RegistNurbsStoBody

void BODY::RegistNurbsStoBody(BODYList *BodyList,
NURBSS Nurb,
const char BodyName[])

1個のNURBS曲面を新たなBODYとして登録する

Parameters

*BodyList登録先リスト
Nurb登録するNURBS曲面の実体
BodyName[]登録するBODY名

RegistNurbsStoBodyN

void BODY::RegistNurbsStoBodyN(BODYList *BodyList,
NURBSS Nurb[],
const char BodyName[],
int N)

N個のNURBS曲面を新たなBODYとして登録する

Parameters

*BodyList登録先リスト
Nurb[]登録するNURBS曲面の実体
BodyName[]登録するBODY名
N登録するNURBS曲面の数

ChangeStatColor

void BODY::ChangeStatColor(float *col,
float r,
float g,
float b,
float t)

エンティティのステータスで定義されている色を変更

Parameters

*col色を変更したいエンティティのメンバ変数Dstatのメンバ変数Color[4]へのポインタ
r,g,b,t色属性(0.0 - 1.0)

InitCurveColor

void BODY::InitCurveColor(float *col)

線の色の初期値を与える

Parameters

*col色を変更したいエンティティのメンバ変数Dstatのメンバ変数Color[4]へのポインタ

InitSurfaceColor

void BODY::InitSurfaceColor(float *col)

面の色の初期値を与える

Parameters

*col色を変更したいエンティティのメンバ変数Dstatのメンバ変数Color[4]へのポインタ

NewCirA

CIRA *BODY::NewCirA(int N)

円・円弧CIRAを指定した数だけメモリー確保し,初期化する

Parameters

Nメモリー確保するCIRAの数

NewCompC

COMPC *BODY::NewCompC(int N)

複合曲線COMPCを指定した数だけメモリー確保し,初期化する

Parameters

Nメモリー確保するCOMPCの数

NewConA

CONA *BODY::NewConA(int N)

円錐曲線CONAを指定した数だけメモリー確保し,初期化する

Parameters

Nメモリー確保するCONAの数

NewLine

LINE_ *BODY::NewLine(int N)

線分LINE_を指定した数だけメモリー確保し,初期化する

Parameters

Nメモリー確保するLINE_の数

NewTMat

TMAT *BODY::NewTMat(int N)

変換マトリックスTMATを指定した数だけメモリー確保し,初期化する

Parameters

Nメモリー確保するTMATの数

NewNurbsC

NURBSC *BODY::NewNurbsC(int N)

NURBS曲線NURBSCを指定した数だけメモリー確保し,初期化する

Parameters

Nメモリー確保するNURBSCの数

NewNurbsS

NURBSS *BODY::NewNurbsS(int N)

NURBS曲線NURBSSを指定した数だけメモリー確保し,初期化する

Parameters

Nメモリー確保するNURBSSの数

NewConpS

CONPS *BODY::NewConpS(int N)

面上線CONPSを指定した数だけメモリー確保し,初期化する

Parameters

Nメモリー確保するCONPSの数

NewTrmS

TRMS *BODY::NewTrmS(int N)

トリム面TRMSを指定した数だけメモリー確保し,初期化する

Parameters

Nメモリー確保するTRMSの数

GetNurbsCFromLine

int BODY::GetNurbsCFromLine(int NurbsCount,
int LineCount)

直線エンティティをNURBS曲線エンティティへと変換する

Parameters

NurbsCountNURBS曲線への変換後のNURBSCのインデックス番号
LineCount変換したいLINEのインデックス番号

GetNurbsCFromCirA

int BODY::GetNurbsCFromCirA(int NurbsCount,
int CirCount)

円・円弧エンティティをNURBS曲線エンティティへと変換する

Parameters

NurbsCountNURBS曲線への変換後のNURBSCのインデックス番号
CirCount変換したいCIRAのインデックス番号

GetOuterEdgeNum

int TRMS::GetOuterEdgeNum()

トリム面を構成する外側エッジの数を取得する

Return

トリム面を構成する外側エッジの数

GetInnerTrmNum

int TRMS::GetInnerTrmNum()

トリム面を構成する内側トリムの数を取得する

Return

トリム面を構成する内側トリムの数

GetInnerEdgeNum

int TRMS::GetInnerEdgeNum(int N)

トリム面を構成する内側エッジの数を取得する

Parameters

N内側トリムのインデックス番号

Return

トリム面を構成する内側エッジの数

GetOuterCompC

COMPC *TRMS::GetOuterCompC()

トリム面を構成する外側トリム曲線(複合曲線)へのポインタを取得する

Return

トリム面を構成する外側トリム曲線(複合曲線)へのポインタ

GetInnerCompC

COMPC *TRMS::GetInnerCompC(int N)

トリム面を構成する外側トリム曲線(複合曲線)へのポインタを取得する

Parameters

N内側トリムのインデックス番号

Return

トリム面を構成する外側トリム曲線(複合曲線)へのポインタ

BODY::BODY()
BODYクラスのコンストラクタ.各種初期化
void BODY::NewBodyElem()
BODYクラスのメモリー確保
void BODY::DelBodyElem(int TypeNum_[])
BODYを構成するエンティティを指定した数だけメモリ開放
void BODY::CopyBody(BODY *body)
他のBODYを自身にコピーする
void BODY::RotBody(Coord Axis,
double deg)
BODYを回転させる
void BODY::ShiftBody(Coord d)
BODYをシフトさせる
void BODY::ExpandBody(Coord r)
BODYの拡大縮小
void BODY::RegistBody(BODYList *BodyList,
const char BodyName[])
自分を新たなBODYとして登録する
void BODY::RegistNurbsCtoBody(BODYList *BodyList,
NURBSC Nurb,
const char BodyName[])
1つのNURBS曲線を新たなBODYとして登録する
void BODY::RegistNurbsCtoBodyN(BODYList *BodyList,
NURBSC Nurb[],
const char BodyName[],
int N)
N個のNURBS曲線を新たなBODYとして登録する
void BODY::RegistNurbsStoBody(BODYList *BodyList,
NURBSS Nurb,
const char BodyName[])
1個のNURBS曲面を新たなBODYとして登録する
void BODY::RegistNurbsStoBodyN(BODYList *BodyList,
NURBSS Nurb[],
const char BodyName[],
int N)
N個のNURBS曲面を新たなBODYとして登録する
void BODY::ChangeStatColor(float *col,
float r,
float g,
float b,
float t)
エンティティのステータスで定義されている色を変更
void BODY::InitCurveColor(float *col)
線の色の初期値を与える
void BODY::InitSurfaceColor(float *col)
面の色の初期値を与える
CIRA *BODY::NewCirA(int N)
円・円弧CIRAを指定した数だけメモリー確保し,初期化する
COMPC *BODY::NewCompC(int N)
複合曲線COMPCを指定した数だけメモリー確保し,初期化する
CONA *BODY::NewConA(int N)
円錐曲線CONAを指定した数だけメモリー確保し,初期化する
LINE_ *BODY::NewLine(int N)
線分LINE_を指定した数だけメモリー確保し,初期化する
TMAT *BODY::NewTMat(int N)
変換マトリックスTMATを指定した数だけメモリー確保し,初期化する
NURBSC *BODY::NewNurbsC(int N)
NURBS曲線NURBSCを指定した数だけメモリー確保し,初期化する
NURBSS *BODY::NewNurbsS(int N)
NURBS曲線NURBSSを指定した数だけメモリー確保し,初期化する
CONPS *BODY::NewConpS(int N)
面上線CONPSを指定した数だけメモリー確保し,初期化する
TRMS *BODY::NewTrmS(int N)
トリム面TRMSを指定した数だけメモリー確保し,初期化する
int BODY::GetNurbsCFromLine(int NurbsCount,
int LineCount)
直線エンティティをNURBS曲線エンティティへと変換する
int BODY::GetNurbsCFromCirA(int NurbsCount,
int CirCount)
円・円弧エンティティをNURBS曲線エンティティへと変換する
int TRMS::GetOuterEdgeNum()
トリム面を構成する外側エッジの数を取得する
int TRMS::GetInnerTrmNum()
トリム面を構成する内側トリムの数を取得する
int TRMS::GetInnerEdgeNum(int N)
トリム面を構成する内側エッジの数を取得する
COMPC *TRMS::GetOuterCompC()
トリム面を構成する外側トリム曲線(複合曲線)へのポインタを取得する
COMPC *TRMS::GetInnerCompC(int N)
トリム面を構成する外側トリム曲線(複合曲線)へのポインタを取得する