float LocationGetHeading();
Gets the current heading (in degrees, relative to magnetic north) of the device.
Return Value
Returns a non-zero value if the call was successful, negative otherwise.
Remarks
LocationGetHeading() returns the current heading in degrees relative to magnetic north.
Heading data is not available on all devices, as it requires a magnetometer.
Windows Simulator NOTE: To provide values for the Windows Simulator, be sure to edit C:\DragonFireSDK\DragonFireSDK.ini and modify the value for Heading in the Location section.
NOTE: It is recommended to call LocationMonitorHeading() prior to calling LocationGetHeading(). This gives the device time to begin receiving more and more accurate heading data prior to getting heading data. Subsequent calls to LocationGetHeading() may become more accurate over time as the device pinpoints your location.
Availability
Available in DragonFireSDK 1.4 and later on devices with a magnetometer.
Example
#include "DragonFireSDK.h"
int MyFont; int HeadingText; char TextBuffer[100];
void AppMain() { LandscapeMode();
// Begin monitoring heading LocationMonitorHeading(1);
MyFont = FontAdd("Helvetica", "Regular", 24, 0x00FF00); HeadingText = TextAdd(10, 10, "Heading:", MyFont); }
//=============================================== void OnTimer() { float heading;
heading = LocationGetHeading();
sprintf(TextBuffer, "Heading: %f degrees", heading); TextSetText(HeadingText, TextBuffer); }
//=============================================== void AppExit() {
} |