com.nttdocomo.device.location
クラス AccelerationSensor

Object
  拡張com.nttdocomo.device.location.AccelerationSensor

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

加速度センサ機能を提供します。

加速度センサ機能は、基本機能として加速度を取得する機能を提供します。 加速度センサ機能が計測できる加速度そのもの、 およびその値を変換して得られる値(ロール角、ピッチ角)を取得できます。 また、画面の縦横の向き等を取得できます。 ただし、実装によって取得可能な値は異なります。 計測データの種類については、 AccelerationDataクラスを参照してください。
加速度取得機能では、現在の加速度値を得るワンショット計測と、 周期的に連続して加速度値を得る周期計測を提供します。 周期計測では、実装内部の計測データ蓄積バッファに計測結果を蓄積します。 アプリケーションは、周期計測中あるいは計測後に蓄積バッファ内の計測結果を取得できます。

計測結果は、AccelerationData オブジェクトを介して取得できます。 AccelerationData オブジェクトは ワンショット計測用、 周期計測(全データ)用、 周期計測(最新データ)用に各 1 つずつ生成され、 計測結果は各オブジェクトが保持する配列に格納されます。

加速度センサ機能は、オプション機能としてイベント検知機能を提供します。 イベント検知機能は、 画面の縦横の向きの変化、ダブルタップした位置([DoJa-5.1 (906i) 以降])等を検知し、イベントとして通知します。 実装によってはイベント検知機能をサポートしないことがあります。 また、実装によって検知可能なイベントは異なります。

[DoJa-5.1 (905i) まで] 周期計測中またはイベント検知中にワンショット計測周期計測開始イベント検知開始 を行うと例外が発生します。
[DoJa-5.1 (906i) 以降] 周期計測中にワンショット計測、周期計測開始、イベント検知開始を行なうと例外が発生します。 イベント検知中にワンショット計測、周期計測開始を行なうことが可能です。 イベント検知中にイベント検知開始を行なうと例外が発生します。

加速度取得機能により 「ロール(roll)角」 「ピッチ(pitch)角」を取得することができますが、 「ヨー(yaw)角」に相当する値を知る必要がある場合は、 電子コンパス機能における方位角の値を利用して下さい。

実装によっては、加速度センサ機能をサポートしていない場合があります。
また、電子コンパス機能のサポート有無と、 加速度センサ機能のサポート有無は独立しており、 任意のサポート有無の組み合わせが有り得ることに注意して下さい。

導入されたバージョン:
DoJa-5.0 (904i)

フィールドの概要
static int ACCELERATION_X
          計測データの種類を示す値で、X軸方向の加速度を表します。
static int ACCELERATION_Y
          計測データの種類を示す値で、Y軸方向の加速度を表します。
static int ACCELERATION_Z
          計測データの種類を示す値で、Z軸方向の加速度を表します。
static int DOUBLE_TAP_BACK
          ダブルタップ時の位置を示す値で、端末の背面のダブルタップを表します。
static int DOUBLE_TAP_FRONT
          ダブルタップ時の位置を示す値で、端末のLCD面のダブルタップを表します。
static int DOUBLE_TAP_LEFT
          ダブルタップ時の位置を示す値で、端末の左側面のダブルタップを表します。
static int DOUBLE_TAP_RIGHT
          ダブルタップ時の位置を示す値で、端末の右側面のダブルタップを表します。
static int EVENT_DOUBLE_TAP
          イベント検知機能が検知可能なイベントの種類で、 ダブルタップ操作を表します。
static int EVENT_SCREEN_ORIENTATION
          イベント検知機能が検知可能なイベントの種類で、 画面の縦横の向きの変化を表します。
static int PITCH
          計測データの種類を示す値で、端末の傾き(ピッチ角)を表します。
static int ROLL
          計測データの種類を示す値で、端末の傾き(ロール角)を表します。
static int SCREEN_ORIENTATION
          計測データの種類を示す値で、メインスクリーンの縦横の向きを表します。
 
メソッドの概要
 void disposeData()
          周期計測用の蓄積バッファをクリアします。
