Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.

Code Examples Sensors API/es: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
'''Spanish''' [[Code-Examples-Sensors-API|English]]
[[Category:Developing with Qt::QtMobility]] [[Category:Spanish]]


=Información general=
[toc align_right="yes" depth="2"]


Esta página proporciona información general sobre ejemplos de código que utilizan la [http://doc.qt.nokia.com/qtmobility-1.1.0/sensors-api.html Sensors <span class="caps">API</span>] ''[doc.qt.nokia.com]'', una de las tantas <span class="caps">API</span>s que forman parte de la suite Qt Mobilty.
'''Spanish''' [[Code Examples Sensors API|English]]


==Detector de caídas==
= Información general =


El [http://wiki.forum.nokia.com/index.php/Qt_Mobility_example_application:_Fall_Detector ejemplo del Detecto de caídas] ''[wiki.forum.nokia.com]'' de Forum Nokia usa el acelerómetro en un dispositivo móvil para detectar si un usuario se ha caído, este ejemplo utiliza:
Esta página proporciona información general sobre ejemplos de código que utilizan la &quot;Sensors API&amp;quot;:http://doc.qt.nokia.com/qtmobility-1.1.0/sensors-api.html, una de las tantas APIs que forman parte de la suite Qt Mobilty.


* [http://doc.qt.nokia.com/qtmobility-1.1.0/location-overview.html Location <span class="caps">API</span>] ''[doc.qt.nokia.com]'' para obtener la ubicación de el usuario.
== Detector de caídas ==


* la [http://doc.qt.nokia.com/qtmobility-1.1.0/contacts.html Contacts <span class="caps">API</span>] ''[doc.qt.nokia.com]'' para almacenar y acceder a una dirección de correo electrónico para ser notificado en caso de una caída.
El &quot;ejemplo del Detecto de caídas&amp;quot;:http://wiki.forum.nokia.com/index.php/Qt_Mobility_example_application:_Fall_Detector de Forum Nokia usa el acelerómetro en un dispositivo móvil para detectar si un usuario se ha caído, este ejemplo utiliza:


* y la [http://doc.qt.nokia.com/qtmobility-1.1.0/messaging.html Messaging <span class="caps">API</span>] ''[doc.qt.nokia.com]'' para enviar una notificación por email con una foto adjunta.
* &quot;Location API&amp;quot;:http://doc.qt.nokia.com/qtmobility-1.1.0/location-overview.html para obtener la ubicación de el usuario.


[[Image:Falldetector--screens.png|Fall Dector Screen Shot]]
* la &quot;Contacts API&amp;quot;:http://doc.qt.nokia.com/qtmobility-1.1.0/contacts.html para almacenar y acceder a una dirección de correo electrónico para ser notificado en caso de una caída.


Aquí esta el fragmento de código del detector de caídas usando el <span class="caps">API</span> de Sensores:
* y la &quot;Messaging API &quot;:http://doc.qt.nokia.com/qtmobility-1.1.0/messaging.html para enviar una notificación por email con una foto adjunta.


==Usando el acelerómetro para controlar un modelo Open GL-ES 3D==
[[Image:http://www.forum.nokia.com/piazza/wiki/images/1/15/Falldetector--screens.png?20100324100739|Fall Dector Screen Shot]]


El tutorial sobre sensores en [http://www.mobileqt.de/wiki/daten_des_accelerometer_sensors_mit_einem_opengl_objekt_verknuepfen Mobile Qt-Entwicklung] ''[mobileqt.de]'' (Mobile Qt Development) muestra el acelerometro en un N900 manipulando un modelo 3D que ha sido creado usando Open GL. El [http://www.mobileqt.de/wiki/daten_des_accelerometer_sensors_mit_einem_opengl_objekt_verknuepfen texto descriptivo esta en Alemán] ''[mobileqt.de]'', pero todo [http://www.mobileqt.de/tutorials/6/glsensordemo-0.1.zip el codigo esta disponible para descargar en un paquete] ''[mobileqt.de]'' y esta [http://www.youtube.com/watch?v=uJpw0yeHJl8 demo en vídeo] ''[youtube.com]'' muestra como funciona.
Aquí esta el fragmento de código del detector de caídas usando el API de Sensores:
 
<code>#include &lt;QAccelerometer&amp;gt;
 
// Neccessary for Qt Mobility API usage<br />QTM_USE_NAMESPACE
 
class AccelerationInfo : public QObject, public QAccelerometerFilter<br />{<br /> Q_OBJECT
 
public:
 
AccelerationInfo(QObject* parent = 0) : QObject(parent)<br /> {<br /> m_sensor = new QAccelerometer(this);<br /> m_sensor-&gt;addFilter(this);<br /> m_sensor-&gt;start();<br /> }
 
private slots:
 
// Override of QAcclerometerFilter::filter(QAccelerometerReading*)<br /> void filter(QAccelerometerReading* reading)<br /> {<br /> qreal x = reading-&gt;x();<br /> qreal y = reading-&gt;y();<br /> qreal z = reading-&gt;z();
 
// Process acceleration sensor readings …
 
qDebug(&quot;Current device acceleration: x=%f y=%f z=%f&amp;quot;, x, y, z);<br /> }
 
private:
 
QAccelerometer* m_sensor;<br />};
 
</code>
 
== Usando el acelerómetro para controlar un modelo Open GL-ES 3D ==
 
El tutorial sobre sensores en &quot;Mobile Qt-Entwicklung&amp;quot;:http://www.mobileqt.de/wiki/daten_des_accelerometer_sensors_mit_einem_opengl_objekt_verknuepfen (Mobile Qt Development) muestra el acelerometro en un N900 manipulando un modelo 3D que ha sido creado usando Open GL. El &quot;texto descriptivo esta en Alemán&amp;quot;:http://www.mobileqt.de/wiki/daten_des_accelerometer_sensors_mit_einem_opengl_objekt_verknuepfen, pero todo &quot;el codigo esta disponible para descargar en un paquete&amp;quot;:http://www.mobileqt.de/tutorials/6/glsensordemo-0.1.zip y esta &quot;demo en vídeo&amp;quot;:http://www.youtube.com/watch?v=uJpw0yeHJl8 muestra como funciona.


Aquí está el código relevante del acelerómetro:
Aquí está el código relevante del acelerómetro:


===Categories:===
<code>GLWidget::GLWidget(QWidget *parent) :<br /> QGLWidget(parent)
 
{<br /> setWindowTitle(tr(&quot;Sensor-GL-Demo&amp;quot;));<br /> makeCurrent();
 
setAttribute(Qt::WA_PaintOnScreen);<br /> setAttribute(Qt::WA_NoSystemBackground);<br /> setAutoBufferSwap(false);
 
xRot = 0;<br /> yRot = 0;<br /> zRot = 0;
 
_rotationSensorAvailable = false;<br /> _rotationSensor = new QtMobility::QAccelerometer(this);<br /> _rotationSensor-&gt;connect();<br /> if (!_rotationSensor-&gt;isAvailable()) {<br /> qWarning(&quot;Kein Beschleunigungssensor verfügbar!&quot;);<br /> } else {<br /> _rotationSensorAvailable = true;<br /> _rotationSensor-&gt;setSignalEnabled(false); // wir holen uns die Werte selbst ab<br /> _rotationSensor-&gt;setUpdateInterval(100); // so schnell wie möglich<br /> _rotationSensor-&gt;start();<br /> }


* [[:Category:Developing with Qt|Developing_with_Qt]]
QTimer *timer = new QTimer(this);<br /> timer-&gt;setInterval(10);<br /> QObject::connect(timer, SIGNAL (timeout()), this, SLOT (updateGL()));<br /> timer-&gt;start();<br /> showFullScreen();<br />}<br /></code>
** [[:Category:Developing with Qt::QtMobility|QtMobility]]
* [[:Category:Spanish|Spanish]]

Revision as of 11:35, 24 February 2015


[toc align_right="yes&quot; depth="2&quot;]

Spanish English

Información general

Esta página proporciona información general sobre ejemplos de código que utilizan la "Sensors API&quot;:http://doc.qt.nokia.com/qtmobility-1.1.0/sensors-api.html, una de las tantas APIs que forman parte de la suite Qt Mobilty.

Detector de caídas

El "ejemplo del Detecto de caídas&quot;:http://wiki.forum.nokia.com/index.php/Qt_Mobility_example_application:_Fall_Detector de Forum Nokia usa el acelerómetro en un dispositivo móvil para detectar si un usuario se ha caído, este ejemplo utiliza:

Fall Dector Screen Shot

Aquí esta el fragmento de código del detector de caídas usando el API de Sensores:

#include &lt;QAccelerometer&amp;gt;

// Neccessary for Qt Mobility API usage<br />QTM_USE_NAMESPACE

class AccelerationInfo : public QObject, public QAccelerometerFilter<br />{<br /> Q_OBJECT

public:

AccelerationInfo(QObject* parent = 0) : QObject(parent)<br /> {<br /> m_sensor = new QAccelerometer(this);<br /> m_sensor-&gt;addFilter(this);<br /> m_sensor-&gt;start();<br /> }

private slots:

// Override of QAcclerometerFilter::filter(QAccelerometerReading*)<br /> void filter(QAccelerometerReading* reading)<br /> {<br /> qreal x = reading-&gt;x();<br /> qreal y = reading-&gt;y();<br /> qreal z = reading-&gt;z();

// Process acceleration sensor readings …

qDebug(&quot;Current device acceleration: x=%f y=%f z=%f&amp;quot;, x, y, z);<br /> }

private:

QAccelerometer* m_sensor;<br />};

Usando el acelerómetro para controlar un modelo Open GL-ES 3D

El tutorial sobre sensores en "Mobile Qt-Entwicklung&quot;:http://www.mobileqt.de/wiki/daten_des_accelerometer_sensors_mit_einem_opengl_objekt_verknuepfen (Mobile Qt Development) muestra el acelerometro en un N900 manipulando un modelo 3D que ha sido creado usando Open GL. El "texto descriptivo esta en Alemán&quot;:http://www.mobileqt.de/wiki/daten_des_accelerometer_sensors_mit_einem_opengl_objekt_verknuepfen, pero todo "el codigo esta disponible para descargar en un paquete&quot;:http://www.mobileqt.de/tutorials/6/glsensordemo-0.1.zip y esta "demo en vídeo&quot;:http://www.youtube.com/watch?v=uJpw0yeHJl8 muestra como funciona.

Aquí está el código relevante del acelerómetro:

GLWidget::GLWidget(QWidget *parent) :<br /> QGLWidget(parent)

{<br /> setWindowTitle(tr(&quot;Sensor-GL-Demo&amp;quot;));<br /> makeCurrent();

setAttribute(Qt::WA_PaintOnScreen);<br /> setAttribute(Qt::WA_NoSystemBackground);<br /> setAutoBufferSwap(false);

xRot = 0;<br /> yRot = 0;<br /> zRot = 0;

_rotationSensorAvailable = false;<br /> _rotationSensor = new QtMobility::QAccelerometer(this);<br /> _rotationSensor-&gt;connect();<br /> if (!_rotationSensor-&gt;isAvailable()) {<br /> qWarning(&quot;Kein Beschleunigungssensor verfügbar!&quot;);<br /> } else {<br /> _rotationSensorAvailable = true;<br /> _rotationSensor-&gt;setSignalEnabled(false); // wir holen uns die Werte selbst ab<br /> _rotationSensor-&gt;setUpdateInterval(100); // so schnell wie möglich<br /> _rotationSensor-&gt;start();<br /> }

QTimer *timer = new QTimer(this);<br /> timer-&gt;setInterval(10);<br /> QObject::connect(timer, SIGNAL (timeout()), this, SLOT (updateGL()));<br /> timer-&gt;start();<br /> showFullScreen();<br />}<br />