|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Objectcom.nttdocomo.ui.sound3d.CartesianListener
デカルト座標でリスナ(聴者)の位置と向きを指定するオブジェクトを定義します。
リスナの位置と向きを指定する際の考え方は、
デカルト座標の各成分は float で指定しますが、
Transform クラスで 視点座標への変換となるように行列の要素を設定するのと同様です。
すなわち、リスナの向きは、リスナの位置に加えて参照点および上方向ベクトルを指定することによって決まります。
視線方向((参照点 - リスナの位置)によって計算されるベクトル)と上方向ベクトルとが垂直でないときは、
視線方向と垂直になるように上方向ベクトルを補正したものを用いて処理が行われます。
Vector3D と同様にシステム内部で整数演算に変換されて処理されます。
CartesianPosition| コンストラクタの概要 | |
CartesianListener()
リスナの位置と向きを指定するオブジェクトを生成します。 |
|
| メソッドの概要 | |
Vector3D |
getVelocity() [iアプリオプションAPI]
リスナの移動方向と速度を取得します。 |
void |
setLookAt(Vector3D position,
Vector3D look,
Vector3D up)
リスナの位置と参照点と上方向を指定してリスナの向きを設定します。 |
void |
setTransform(Transform transform)
リスナ中心の座標系に変換するための行列を指定してリスナの向きを設定します。 |
void |
setVelocity(Vector3D vector) [iアプリオプションAPI]
リスナの移動方向と速度を指定します。 |
| クラス Object から継承したメソッド |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| コンストラクタの詳細 |
public CartesianListener()
リスナの位置と向きを指定するオブジェクトを生成します。
デフォルトでは、各パラメータは以下のように設定されています。
| メソッドの詳細 |
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 幅の値に変換したときに、
この条件を満たす場合にも発生します。
public void setTransform(Transform transform)
リスナ中心の座標系に変換するための行列を指定してリスナの向きを設定します。
リスナの位置と向きを setLookAt(com.nttdocomo.ui.util3d.Vector3D, com.nttdocomo.ui.util3d.Vector3D, com.nttdocomo.ui.util3d.Vector3D) メソッドを使用して指定する代わりに、
Transform オブジェクトにリスナの位置と向きを設定しておいて、
それをリスナ中心の座標系に変換するための行列として指定することができます。
transform - リスナ中心の座標系に変換するための行列を指定します。
NullPointerException - 引数 transform
に null が指定された場合に発生します。
public void setVelocity(Vector3D vector) [iアプリオプションAPI]
リスナの移動方向と速度を指定します。 リスナの移動方向と速度はドップラー効果の計算のためにのみ使用され、 リスナの位置や向きには影響しません。
このメソッドで指定した速度に座標変換係数をかけた値が実際の速度として使用されます。
[DoJa-4.0 (901i) 以降]
端末によってはサポートされない場合があります。
サポートされない場合、本メソッドの呼び出しは無視されます。
例外は発生しません。
[DoJa-5.0 (903i) 以降]
デフォルトでは null が指定されたのと同じ状態になっています。
vector - リスナの移動方向と速度を表すベクトルを指定します。
引数に null を指定した場合は零ベクトルが指定されたものとみなされます。public Vector3D getVelocity() [iアプリオプションAPI]
リスナの移動方向と速度を取得します。
setVelocity(Vector3D) メソッドで null が設定された場合は、
このメソッドは null を返します。
[DoJa-4.0 (901i) 以降]
端末によってはサポートされない場合があります。
サポートされない場合は、 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ドコモの商標または登録商標です。
その他記載された会社名、製品名などは該当する各社の商標または登録商標です。