72 #ifndef __FK_SHAPE_VIEWER_HEADER__
73 #define __FK_SHAPE_VIEWER_HEADER__
84 #ifndef FK_DOXYGEN_USER_PROCESS
86 enum fk_ShapeGUIMenuItem {
98 FK_SV_GUI_LIGHTROTATE,
105 FK_SV_GUI_VERTEXCOLOR,
161 Fl_Window *mainWindow;
178 std::vector<fk_Model *> modelArray;
179 std::map<int, int> IDMap;
180 fk_Model lightModel[2], camera, axisModel;
185 std::vector<fk_Material *> polyMaterial;
186 std::vector<fk_Color *> edgeColor;
187 std::vector<fk_Color *> vertexColor;
189 void InitValue(
void);
191 void InitWindow(
void);
193 void LightInit(
void);
197 void RotateLight(
double);
198 bool MenuSelect(
void);
199 void SetOrientation(
double,
double,
double,
double);
200 void SetAxisLine(
double);
201 void MovePosition(
double,
double,
double);
202 void DragShape(
void);
203 void KeyHandle(
void);
204 std::string CommonFileChooser(std::string,
int, std::string);
205 void SetAllMaterial(
void);
206 void SetSceneFlg(fk_ShapeGUIMenuItem);
208 void GetMaterial(
int, fk_ShapeGUIMenuItem,
209 double *,
double *,
double *);
210 void SetMaterial(
int, fk_ShapeGUIMenuItem,
211 double,
double,
double);
212 void SetDrawMode(
void);
763 void setPosition(
int ID,
double x,
double y,
double z);
794 void setAngle(
int ID,
double h,
double p,
double b);
824 void setVec(
int ID,
double x,
double y,
double z);
854 void setUpvec(
int ID,
double x,
double y,
double z);
1034 void printf(
const char *format, ...);
1047 #endif // !__FK_SHAPE_VIEWER_HEADER__
fk_PutStrMode getPutStrMode(void)
メッセージ出力モード参照関数
void setPutStrMode(const fk_PutStrMode mode)
メッセージ出力モード設定関数
fk_Color getBGColor(void)
背景色参照関数
int getSkipFrame(void)
スキップフレーム数参照関数
bool getBlendStatus(void)
透過処理参照関数
void setBGColor(fk_Color col)
背景色設定関数1
void setDrawMode(fk_DrawMode mode)
描画モード設定関数
bool getOGLPointerMode(void)
OpenGL 頂点配列処理参照関数
光源を管理するクラス
Definition: Light.h:119
int getModelNum(void)
形状設定数参照関数
void clearModel(void)
形状設定初期化関数
fk_FrameMode getFrameMode(void)
フレームレート制御方法参照関数
void setPointSize(int ID, double size)
形状頂点描画サイズ設定関数
void setFrameMode(fk_FrameMode mode)
フレームレート制御方法指定関数
有向線分を生成、管理するクラス
Definition: Line.h:92
double getAxisScale(void)
座標軸大きさ参照関数
モデルを生成、管理するクラス
Definition: Model.h:139
fk_SnapProcMode
画像取り込み方法を表す列挙型
Definition: Image.h:128
オイラー角を表すクラス
Definition: Angle.h:90
簡易形状表示システム用クラス
Definition: ShapeViewer.h:150
3次元ベクトルを管理するクラス
Definition: Vector.h:110
void putString(const std::string &str)
メッセージ出力文字列設定関数
void setPosition(int ID, fk_Vector pos)
形状位置設定関数1
void setUpvec(int ID, fk_Vector vec)
形状アップベクトル設定関数1
void setScale(double scale)
カメラ倍率設定関数
形状用基底クラス
Definition: Shape.h:86
RGB色を管理するクラス
Definition: Material.h:92
Windows Bitmap (BMP) 形式
Definition: Image.h:122
シーンを制御するクラス
Definition: Scene.h:109
double getBank(void)
カメラバンク角参照関数
bool getAxisMode(void)
座標軸描画参照関数
void setBank(double angle)
カメラバンク角設定関数
void setWindowSize(int w, int h)
描画領域サイズ変更関数
void setFrameInterval(int ms)
フレーム間時間設定関数
void setShape(fk_Shape *shape)
単独形状設定関数
double getPitch(void)
カメラピッチ角参照関数
void printf(const char *format,...)
メッセージ出力書式付き設定関数
void setAxisMode(bool mode)
座標軸描画設定関数
virtual ~fk_ShapeViewer()
デストラクタ
void setPitch(double angle)
カメラピッチ角設定関数
void setBlendStatus(bool mode)
透過処理設定関数
double getScale(void)
カメラ倍率参照関数
FK の各クラスの基盤となる基本クラス
Definition: Base.h:212
void setAxisScale(double scale)
座標軸大きさ設定関数
bool setPutFile(const std::string &str)
メッセージ出力用ファイル設定関数
半稜線構造 (Half-Edge Structure) による任意形状を生成、管理するクラス
Definition: Solid.h:137
マテリアル(質感)を管理するクラス
Definition: Material.h:311
double getPointSize(int ID)
形状頂点描画サイズ参照関数
void setLineWidth(int ID, double width)
形状稜線描画幅設定関数
fk_ImageType
画像フォーマットを表す列挙型
Definition: Image.h:121
int getFrameInterval(void)
フレーム間時間参照関数
画像を生成、管理するクラス
Definition: Image.h:235
void setAngle(int ID, fk_Angle angle)
形状姿勢設定関数1
void clearBrowser(void)
メッセージ出力用ブラウザ初期化関数
virtual bool shapeProcess(fk_Solid *shape)
形状設定時処理関数
void setVec(int ID, fk_Vector vec)
形状方向ベクトル設定関数1
fk_PutStrMode
メッセージ出力タイプを表す列挙型
Definition: Window.h:144
void setEdgeColor(int ID, fk_Color col)
形状稜線描画色設定関数
bool snapImage(std::string fileName, fk_ImageType format=FK_IMAGE_BMP, fk_SnapProcMode mode=FK_SNAP_GL_FRONT)
描画画像ファイル出力関数
void setVertexColor(int ID, fk_Color col)
形状頂点描画色設定関数
void setHead(double angle)
カメラヘッド角設定関数
画像サイズを表すクラス
Definition: Image.h:141
unsigned int fk_FrameMode
フレーム制御タイプを表す型
Definition: Window.h:94
unsigned int fk_DrawMode
Definition: Model.h:81
FLTK 用シーン描画ウィジェットクラス
Definition: Window.h:189
fk_DrawMode getDrawMode(void)
描画モード参照関数
OpenGL フロントバッファ
Definition: Image.h:129
void setMaterial(int ID, fk_Material mat)
形状マテリアル設定関数
double getHead(void)
カメラヘッド角参照関数
void setOGLPointerMode(bool mode)
OpenGL 頂点配列処理制御関数
fk_Shape * getShape(int ID=0)
形状参照関数
fk_Vector getCenter(void)
描画領域中心座標参照関数
fk_ShapeViewer(int w=300, int h=360)
コンストラクタ
double getLineWidth(int ID)
形状稜線描画幅参照関数