static AccelerationSensor getAccelerationSensor()
          加速度センサ機能のインスタンスを返します。
 int[] getAvailableData()
          実装がサポートしている計測データの種類を取得します。
 int[] getAvailableEvent()
          イベント検知機能 がサポートする検知イベントを返します。
 AccelerationData getCurrentData()
          現在の加速度を計測し、結果を取得します(ワンショット計測)。
 AccelerationData getData()
          周期計測用の蓄積データバッファから計測結果を取得します。
 int getDataSize()
          周期計測用の蓄積データバッファに蓄積されているデータ数を取得します。
 int getIntervalResolution()
          周期計測の計測間隔の解像度を取得します。
 int getMaxDataSize()
          周期計測において実装内部で蓄積可能な最大データ数を取得します。
 int getMaxDataValue(int type)
          計測データの最大値を取得します。
 int getMinDataValue(int type)
          計測データの最小値を取得します。
 AccelerationData peekLatestData()
          周期計測用の蓄積データバッファから最新の計測値を1つ取得します。
 void setEventListener(AccelerationEventListener listener)
          イベント検知機能で使用するイベントリスナーを設定します。
 void start(int interval)
          周期計測を開始します。
 void startEventDetection(int event)
          加速度センサ機能にイベント検知を依頼します。
 void stop()
          周期計測を停止します。
 void stopEventDetection()
          加速度センサ機能によるイベント検知を停止します。
 
クラス Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

ACCELERATION_X

public static final int ACCELERATION_X
計測データの種類を示す値で、X軸方向の加速度を表します。(=1)

関連項目:
定数フィールド値

ACCELERATION_Y

public static final int ACCELERATION_Y
計測データの種類を示す値で、Y軸方向の加速度を表します。(=2)

関連項目:
定数フィールド値

ACCELERATION_Z

public static final int ACCELERATION_Z
計測データの種類を示す値で、Z軸方向の加速度を表します。(=3)

関連項目:
定数フィールド値

ROLL

public static final int ROLL
計測データの種類を示す値で、端末の傾き(ロール角)を表します。(=4)

関連項目:
定数フィールド値

PITCH

public static final int PITCH
計測データの種類を示す値で、端末の傾き(ピッチ角)を表します。(=5)

関連項目:
定数フィールド値

SCREEN_ORIENTATION

public static final int SCREEN_ORIENTATION
計測データの種類を示す値で、メインスクリーンの縦横の向きを表します。(=6)

関連項目:
定数フィールド値

EVENT_SCREEN_ORIENTATION

public static final int EVENT_SCREEN_ORIENTATION
イベント検知機能が検知可能なイベントの種類で、 画面の縦横の向きの変化を表します。(=1)

イベントが発生した場合、 リスナーのactionPerformedメソッド が呼ばれます。 このとき、第1引数にこのフィールドの値が、 第2引数に画面の縦横の向きが渡されます。
[第2引数の説明]
メインスクリーンが地面と直交しており、 メインスクリーンの上部が上空方向にある場合、 すなわち、加速度(X, Y, Z)が(0, -1g, 0)である状態を基準とし、 加速度のZ軸を軸として、メインスクリーンに向かって端末を 時計回り方向に回転した角度で表します。 0度、90度、180度、270度のいずれかの値です。

関連項目:
startEventDetection(int), 定数フィールド値

EVENT_DOUBLE_TAP

public static final int EVENT_DOUBLE_TAP
イベント検知機能が検知可能なイベントの種類で、 ダブルタップ操作を表します。(=2)

イベントが発生した場合、 リスナーのactionPerformedメソッド が呼ばれます。 このとき、第1引数にこのフィールドの値が、 第2引数にダブルタップされた位置が渡されます。
[第2引数の説明]
端末のLCD面に向かい、ダブルタップ操作によりタップされた位置が渡されます。 渡される値は、DOUBLE_TAP_LEFTDOUBLE_TAP_RIGHTDOUBLE_TAP_FRONTDOUBLE_TAP_BACK のいずれかの値です。

導入されたバージョン:
DoJa-5.1(906i)
関連項目:
startEventDetection(int), 定数フィールド値

DOUBLE_TAP_LEFT

public static final int DOUBLE_TAP_LEFT
ダブルタップ時の位置を示す値で、端末の左側面のダブルタップを表します。(=0)

導入されたバージョン:
DoJa-5.1(906i)
関連項目:
定数フィールド値

DOUBLE_TAP_RIGHT

public static final int DOUBLE_TAP_RIGHT
ダブルタップ時の位置を示す値で、端末の右側面のダブルタップを表します。(=1)

導入されたバージョン:
DoJa-5.1(906i)
関連項目:
定数フィールド値

DOUBLE_TAP_FRONT

public static final int DOUBLE_TAP_FRONT
ダブルタップ時の位置を示す値で、端末のLCD面のダブルタップを表します。(=2)

導入されたバージョン:
DoJa-5.1(906i)
関連項目:
定数フィールド値

DOUBLE_TAP_BACK

public static final int DOUBLE_TAP_BACK
ダブルタップ時の位置を示す値で、端末の背面のダブルタップを表します。(=3)

導入されたバージョン:
DoJa-5.1(906i)
関連項目:
DOUBLE_TAP_RIGHT