|
FineKernelToolKit 4.2.13
|
2D スプライトモデルクラス [詳解]
#include <FK/SpriteModel.h>
FK::fk_SpriteModel の継承関係図
FK::fk_SpriteModel 連携図公開メンバ関数 | |
| fk_SpriteModel (void) | |
| コンストラクタ | |
| ~fk_SpriteModel (void) | |
| デストラクタ | |
| bool | entryFirst (fk_Window *win, fk_Scene *scene, fk_Model *camera=nullptr) |
| fk_Scene へのエントリー関数 | |
| bool | readBMP (const std::string filename) |
| Windows Bitmap (BMP)画像読み込み関数 | |
| bool | readPNG (const std::string filename) |
| PNG画像読み込み関数 | |
| bool | readJPG (const std::string filename) |
| JPEG(JPG)画像読み込み関数 | |
| void | setImage (fk_Image *image) |
| 画像データセット関数1 | |
| void | setImage (fk_Image &image) |
| 画像データセット関数2 | |
| fk_Image * | getImage (void) |
| 画像データ参照関数 | |
| fk_RectTexture * | getTexture (void) |
| テクスチャデータ参照関数 | |
| void | setTextureMode (fk_TexMode mode) |
| テクスチャモード設定関数 | |
| fk_TexMode | getTextureMode (void) |
| テクスチャモード取得関数 | |
| void | setPositionLT (double x, double y) |
| 画像位置指定関数 | |
| void | setSpriteArea (double x, double y, double w, double h) |
| 画像表示領域指定関数 | |
| void | setSpriteSize (double width=-1.0, double height=-1.0) |
| 表示サイズ設定関数 | |
| fk_TexCoord | getSpriteSize (void) |
| 表示サイズ取得関数 | |
| void | setSpriteSmoothMode (bool mode) |
| 画像表示モード設定関数 | |
| bool | getSpriteSmoothMode (void) |
| 画像表示モード取得関数 | |
| bool | initFont (const std::string fontFileName) |
| 文字列描画用フォント設定関数 | |
| void | drawText (const std::string str, fk_StringCode code=fk_StringCode::SJIS) |
| 文字列表示関数 | |
| void | drawText (const std::string str, bool mode, fk_StringCode code=fk_StringCode::SJIS) |
| 初期化設定付き文字列表示関数 | |
| void | clearText (void) |
| 文字列消去関数 | |
基底クラス FK::fk_Model に属する継承公開メンバ関数 | |
| fk_Model (fk_Shape *shape=nullptr) | |
| コンストラクタ | |
| virtual | ~fk_Model () |
| デストラクタ | |
| unsigned int | getID (void) const |
| ID参照関数 | |
| bool | glRotate (fk_Vector origin, fk_Axis axis, double theta) |
| グローバル座標系座標軸回転関数1 | |
| bool | glRotate (double orgX, double orgY, double orgZ, fk_Axis axis, double theta) |
| グローバル座標系座標軸回転関数2 | |
| bool | glRotate (fk_Vector A, fk_Vector B, double theta) |
| グローバル座標系任意軸回転関数1 | |
| bool | glRotate (double Ax, double Ay, double Az, double Bx, double By, double Bz, double theta) |
| グローバル座標系任意軸回転関数2 | |
| bool | loRotate (fk_Vector origin, fk_Axis axis, double theta) |
| ローカル座標系座標軸回転関数1 | |
| bool | loRotate (double orgX, double orgY, double orgZ, fk_Axis axis, double theta) |
| ローカル座標系座標軸回転関数2 | |
| bool | loRotate (fk_Vector A, fk_Vector B, double theta) |
| ローカル座標系任意軸回転関数1 | |
| bool | loRotate (double Ax, double Ay, double Az, double Bx, double By, double Bz, double theta) |
| ローカル座標系任意軸回転関数2 | |
| bool | glRotateWithVec (fk_Vector origin, fk_Axis axis, double theta) |
| グローバル座標系座標軸回転(姿勢付き)関数1 | |
| bool | glRotateWithVec (double orgX, double orgY, double orgZ, fk_Axis axis, double theta) |
| グローバル座標系座標軸回転(姿勢付き)関数2 | |
| bool | glRotateWithVec (fk_Vector A, fk_Vector B, double theta) |
| グローバル座標系任意軸回転(姿勢付き)関数1 | |
| bool | glRotateWithVec (double Ax, double Ay, double Az, double Bx, double By, double Bz, double theta) |
| グローバル座標系任意軸回転(姿勢付き)関数2 | |
| bool | loRotateWithVec (fk_Vector origin, fk_Axis axis, double theta) |
| ローカル座標系座標軸回転(姿勢付き)関数1 | |
| bool | loRotateWithVec (double orgX, double orgY, double orgZ, fk_Axis axis, double theta) |
| ローカル座標系座標軸回転(姿勢付き)関数2 | |
| bool | loRotateWithVec (fk_Vector A, fk_Vector B, double theta) |
| ローカル座標系任意軸回転(姿勢付き)関数1 | |
| bool | loRotateWithVec (double Ax, double Ay, double Az, double Bx, double By, double Bz, double theta) |
| ローカル座標系任意軸回転(姿勢付き)関数2 | |
| bool | glTranslate (fk_Vector v) |
| グローバル座標系平行移動関数1 | |
| bool | glTranslate (double x, double y, double z) |
| グローバル座標系平行移動関数2 | |
| bool | loTranslate (fk_Vector v) |
| ローカル座標系平行移動関数1 | |
| bool | loTranslate (double x, double y, double z) |
| ローカル座標系平行移動関数2 | |
| bool | glMoveTo (fk_Vector p) |
| グローバル座標系位置指定関数1 | |
| bool | glMoveTo (double x, double y, double z) |
| グローバル座標系位置指定関数2 | |
| void | setShape (fk_Shape *shape) |
| 形状設定関数 | |
| fk_Shape * | getShape (void) const |
| 形状参照関数 | |
| void | setMaterial (const fk_Material &mat) |
| マテリアル設定関数 | |
| void | setPointColor (fk_Color *col) |
| 頂点色設定関数1 | |
| void | setPointColor (float r, float g, float b) |
| 頂点色設定関数2 | |
| void | setLineColor (fk_Color *col) |
| 稜線色設定関数1 | |
| void | setLineColor (float r, float g, float b) |
| 稜線色設定関数2 | |
| void | setCurveColor (fk_Color *col) |
| 曲線色設定関数1 | |
| void | setCurveColor (float r, float g, float b) |
| 曲線色設定関数2 | |
| fk_Material * | getMaterial (void) |
| マテリアル参照関数 | |
| fk_Color * | getPointColor (void) |
| 頂点色参照関数 | |
| fk_Color * | getLineColor (void) |
| 稜線色参照関数 | |
| fk_Color * | getCurveColor (void) |
| 曲線色参照関数 | |
| void | setDrawMode (const fk_Draw mode) |
| 描画モード設定関数 | |
| fk_Draw | getDrawMode (void) const |
| 描画モード参照関数 | |
| void | setElementMode (const fk_ElementMode mode) |
| 要素モード設定関数 | |
| fk_ElementMode | getElementMode (void) const |
| 要素モード設定関数 | |
| void | setShadingMode (fk_ShadingMode mode) |
| シェーディングモード設定関数 | |
| fk_ShadingMode | getShadingMode (void) const |
| シェーディングモード取得関数 | |
| void | setBlendMode (const fk_BlendMode mode, const fk_BlendFactor srcFactor=fk_BlendFactor::SRC_ALPHA, const fk_BlendFactor dstFactor=fk_BlendFactor::ONE_MINUS_SRC_ALPHA) |
| ブレンドモード設定関数 | |
| fk_BlendMode | getBlendMode (fk_BlendFactor *outSrc=nullptr, fk_BlendFactor *outDst=nullptr) const |
| ブレンドモード参照関数 | |
| void | setSmoothMode (const bool mode) |
| スムースモード設定関数 | |
| bool | getSmoothMode (void) const |
| スムースモード参照関数 | |
| void | setReverseDrawMode (const bool mode) |
| 描画順序制御関数 | |
| bool | getReverseDrawMode (void) const |
| 描画順序参照関数 | |
| void | setDepthMode (const fk_DepthMode mode) |
| 前後関係制御関数 | |
| fk_DepthMode | getDepthMode (void) const |
| 前後関係参照関数 | |
| void | setTextureMode (fk_TexMode mode) |
| テクスチャモード設定関数 | |
| fk_TexMode | getTextureMode (void) |
| テクスチャモード取得関数 | |
| void | setPointSize (const double size) |
| 頂点描画サイズ設定関数 | |
| double | getPointSize (void) const |
| 頂点描画サイズ参照関数 | |
| void | setShadowEffect (bool mode) |
| 影投影設定関数 | |
| bool | getShadowEffect (void) |
| 影投影設定参照関数 | |
| void | setShadowDraw (bool mode) |
| 影表示設定関数 | |
| bool | getShadowDraw (void) |
| 影表示設定参照関数 | |
| void | setFogMode (bool mode) |
| 霧効果設定関数 | |
| bool | getFogMode (void) |
| 霧効果設定参照関数 | |
| fk_Matrix | getInhMatrix (void) const |
| 継承変換行列取得関数 | |
| fk_Matrix | getInhInvMatrix (void) const |
| 継承逆変換行列取得関数 | |
| fk_OrthoMatrix | getInhBaseMatrix (void) const |
| 継承移動・回転要素変換行列取得関数 | |
| fk_OrthoMatrix | getInhInvBaseMatrix (void) const |
| 継承移動・回転要素逆変換行列取得関数 | |
| fk_Vector | getInhPosition (void) const |
| 継承位置ベクトル参照関数 | |
| fk_Vector | getInhVec (void) const |
| 継承方向ベクトル参照関数 | |
| fk_Vector | getInhUpvec (void) const |
| 継承アップベクトル参照関数 | |
| fk_Angle | getInhAngle (void) const |
| 継承オイラー角参照関数 | |
| double | getInhScale (void) const |
| 継承全体倍率取得関数 | |
| bool | setParent (fk_Model *model, bool setMode=false) |
| 親モデル設定関数 | |
| void | deleteParent (bool setMode=false) |
| 親モデル解除関数 | |
| fk_Model * | getParent (void) const |
| 親モデル参照関数 | |
| bool | entryChild (fk_Model *model, bool setMode=false) |
| 子モデル設定関数 | |
| bool | deleteChild (fk_Model *model, bool setMode=false) |
| 子モデル解除関数 | |
| void | deleteChildren (bool setMode=false) |
| 全子モデル解除関数 | |
| fk_Model * | foreachChild (fk_Model *model) |
| 子モデル逐次参照関数 | |
| void | snapShot (void) |
| 位置・姿勢保存関数 | |
| bool | restore (void) |
| 位置・姿勢復元関数 | |
| bool | restore (double t) |
| 位置・姿勢途中復元関数 | |
| void | setShader (fk_ShaderBinder *shader) |
| シェーダー設定関数 | |
| fk_ShaderBinder * | getShader (void) |
| シェーダー取得関数 | |
| void | adjustSphere (void) |
| 境界球自動設定関数 | |
| void | adjustAABB (void) |
| AABB 自動設定関数 | |
| void | adjustOBB (void) |
| OBB 自動設定関数 | |
| void | adjustCapsule (void) |
| 境界カプセル自動設定関数(全自動) | |
| void | adjustCapsule (fk_Axis axis) |
| 境界カプセル自動設定関数(座標軸による中心軸設定) | |
| void | adjustCapsule (fk_Vector P, fk_Axis axis) |
| 境界カプセル自動設定関数(中心軸上の点と座標軸) | |
| void | adjustCapsule (fk_Vector S, fk_Vector E, bool mode=false) |
| 境界カプセル自動設定関数(中心軸直接指定) | |
| bool | isInter (fk_Model *model) |
| モデル間干渉判定関数 | |
| std::tuple< bool, double > | isCollision (fk_Model *model) |
| モデル間衝突判定関数 | |
| void | setInterMode (bool mode) |
| 干渉継続モード設定関数 | |
| bool | getInterMode (void) |
| 干渉継続モード取得関数 | |
| bool | getInterStatus (void) |
| 干渉継続状態取得関数 | |
| void | resetInter (void) |
| 干渉継続状態初期化関数 | |
| void | setInterStopMode (bool mode) |
| 干渉自動停止モード設定関数 | |
| bool | getInterStopMode (void) |
| 干渉自動停止モード取得関数 | |
| void | entryInterModel (fk_Model *model) |
| 干渉自動停止モデル登録関数 | |
| void | deleteInterModel (fk_Model *model) |
| 干渉自動停止モデル解除関数 | |
| void | clearInterModel (void) |
| 干渉自動停止モデル初期化関数 | |
基底クラス FK::fk_Boundary に属する継承公開メンバ関数 | |
| fk_Boundary (fk_Type) | |
| コンストラクタ | |
| virtual | ~fk_Boundary () |
| デストラクタ | |
| void | setBMode (fk_BoundaryMode mode) |
| 境界ボリューム選択関数 | |
| fk_BoundaryMode | getBMode (void) |
| 境界ボリューム選択状態参照関数 | |
| void | setSphere (double r) |
| 境界球半径設定関数 | |
| void | setSpherePos (fk_Vector pos) |
| 境界球位置設定関数 | |
| double | getSphere (void) |
| 境界球半径参照関数 | |
| fk_Vector | getSpherePos (void) |
| 境界球位置参照関数 | |
| void | setAABBSize (double x, double y, double z) |
| 軸平行境界ボックス (AABB) サイズ設定関数1 | |
| void | setAABBSize (fk_Vector size) |
| 軸平行境界ボックス (AABB) サイズ設定関数2 | |
| void | setAABBMaxMin (fk_Vector max, fk_Vector min) |
| 軸平行境界ボックス (AABB) 最大最小設定関数 | |
| void | setAABBMax (fk_Vector v) |
| 軸平行境界ボックス (AABB) 最大値側設定関数 | |
| void | setAABBMin (fk_Vector v) |
| 軸平行境界ボックス (AABB) 最小値側設定関数 | |
| fk_Vector | getAABBSize (void) |
| 軸平行境界ボックス (AABB) サイズ取得関数 | |
| fk_Vector | getAABBMax (void) |
| 軸平行境界ボックス (AABB) 最大値側取得関数 | |
| fk_Vector | getAABBMin (void) |
| 軸平行境界ボックス (AABB) 最小値側取得関数 | |
| std::tuple< fk_Vector, fk_Vector > | getAABBMaxMin (void) |
| 軸平行境界ボックス (AABB) 最大最小取得関数 | |
| void | setOBBSize (double x, double y, double z) |
| 有向境界ボックス (OBB) サイズ設定関数1 | |
| void | setOBBSize (fk_Vector size) |
| 有向境界ボックス (OBB) サイズ設定関数2 | |
| void | setOBBMaxMin (fk_Vector max, fk_Vector min) |
| 有向境界ボックス (OBB) 最大最小設定関数 | |
| void | setOBBMax (fk_Vector v) |
| 有向境界ボックス (OBB) 最大値側設定関数 | |
| void | setOBBMin (fk_Vector v) |
| 有向境界ボックス (OBB) 最小値側設定関数 | |
| fk_Vector | getOBBSize (void) |
| 有向境界ボックス (OBB) サイズ取得関数 | |
| fk_Vector | getOBBMax (void) |
| 有向境界ボックス (OBB) 最大値側取得関数 | |
| fk_Vector | getOBBMin (void) |
| 有向境界ボックス (OBB) 最小値側取得関数 | |
| std::tuple< fk_Vector, fk_Vector > | getOBBMaxMin (void) |
| 有向境界ボックス (OBB) 最大最小取得関数 | |
| void | setCapsule (fk_Vector sPos, fk_Vector ePos, double r) |
| カプセル型設定関数 | |
| void | setCapsuleStartPos (fk_Vector argP) |
| カプセル型中心軸始点設定関数 | |
| void | setCapsuleEndPos (fk_Vector argP) |
| カプセル型中心軸終点設定関数 | |
| void | setCapsuleRadius (double r) |
| カプセル型領域規定距離設定関数 | |
| double | getCapsuleRadius (void) |
| カプセル型領域規定距離取得関数 | |
| double | getCapsuleLength (void) |
| カプセル型中心軸長取得関数 | |
| std::tuple< fk_Vector, fk_Vector > | getCapsulePos (void) |
| カプセル型中心軸両端点取得関数 | |
| fk_Vector | getCapsuleStartPos (void) |
| カプセル型中心軸始点取得関数 | |
| fk_Vector | getCapsuleEndPos (void) |
| カプセル型中心軸終点取得関数 | |
| void | setBDrawToggle (bool mode) |
| 境界ボリューム描画有無設定関数 | |
| bool | getBDrawToggle (void) |
| 境界ボリューム描画有無取得関数 | |
| void | setBLineColor (fk_Color col) |
| 境界ボリューム非干渉描画色設定関数 | |
| fk_Color * | getBLineColor (void) |
| 境界ボリューム非干渉描画色取得関数 | |
| void | setBIntLineColor (fk_Color col) |
| 境界ボリューム干渉状態描画色設定関数 | |
| fk_Color * | getBIntLineColor (void) |
| 境界ボリューム干渉状態描画色取得関数 | |
| void | setBLineWidth (double width) |
| 境界ボリューム描画線幅設定関数 | |
| double | getBLineWidth (void) |
| 境界ボリューム描画線幅取得関数 | |
基底クラス FK::fk_MatrixAdmin に属する継承公開メンバ関数 | |
| fk_MatrixAdmin (fk_Type=fk_Type::MATRIXADMIN) | |
| コンストラクタ | |
| virtual | ~fk_MatrixAdmin () |
| デストラクタ | |
| fk_Vector | getPosition (void) const |
| 位置ベクトル取得関数 | |
| fk_Vector | getVec (void) const |
| 方向ベクトル取得関数 | |
| fk_Vector | getUpvec (void) const |
| アップベクトル取得関数 | |
| fk_Angle | getAngle (void) const |
| オイラー角取得関数 | |
| fk_Matrix | getMatrix (void) const |
| 変換行列取得関数 | |
| fk_Matrix | getInvMatrix (void) const |
| 逆変換行列取得関数 | |
| fk_OrthoMatrix | getBaseMatrix (void) const |
| 移動・回転要素変換行列取得関数 | |
| fk_OrthoMatrix | getInvBaseMatrix (void) const |
| 移動・回転要素逆変換行列取得関数 | |
| bool | setScale (const double scale) |
| 全体絶対倍率設定関数 | |
| bool | setScale (const double scale, fk_Axis axis) |
| 軸方向絶対倍率設定関数 | |
| bool | setScale (const double x, const double y, const double z) |
| 軸方向個別絶対倍率設定関数 | |
| bool | prdScale (const double scale) |
| 全体相対倍率設定関数 | |
| bool | prdScale (const double scale, fk_Axis axis) |
| 軸方向相対倍率設定関数 | |
| bool | prdScale (const double x, const double y, const double z) |
| 軸方向個別相対倍率設定関数 | |
| double | getScale (void) const |
| 全体倍率取得関数 | |
| double | getScale (fk_Axis axis) const |
| 軸方向倍率取得関数 | |
| bool | getScaleMode (void) const |
| 拡大縮小状態判定関数 | |
| bool | glRotate_ (fk_Vector &origin, fk_Axis axis, double theta) |
| グローバル座標系座標軸回転関数1 | |
| bool | glRotate_ (double orgX, double orgY, double orgZ, fk_Axis axis, double theta) |
| グローバル座標系座標軸回転関数2 | |
| bool | glRotate_ (fk_Vector &A, fk_Vector &B, double theta) |
| グローバル座標系任意軸回転関数1 | |
| bool | glRotate_ (double Ax, double Ay, double Az, double Bx, double By, double Bz, double theta) |
| グローバル座標系任意軸回転関数2 | |
| bool | loRotate_ (fk_Vector &origin, fk_Axis axis, double theta) |
| ローカル座標系座標軸回転関数1 | |
| bool | loRotate_ (double orgX, double orgY, double orgZ, fk_Axis axis, double theta) |
| ローカル座標系座標軸回転関数2 | |
| bool | loRotate_ (fk_Vector &A, fk_Vector &B, double theta) |
| ローカル座標系任意軸回転関数1 | |
| bool | loRotate_ (double Ax, double Ay, double Az, double Bx, double By, double Bz, double theta) |
| ローカル座標系任意軸回転関数2 | |
| bool | glRotateWithVec_ (fk_Vector &origin, fk_Axis axis, double theta) |
| グローバル座標系座標軸回転(姿勢付き)関数1 | |
| bool | glRotateWithVec_ (double orgX, double orgY, double orgZ, fk_Axis axis, double theta) |
| グローバル座標系座標軸回転(姿勢付き)関数2 | |
| bool | glRotateWithVec_ (fk_Vector &A, fk_Vector &B, double theta) |
| グローバル座標系任意軸回転(姿勢付き)関数1 | |
| bool | glRotateWithVec_ (double Ax, double Ay, double Az, double Bx, double By, double Bz, double theta) |
| グローバル座標系任意軸回転(姿勢付き)関数2 | |
| bool | loRotateWithVec_ (fk_Vector &origin, fk_Axis axis, double theta) |
| ローカル座標系座標軸回転(姿勢付き)関数1 | |
| bool | loRotateWithVec_ (double orgX, double orgY, double orgZ, fk_Axis axis, double theta) |
| ローカル座標系座標軸回転(姿勢付き)関数2 | |
| bool | loRotateWithVec_ (fk_Vector &A, fk_Vector &B, double theta) |
| ローカル座標系任意軸回転(姿勢付き)関数1 | |
| bool | loRotateWithVec_ (double Ax, double Ay, double Az, double Bx, double By, double Bz, double theta) |
| ローカル座標系任意軸回転(姿勢付き)関数2 | |
| bool | glTranslate_ (fk_Vector &v) |
| グローバル座標系平行移動関数1 | |
| bool | glTranslate_ (double x, double y, double z) |
| グローバル座標系平行移動関数2 | |
| bool | loTranslate_ (fk_Vector &v) |
| ローカル座標系平行移動関数1 | |
| bool | loTranslate_ (double x, double y, double z) |
| ローカル座標系平行移動関数2 | |
| bool | glMoveTo_ (fk_Vector &p) |
| グローバル座標系位置指定関数1 | |
| bool | glMoveTo_ (double x, double y, double z) |
| グローバル座標系位置指定関数2 | |
| bool | glFocus (fk_Vector p) |
| グローバル座標系注視点設定関数1 | |
| bool | glFocus (double x, double y, double z) |
| グローバル座標系注視点設定関数2 | |
| bool | loFocus (fk_Vector p) |
| ローカル座標系注視点設定関数1 | |
| bool | loFocus (double x, double y, double z) |
| ローカル座標系注視点設定関数2 | |
| bool | glVec (fk_Vector v) |
| グローバル座標系方向ベクトル設定関数1 | |
| bool | glVec (double x, double y, double z) |
| グローバル座標系方向ベクトル設定関数2 | |
| bool | glUpvec (fk_Vector v) |
| グローバル座標系アップベクトル設定関数1 | |
| bool | glUpvec (double x, double y, double z) |
| グローバル座標系アップベクトル設定関数2 | |
| bool | loUpvec (fk_Vector v) |
| ローカル座標系アップベクトル設定関数1 | |
| bool | loUpvec (double x, double y, double z) |
| ローカル座標系アップベクトル設定関数2 | |
| bool | glAngle (fk_Angle angle) |
| グローバル座標系オイラー角設定関数1 | |
| bool | glAngle (double h, double p, double b) |
| グローバル座標系オイラー角設定関数2 | |
| bool | loAngle (fk_Angle angle) |
| ローカル座標系オイラー角設定関数1 | |
| bool | loAngle (double h, double p, double b) |
| ローカル座標系オイラー角設定関数2 | |
基底クラス FK::fk_BaseObject に属する継承公開メンバ関数 | |
| fk_BaseObject (fk_Type type=fk_Type::BASEOBJECT) | |
| コンストラクタ | |
| fk_Type | getObjectType (void) const |
| タイプ取得関数 | |
公開変数類 | |
| fk_TextImage | text |
| 文字列描画設定用オブジェクト | |
2D スプライトモデルクラス
このクラスは、画像や文字列をディスプレイ座標系に従って配置する機能を提供します。
リアルタイム 3DCG において (3次元空間の投影によらず) ディスプレイ上に直接画像やメッセージ等のビットマップ画像を表示する処理を 「スプライト表示」と呼びます。 スプライト表示を行うための方法はプラットフォームによって異なるため、 FK では直接スプライト表示を行う機能は提供しませんが、 本クラスはディスプレイ座標系での指定に従って、 適切にテクスチャ画像の配置を行うことによって(擬似的に)スプライト表示を実現します。
| FK::fk_SpriteModel::fk_SpriteModel | ( | void | ) |
コンストラクタ
| FK::fk_SpriteModel::~fk_SpriteModel | ( | void | ) |
デストラクタ
| bool FK::fk_SpriteModel::entryFirst | ( | fk_Window * | win, |
| fk_Scene * | scene, | ||
| fk_Model * | camera = nullptr |
||
| ) |
fk_Scene へのエントリー関数
スプライトのサイズやレイアウトを、カメラ・シーン・ウィンドウに合わせて設定します。 fk_Scene へ最初にエントリーする時は、こちらの関数を使ってください。 シーンにはカメラがセット済みである必要があります。 ウィンドウサイズ・カメラ・射影を変更した場合はもう一度呼ばないとサイズがおかしくなります。
| bool FK::fk_SpriteModel::readBMP | ( | const std::string | filename | ) |
Windows Bitmap (BMP)画像読み込み関数
Windows Bitmap 形式 (BMP形式) の画像を読み込みます。
| [in] | filename | BMP形式ファイル名 |
| bool FK::fk_SpriteModel::readPNG | ( | const std::string | filename | ) |
PNG画像読み込み関数
PNG形式の画像を読み込みます。アルファチャンネルによる透過に対応しています。
| [in] | filename | PNG形式ファイル名 |
| bool FK::fk_SpriteModel::readJPG | ( | const std::string | filename | ) |
JPEG(JPG)画像読み込み関数
JPEG形式の画像を読み込みます。
| [in] | filename | PNG形式ファイル名 |
| void FK::fk_SpriteModel::setImage | ( | fk_Image * | image | ) |
| void FK::fk_SpriteModel::setImage | ( | fk_Image & | image | ) |
| fk_Image * FK::fk_SpriteModel::getImage | ( | void | ) |
画像データ参照関数
内部の画像データインスタンスを参照します。 画像サイズを変更しない限りは、内部データを直接変更しても問題ありません。
| fk_RectTexture * FK::fk_SpriteModel::getTexture | ( | void | ) |
テクスチャデータ参照関数
内部テクスチャデータである fk_RectTexture 型インスタンスを参照します。
| void FK::fk_SpriteModel::setTextureMode | ( | fk_TexMode | mode | ) |
テクスチャモード設定関数
内部テクスチャのテクスチャモードを設定します。 テクスチャモードに関する詳細は fk_Texture::setTextureMode() を参照して下さい。
| [in] | mode | テクスチャモード |
| fk_TexMode FK::fk_SpriteModel::getTextureMode | ( | void | ) |
| void FK::fk_SpriteModel::setPositionLT | ( | double | x, |
| double | y | ||
| ) |
画像位置指定関数
指定した座標が左上になるように位置を変更します。 指定する数値は、画面中心を原点とする座標系で、 数値 1 が 1 ピクセルに相当する値になります。
画像の中心位置を指定したい場合は、 fk_Model::glMoveTo() を利用して下さい。
このような操作を行った場合、 再度本関数によって適切な位置に指定を行う必要があります。
| [in] | x | 画像左上の x 座標値。 |
| [in] | y | 画像左上の y 座標値。 |
| void FK::fk_SpriteModel::setSpriteArea | ( | double | x, |
| double | y, | ||
| double | w, | ||
| double | h | ||
| ) |
画像表示領域指定関数
画像の一部分だけを表示領域として切り出します。 本関数での座標系は、画像のピクセル数が横幅 \( W \), 縦幅 \( H \) としたとき、 画像の左上が \( (0, 0) \) であり、右下が \( (W-1, H-1) \) となります。
| [in] | x | 表示領域左上の x 座標値。 |
| [in] | y | 表示領域左上の y 座標値。 |
| [in] | w | 表示領域の横幅ピクセル数。 |
| [in] | h | 表示領域の縦幅ピクセル数。 |
| void FK::fk_SpriteModel::setSpriteSize | ( | double | width = -1.0, |
| double | height = -1.0 |
||
| ) |
表示サイズ設定関数
画像の表示サイズを設定します。 通常は画像の設定時に自動調整を行っていますので、 敢えてそこからサイズを変更したい時に使います。 引数を省略すると、読み込んである画像と同じサイズに復元します。 数値 1 が 1 ピクセルに相当する値になります。
| [in] | width | 表示サイズの横幅。-1 を指定した場合、元画像の横幅となります。 |
| [in] | height | 表示サイズの縦幅。-1 を指定した場合、元画像の縦幅となります。 |
| fk_TexCoord FK::fk_SpriteModel::getSpriteSize | ( | void | ) |
| void FK::fk_SpriteModel::setSpriteSmoothMode | ( | bool | mode | ) |
画像表示モード設定関数
画像を滑らかに表示するかどうかを制御します。 デフォルトでは滑らかに表示する設定になっています。
| [in] | mode | true であれば滑らかな表示に設定し、 false であれば滑らかな表示は行いません。 |
| bool FK::fk_SpriteModel::getSpriteSmoothMode | ( | void | ) |
画像表示モード取得関数
画像を滑らかに表示するかどうかの状態を取得します。
| bool FK::fk_SpriteModel::initFont | ( | const std::string | fontFileName | ) |
文字列描画用フォント設定関数
文字表示を行うための、フォントの設定を行います。 drawText() による文字列表示を行いたい場合は、事前に本関数を実行する必要があります。 ここで指定するものは TrueType 形式のフォントファイルとなります。 通常は「ttf」あるいは「ttc」という拡張子のファイルとなっています。
| [in] | fontFileName | フォントファイル名 |
| void FK::fk_SpriteModel::drawText | ( | const std::string | str, |
| fk_StringCode | code = fk_StringCode::SJIS |
||
| ) |
文字列表示関数
指定された文字列を表示する画像を設定します。 本関数を実行する前に、事前に initFont() でフォント指定を行う必要があります。
| [in] | str | 指定文字列。既に設定されていた文字列があった場合は、その末尾に付け足します。 |
| [in] | code | 文字コード |
| void FK::fk_SpriteModel::drawText | ( | const std::string | str, |
| bool | mode, | ||
| fk_StringCode | code = fk_StringCode::SJIS |
||
| ) |
初期化設定付き文字列表示関数
指定された文字列を表示する画像を設定します。 本関数を実行する前に、事前に initFont() でフォント指定を行う必要があります。
| [in] | str | 指定文字列 |
| [in] | mode | true を渡すとこれまでに入力した文字列を一旦消去し、 新たに文字列を生成します。 false を渡すと、 drawText(const std::string, fk_StringCode) と同様に、 これまでに入力した文字列への付け足しを行います。 |
| [in] | code | 文字コード |
| void FK::fk_SpriteModel::clearText | ( | void | ) |
文字列消去関数
drawText() 関数によって作成した文字列を消去します。
| fk_TextImage FK::fk_SpriteModel::text |
文字列描画設定用オブジェクト
drawText() 関数によって制御される fk_TextImage 型インスタンスです。 このメンバを直接操作することにより、フォントや表示色など多くの属性を制御できます。 詳細は、 fk_TextImage クラスのマニュアルを参照して下さい。