Acelerómetro
http://docs.phonegap.com/es/1.0.0/phonegap_accelerometer_accelerometer.md.html
accelerometer.getCurrentAcceleration
El acelerómetro es un sensor de movimiento que detecta los movimientos relativos a la posición actual orientación del dispositivo (la diferencia). El acelerómetro puede detectar movimiento 3D sobre los ejes x, y, z.
La aceleración se obtiene mediante la función 'callback' accelerometerSuccess.
navigator.accelerometer.getCurrentAcceleration(accelerometerSuccess, accelerometerError);
Ejemplo
function onSuccess(acceleration) {
alert('Aceleración X: ' + acceleration.x + '\n' +
'Aceleración Y: ' + acceleration.y + '\n' +
'Aceleración Z: ' + acceleration.z + '\n' +
'Timestamp: ' + acceleration.timestamp + '\n');
};
function onError() {
alert('onError!');
};
navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);
accelerometer.watchAcceleration
Obtiene la aceleración de los ejes x, y, z, cada un cierto intervalo de tiempo.
La función accelerometer.watchAcceleration se encarga de observar la aceleración cada ciertos intervalos de tiempo. Cada vez que el visor de aceleración obtiene la aceleración, la función accelerometerSuccess se disparara. Puedes especificar el intervalo (milisegundos) en la opción frequency del objeto acceleratorOptions.
Esta función retorna un identificador que referencia a este visor de aceleración, puedes usarlo en la función clearWatchpara detenerlo.
var watchID = navigator.accelerometer.watchAcceleration(accelerometerSuccess,
accelerometerError,
[accelerometerOptions]);
Ejemplo
function onSuccess(acceleration) {
alert('Aceleración X: ' + acceleration.x + '\n' +
'Aceleración Y: ' + acceleration.y + '\n' +
'Aceleración Z: ' + acceleration.z + '\n' +
'Timestamp: ' + acceleration.timestamp + '\n');
};
function onError() {
alert('onError!');
};
var options = { frequency: 3000 }; // Actualizar cada 3 segundos
var watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
accelerometer.clearWatch
Detiene el visor de aceleración con el watchID especificado.
navigator.accelerometer.clearWatch(watchID);
- watchID: El identificador del visor de aceleración watchAcceleration que quieres detener.
Acceleration
Obtiene información actual sobre el sensor de movimiento.
Atributos
- x: Valor de movimiento en el eje X. Rango [0, 1] (Number)
- y: Valor de movimiento en el eje Y. Rango [0, 1] (Number)
- z: Valor de movimiento en el eje Z. Rango [0, 1] (Number)
- timestamp: Timestamp de cuando se obtuvo (milisegundos). (DOMTimeStamp)
Ejemplo Rapido
function onSuccess(acceleration) {
alert('Aceleración X: ' + acceleration.x + '\n' +
'Aceleración Y: ' + acceleration.y + '\n' +
'Aceleración Z: ' + acceleration.z + '\n' +
'Timestamp: ' + acceleration.timestamp + '\n');
};
function onError() {
alert('onError!');
};
navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);
accelerometerSuccess
Función 'callback' onSuccess que proporciona información sobre la aceleración.
function(acceleration) {
// Hacer algo...
}
Argumentos
• acceleration: La aceleración actual. (Aceleración)
Ejemplo
function onSuccess(acceleration) {
alert('Aceleración X: ' + acceleration.x + '\n' +
'Aceleración Y: ' + acceleration.y + '\n' +
'Aceleración Z: ' + acceleration.z + '\n' +
'Timestamp: ' + acceleration.timestamp + '\n');
};
accelerometerError
Funcion 'callback' onError para las funciones de aceleración.
function() {
// Maneja el error
}
accelerometerOptions
Este argumento es opcional y sirve para personalizar la obtención del acelerómetro.
Opciones
- frequency: Cada cuantos milisegundos obtener la aceleración (Acceleration). (Number) (Por defecto: 10000)