kGLModel
クラス KGLModelData

java.lang.Object
  上位を拡張 kGLModel.KGLModelData
直系の既知のサブクラス:
KGLMetaseq

public class KGLModelData
extends java.lang.Object

JOGLを使用してファイルからモデルデータの読み込みと描画を行う
使用後はClear()を呼んでください
OpenGLへ登録したリソースの解放をします。

作成者:
kei

メソッドの概要
 void Clear()
          OpenGLへ登録したリソースを解放する
static KGLModelData createGLModel(javax.media.opengl.GL in_gl, KGLTextures in_texPool, java.io.File dataFile, float scale, KGLCoordinates in_coordinates, boolean in_isUpperGround, boolean in_isUseVBO)
          ファイル名の拡張子を見て読み込みクラスを作成する。
static KGLModelData createGLModel(javax.media.opengl.GL in_gl, KGLTextures in_texPool, java.net.URL dataFile, float scale, KGLCoordinates in_coordinates, boolean in_isUpperGround, boolean in_isUseVBO)
          ファイル名の拡張子を見て読み込みクラスを作成する。
 void disables()
          描画で使ったフラグ(enables()で設定したもの)をおとす
glDsableするものは
GL_DEPTH_TEST
GL_ALPHA_TEST
GL_NORMALIZE
 void draw()
          描画
内部に持っているデータを描画する
 void draw(float alpha)
          描画
内部に持っているデータを描画する
 void enables(float scale)
          描画に必要なglEnable処理を一括して行う。
 KGLPoint getMaxPos()
          モデルの頂点の最小値を取り出す
 KGLPoint getMinPos()
          モデルの頂点の最大値を取り出す
 void materialVisible(java.lang.String materialtName, boolean isVisible)
          描画有無を変更する
 void materialVisible(java.lang.String objectName, java.lang.String materialtName, boolean isVisible)
          描画有無を変更する
 void objectVisible(java.lang.String objectName, boolean isVisible)
          描画有無を変更する
 java.lang.String toString()
          読み込んだオブジェクト/マテリアル名称を文字列にする
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

メソッドの詳細

createGLModel

public static KGLModelData createGLModel(javax.media.opengl.GL in_gl,
                                         KGLTextures in_texPool,
                                         java.io.File dataFile,
                                         float scale,
                                         KGLCoordinates in_coordinates,
                                         boolean in_isUpperGround,
                                         boolean in_isUseVBO)
                                  throws KGLException
ファイル名の拡張子を見て読み込みクラスを作成する。
→MQOファイルしか作ってないけどね!

パラメータ:
in_gl - OpenGLコマンド群をカプセル化したクラス
in_texPool - テクスチャ管理クラス(nullならこのクラス内部に作成)
dataFile - ファイル名
scale - モデルの倍率
in_coordinates - 表示座標情報クラス
in_isUpperGround - モデルデータの高さ方向の最低値を原点に補正するかどうか
in_isUseVBO - 頂点配列バッファを使用するかどうか
戻り値:
モデルデータクラス
例外:
KGLException

createGLModel

public static KGLModelData createGLModel(javax.media.opengl.GL in_gl,
                                         KGLTextures in_texPool,
                                         java.net.URL dataFile,
                                         float scale,
                                         KGLCoordinates in_coordinates,
                                         boolean in_isUpperGround,
                                         boolean in_isUseVBO)
                                  throws KGLException
ファイル名の拡張子を見て読み込みクラスを作成する。
→MQOファイルしか作ってないけどね!

パラメータ:
in_gl - OpenGLコマンド群をカプセル化したクラス
in_texPool - テクスチャ管理クラス(nullならこのクラス内部に作成)
dataFile - URL名
scale - モデルの倍率
in_coordinates - 表示座標情報クラス
in_isUpperGround - モデルデータの高さ方向の最低値を原点に補正するかどうか
in_isUseVBO - 頂点配列バッファを使用するかどうか
戻り値:
モデルデータクラス
例外:
KGLException

Clear

public void Clear()
OpenGLへ登録したリソースを解放する


objectVisible

public void objectVisible(java.lang.String objectName,
                          boolean isVisible)
描画有無を変更する

パラメータ:
objectName - オブジェクト名
isVisible - 描画有無

materialVisible

public void materialVisible(java.lang.String materialtName,
                            boolean isVisible)
描画有無を変更する

パラメータ:
materialtName - マテリアル名
isVisible - 描画有無

materialVisible

public void materialVisible(java.lang.String objectName,
                            java.lang.String materialtName,
                            boolean isVisible)
描画有無を変更する

パラメータ:
objectName - オブジェクト名
materialtName - マテリアル名
isVisible - 描画有無

enables

public void enables(float scale)
描画に必要なglEnable処理を一括して行う。
glEnableするものは
GL_DEPTH_TEST
GL_ALPHA_TEST
GL_NORMALIZE(scaleが1.0以外の場合のみ)
これらが必要ないことがわかっているときは手動で設定するほうがよいと思います

パラメータ:
scale - 描画するサイズ(1倍以外はOpenGLに余計な処理が入る)

disables

public void disables()
描画で使ったフラグ(enables()で設定したもの)をおとす
glDsableするものは
GL_DEPTH_TEST
GL_ALPHA_TEST
GL_NORMALIZE


draw

public void draw()
描画
内部に持っているデータを描画する


draw

public void draw(float alpha)
描画
内部に持っているデータを描画する

パラメータ:
alpha - 描画する透明度(0〜1)

toString

public java.lang.String toString()
読み込んだオブジェクト/マテリアル名称を文字列にする

オーバーライド:
クラス java.lang.Object 内の toString

getMaxPos

public KGLPoint getMaxPos()
モデルの頂点の最小値を取り出す


getMinPos

public KGLPoint getMinPos()
モデルの頂点の最大値を取り出す