com.jblend.graphics.m3d
クラス Camera <Phase3>

java.lang.Object
  |
  +--com.jblend.graphics.m3d.Camera

public class Camera
extends java.lang.Object

視野情報(カメラ)のクラスです。

このクラスを生成または操作しただけではレンダラには反映されません。 RenderContext3D クラスの setCamera() メソッドで、 レンダラに対して設定してください。


フィールドの概要
static int PARALLEL_PROJECTION
          平行投影法を表します。
static int PERSPECTIVE_PROJECTION
          透視投影法を表します。
 
コンストラクタの概要
Camera(int policy)
          カメラオブジェクトを生成します。
 
メソッドの概要
 int getProjectionPolicy()
          現在の投影ポリシーを返します。
 AffineTrans3D getViewTransform()
          視点座標への変換を行列で返します。
 void setParallelScale(int sx, int sy)
          投影面へのスケールを指定して平行投影を設定します。
 void setParallelWH(int width, int height)
          投影面の幅と高さを指定して平行投影を設定します。
 void setPerspectiveFOV(int zNear, int zFar, int angle)
          視野角を指定して透視投影を設定します。
 void setPerspectiveWH(int zNear, int zFar, int width, int height)
          ニアクリップ面における投影面の幅と高さを指定して透視投影を設定します。
 void setViewTransform(AffineTrans3D at)
          視点座標への変換を行列で設定します。
 
クラス java.lang.Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

PARALLEL_PROJECTION

public static final int PARALLEL_PROJECTION
平行投影法を表します。

PERSPECTIVE_PROJECTION

public static final int PERSPECTIVE_PROJECTION
透視投影法を表します。
コンストラクタの詳細

Camera

public Camera(int policy)
カメラオブジェクトを生成します。
パラメータ:
policy - 投影方法。 PARALLEL_PROJECTION または PERSPECTIVE_PROJECTION
メソッドの詳細

getProjectionPolicy

public int getProjectionPolicy()
現在の投影ポリシーを返します。
戻り値:
投影方法。 PARALLEL_PROJECTION または PERSPECTIVE_PROJECTION

setViewTransform

public void setViewTransform(AffineTrans3D at)
視点座標への変換を行列で設定します。
パラメータ:
at - 変換行列
例外:
NullPointerException - 引数 at に null が指定された場合に発生する

getViewTransform

public AffineTrans3D getViewTransform()
視点座標への変換を行列で返します。
戻り値:
at 変換行列。

setParallelWH

public void setParallelWH(int width,
                          int height)
投影面の幅と高さを指定して平行投影を設定します。

投影方法が PARALLEL_PROJECTION の場合だけ有効です。

パラメータ:
width - 投影面の幅
height - 投影面の高

setParallelScale

public void setParallelScale(int sx,
                             int sy)
投影面へのスケールを指定して平行投影を設定します。

投影方法が PARALLEL_PROJECTION の場合だけ有効です。

パラメータ:
sx - X 方向のスケール
sy - Y 方向のスケール

setPerspectiveFOV

public void setPerspectiveFOV(int zNear,
                              int zFar,
                              int angle)
視野角を指定して透視投影を設定します。

投影方法が PERSPECTIVE_PROJECTION の場合だけ有効です。

パラメータ:
zNear - 視点からニアクリップ面までの距離。1〜32766。
zFar - 視点からファークリップ面までの距離。2〜32767。
angle - 視野角(4096分周円単位)。有効範囲は 1〜2047。
例外:
java.lang.IllegalArgumentException - (zNear < zFar) ではない場合に発生する
java.lang.IllegalArgumentException - 範囲外の数値が指定された場合に発生する

setPerspectiveWH

public void setPerspectiveWH(int zNear,
                             int zFar,
                             int width,
                             int height)
ニアクリップ面における投影面の幅と高さを指定して透視投影を設定します。

投影方法が PERSPECTIVE_PROJECTION の場合だけ有効です。

パラメータ:
zNear - 視点からニアクリップ面までの距離。1〜32766。
zFar - 視点からファークリップ面までの距離。2〜32767。
width - ニアクリップ面における投影面の幅
height - ニアクリップ面における投影面の高さ
例外:
java.lang.IllegalArgumentException - (zNear < zFar) ではない場合に発生する
java.lang.IllegalArgumentException - 範囲外の数値が指定された場合に発生する


Copyright 2003 Aplix Corporation. All rights reserved. Aplix Confidential and Restricted.