AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones específicas para móviles / Funciones Sensor
  • Use conditions
  • Device acceleration: definitions
  • Stopping the detection
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
SensorDetectChangeAcceleration (Function)
Notifies when acceleration forces are applied to the device along any of the three axes.
Ejemplo
// Detect the changes of acceleration
SensorDetectChangeAcceleration("ProcDetectAcceleration", snrVertical)
// Procedure called by the SensorDetectChangeAcceleration function
PROCEDURE ProcDetectAcceleration(VerticalAcceleration is real, ...
	HorizontalAcceleration is real, LateralAcceleration is real)
ToastDisplay(StringBuild("Vertical acceleration detected (%1 m/s²)", VerticalAcceleration))

// Stop detecting the changes of acceleration
SensorDetectChangeAcceleration("", snrVertical)
Sintaxis
<Result> = SensorDetectChangeAcceleration(<WLanguage procedure> [, <Movement Axis> [, <Frequency> [, <Threshold>]]])
<Result>: Integer
  • True if the detection was triggered,
  • False otherwise.
<WLanguage procedure>: Procedure name
Name of the WLanguage procedure ("callback") called when the acceleration of the device on one of its axes is detected. For more details on this procedure, see Parameters of the procedure used by SensorDetectChangeAcceleration
The parameters of this procedure are optional. There is no need to pass parameters to this procedure. Indeed, these parameters are automatically filled during each call providing that the corresponding movement axis is specified in <Movement Axis>. Otherwise, these parameters are set to 0.
If the name of the procedure corresponds to an empty string (""), the notifications will not be sent anymore when the acceleration changes.
<Movement Axis>: Optional Integer constant
Movement axes of the device for which a notification is required during the change of acceleration:
snrLateralNotification when the device accelerates on the horizontal axis.
snrLongitudinalNotification when the device accelerates on the longitudinal axis.
snrVerticalNotification when the device accelerates on the vertical axis.

By default, a notification will be sent when the acceleration changes on any one of the three axes (equivalent to snrVertical + snrLateral + snrLongitudinal).
<Frequency>: Optional Integer constant
Frequency according to which the notifications for changes of acceleration must be sent:
snrFrequencyGameNotification frequency required when using SensorDetectChangeAcceleration in a game.
snrFrequencyNormal
(Default value)
Standard frequency of notification.
snrFrequencyQuickFast frequency of notification.

iPhone/iPad This parameter is ignored. The frequency is the same, regardless of the specified constant.
<Threshold>: Optional real
Threshold for change tolerance (in m/s²). The notifications will be sent for the changes of acceleration greater than this threshold.
If this parameter is not specified, no tolerance threshold will be set: notifications will be sent for each change in acceleration (equivalent to a threshold of 0).
Observaciones

Use conditions

  • This function cannot be used in the emulator or in the simulator. In both cases, the result of the function will always be set to False.
  • The detection of acceleration changes uses the accelerometer sensor on the device. Acceleration changes will be not be detected if this sensor is not on the device. The sensitivity of the detection depends on the quality of the sensor in the device.

Device acceleration: definitions

The acceleration can be defined as being the measurement of the change in the device's speed in a given direction.
The movement sensor considers that the device is resting when it lies down flat, the screen oriented to the sky and in portrait mode.
Origin of the acceleration
Coordinate system (assuming the device is laying flat, with the screen facing up):
  • The origin is found in the lower-left corner of the screen.
  • The X-axis represents the horizontal axis and it points to the right of the screen.
  • The Y-axis represents the longitudinal axis and it points to the top of the screen.
  • The Z-axis represents the vertical axis and it points outside the front of the screen.
The change of acceleration can be specified according to the three following dimensions:
  • Vertical acceleration Acceleration of the device on the vertical axis (Z). This acceleration is expressed in m/s². When the device lies down flat with the screen pointing to the sky, if the device follows an ascending movement with an acceleration set to A m/s², the total value of the vertical acceleration is equal to ~= A + 9,81, corresponding to the vertical acceleration of the device minus the gravity force on Earth.
  • Longitudinal acceleration Acceleration of device on longitudinal axis (Y). This acceleration is expressed in m/s². Its value is positive when the device moves backward and negative when the device moves forward.
  • Lateral acceleration Acceleration on horizontal axis (X). This acceleration is expressed in m/s². Its value is positive when the device moves to the left and negative when the device moves to the right.
Remark: The motion sensor (accelerometer) cannot differentiate between acceleration caused by motion and acceleration caused by the earth's gravitational pull.. Therefore, the vertical acceleration measured when the device is resting will be set to -9,8m/s², corresponding to the average terrestrial gravity.

Stopping the detection

We advise you to stop the detection of acceleration changes when it is no longer required in order to reduce battery consumption. To do so, <WLanguage procedure> must correspond to an empty string ("").
SensorEnd is used to stop all the current detections.
Componente: WDJS.DLL
Ver también
Versión mínima requerida
  • Versión 16
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/03/2025

Señalar un error o enviar una sugerencia | Ayuda local