com.docomostar.ui.sound3d
クラス CartesianListener

Object
  上位を拡張 com.docomostar.ui.sound3d.CartesianListener

public class CartesianListener
extends Object
 [iアプリオプションAPI]

デカルト座標でリスナ(聴者)の位置と向きを指定するオブジェクトを定義します。

リスナの位置と向きを指定する際の考え方は、 Transform クラスで 視点座標への変換となるように行列の要素を設定するのと同様です。 すなわち、リスナの向きは、リスナの位置に加えて参照点および上方向ベクトルを指定することによって決まります。 視線方向((参照点 - リスナの位置)によって計算されるベクトル)と上方向ベクトルとが垂直でないときは、 視線方向と垂直になるように上方向ベクトルを補正したものを用いて処理が行われます。

デカルト座標の各成分は float で指定しますが、 Vector3D と同様にシステム内部で整数演算に変換されて処理されます。

導入されたバージョン:
Star-1.0
関連項目:
CartesianPosition

コンストラクタの概要
CartesianListener()
           リスナの位置と向きを指定するオブジェクトを生成します。
 
メソッドの概要
 void setLookAt(Vector3D position, Vector3D look, Vector3D up)
           リスナの位置と参照点と上方向を指定してリスナの向きを設定します。
 void setTransform(Transform transform)
           リスナ中心の座標系に変換するための行列を指定してリスナの向きを設定します。
 
クラス Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

CartesianListener

public CartesianListener()

リスナの位置と向きを指定するオブジェクトを生成します。

デフォルトでは、各パラメータは以下のように設定されています。

メソッドの詳細

setLookAt

public void setLookAt(Vector3D position,
                      Vector3D look,
                      Vector3D up)

リスナの位置と参照点と上方向を指定してリスナの向きを設定します。

このメソッドで指定した位置および参照点に、 CartesianPosition オブジェクトが持つ座標変換係数をかけた値が実際の位置および参照点として使用されます。

パラメータ:
position - リスナの位置を表すベクトルを指定します。
look - リスナの参照点を表すベクトルを指定します。
up - リスナの上方向を表すベクトルを指定します。
例外:
NullPointerException -
引数 position, look, up のいずれかが null の場合に発生します。
IllegalArgumentException -
引数 up が零ベクトルの場合に発生します。 また、この引数が示す値を int 幅の値に変換したときに、 この条件を満たす場合にも発生します。
IllegalArgumentException -
引数 look と position のベクトルが等価な場合に発生します。 また、これらの引数が示す値を int 幅の値に変換したときに、 この条件を満たす場合にも発生します。
IllegalArgumentException -
引数 (look - position) のベクトル演算の結果と、 引数 up のベクトルが平行な場合に発生します。 また、これらの引数が示す値を int 幅の値に変換したときに、 この条件を満たす場合にも発生します。

setTransform

public void setTransform(Transform transform)

リスナ中心の座標系に変換するための行列を指定してリスナの向きを設定します。 リスナの位置と向きを setLookAt(com.docomostar.ui.util3d.Vector3D, com.docomostar.ui.util3d.Vector3D, com.docomostar.ui.util3d.Vector3D) メソッドを使用して指定する代わりに、 Transform オブジェクトにリスナの位置と向きを設定しておいて、 それをリスナ中心の座標系に変換するための行列として指定することができます。

パラメータ:
transform - リスナ中心の座標系に変換するための行列を指定します。
例外:
NullPointerException -
引数 transform に null が指定された場合に発生します。


NTT DOCOMO,INC.

本製品または文書は著作権法により保護されており、その使用、複製、再頒布および逆コンパイルを制限するライセンスのもとにおいて頒布されます。NTTドコモ(その他に許諾者がある場合は当該許諾者も含めて)の書面による事前の許可なく、本製品および関連する文書のいかなる部分も、いかなる方法によっても複製することが禁じられます。フォントを含む第三者のソフトウェアは、著作権法により保護されており、その提供者からライセンスを受けているものです。

Sun、Sun Microsystems、Java、J2MEおよびJ2SEは、米国およびその他の国における米国 Sun Microsystems,Inc.の商標または登録商標です。サンのロゴマークは、米国 Sun Microsystems, Inc.の登録商標です。

FeliCaは、ソニー株式会社が開発した非接触ICカードの技術方式です。FeliCaは、ソニー株式会社の登録商標です。

「iモード」、「iアプリ/アイアプリ」、「i-αppli」ロゴ、「DoJa」はNTTドコモの商標または登録商標です。

その他記載された会社名、製品名などは該当する各社の商標または登録商標です。