- Qt 5.15
- Qt Positioning
- C++ Classes
- QGeoPositionInfo
- Qt 5.15.11 Reference Documentation

# QGeoPositionInfo Class

The QGeoPositionInfo class contains information gathered on a global position, direction and velocity at a particular point in time. More...

Header: | #include <QGeoPositionInfo>
qmake: | QT += positioning
Since: | Qt 5.2

This class was introduced in Qt 5.2.

- List of all members, including inherited members

## Public Types

enum | Attribute { Direction, GroundSpeed, VerticalSpeed, MagneticVariation, HorizontalAccuracy, VerticalAccuracy }

## Public Functions

| QGeoPositionInfo(const QGeoPositionInfo &other)
| QGeoPositionInfo(const QGeoCoordinate &coordinate, const QDateTime &timestamp)
| QGeoPositionInfo()
QGeoPositionInfo & | operator=(const QGeoPositionInfo &other)
| ~QGeoPositionInfo()
qreal | attribute(Attribute attribute) const
QGeoCoordinate | coordinate() const
bool | hasAttribute(Attribute attribute) const
bool | isValid() const
void | removeAttribute(Attribute attribute)
void | setAttribute(Attribute attribute, qreal value)
void | setCoordinate(const QGeoCoordinate &coordinate)
void | setTimestamp(const QDateTime &timestamp)
QDateTime | timestamp() const
bool | operator!=(const QGeoPositionInfo &other) const
bool | operator==(const QGeoPositionInfo &other) const

## Related Non-Members

QDataStream & | operator<<(QDataStream &stream, QGeoPositionInfo::Attribute attr)
QDataStream & | operator<<(QDataStream &stream, const QGeoPositionInfo &info)
QDataStream & | operator>>(QDataStream &stream, QGeoPositionInfo::Attribute &attr)
QDataStream & | operator>>(QDataStream &stream, QGeoPositionInfo &info)

## Detailed Description

A QGeoPositionInfo contains, at a minimum, a geographical coordinate and a timestamp. It may also have heading and speed measurements as well as estimates of the accuracy of the provided data.

See also QGeoPositionInfoSource.

## Member Type Documentation

### enum QGeoPositionInfo::Attribute

Defines the attributes for positional information.

Constant | Value | Description
--- | --- | ---
`QGeoPositionInfo::Direction` | `0` | The bearing measured in degrees clockwise from true north to the direction of travel.
`QGeoPositionInfo::GroundSpeed` | `1` | The ground speed, in meters/sec.
`QGeoPositionInfo::VerticalSpeed` | `2` | The vertical speed, in meters/sec.
`QGeoPositionInfo::MagneticVariation` | `3` | The angle between the horizontal component of the magnetic field and true north, in degrees. Also known as magnetic declination. A positive value indicates a clockwise direction from true north and a negative value indicates a counter-clockwise direction.
`QGeoPositionInfo::HorizontalAccuracy` | `4` | The accuracy of the provided latitude-longitude value, in meters.
`QGeoPositionInfo::VerticalAccuracy` | `5` | The accuracy of the provided altitude value, in meters.

## Member Function Documentation

### QGeoPositionInfo::QGeoPositionInfo(const QGeoPositionInfo &other)

Creates a QGeoPositionInfo with the values of other.

### QGeoPositionInfo::QGeoPositionInfo(const QGeoCoordinate &coordinate, const QDateTime &timestamp)

Creates a QGeoPositionInfo for the given coordinate and timestamp.

### QGeoPositionInfo::QGeoPositionInfo()

Creates an invalid QGeoPositionInfo object.

See also isValid().

### QGeoPositionInfo &QGeoPositionInfo::operator=(const QGeoPositionInfo &other)

Assigns the values from other to this QGeoPositionInfo.

### QGeoPositionInfo::~QGeoPositionInfo()

Destroys a QGeoPositionInfo object.

### qreal QGeoPositionInfo::attribute(Attribute attribute) const

Returns the value of the specified attribute as a qreal value.

Returns NaN if the value has not been set.

The function hasAttribute() should be used to determine whether or not a value has been set for an attribute.

See also hasAttribute() and setAttribute().

### QGeoCoordinate QGeoPositionInfo::coordinate() const

Returns the coordinate for this position.

Returns an invalid coordinate if no coordinate has been set.

See also setCoordinate().

### bool QGeoPositionInfo::hasAttribute(Attribute attribute) const

Returns true if the specified attribute is present for this QGeoPositionInfo object.

### bool QGeoPositionInfo::isValid() const

Returns true if the timestamp() and coordinate() values are both valid.

See also QGeoCoordinate::isValid() and QDateTime::isValid().

### void QGeoPositionInfo::removeAttribute(Attribute attribute)

Removes the specified attribute and its value.

### void QGeoPositionInfo::setAttribute(Attribute attribute, qreal value)

Sets the value for attribute to value.

See also attribute().

### void QGeoPositionInfo::setCoordinate(const QGeoCoordinate &coordinate)

Sets the coordinate for this position to coordinate.

See also coordinate().

### void QGeoPositionInfo::setTimestamp(const QDateTime &timestamp)

Sets the date and time at which this position was reported to timestamp.

The timestamp must be in UTC time.

See also timestamp().

### QDateTime QGeoPositionInfo::timestamp() const

Returns the date and time at which this position was reported, in UTC time.

Returns an invalid QDateTime if no date/time value has been set.

See also setTimestamp().

### bool QGeoPositionInfo::operator!=(const QGeoPositionInfo &other) const

Returns true if any of this object's values are not the same as those of other.

### bool QGeoPositionInfo::operator==(const QGeoPositionInfo &other) const

Returns true if all of this object's values are the same as those of other.

## Related Non-Members

### QDataStream &operator<<(QDataStream &stream, QGeoPositionInfo::Attribute attr)

Writes the given attr enumeration to the specified stream.

See also Serializing Qt Data Types.

### QDataStream &operator<<(QDataStream &stream, const QGeoPositionInfo &info)

Writes the given info to the specified stream.

See also Serializing Qt Data Types.

### QDataStream &operator>>(QDataStream &stream, QGeoPositionInfo::Attribute &attr)

Reads an attribute enumeration from the specified stream info the given attr.

See also Serializing Qt Data Types.

### QDataStream &operator>>(QDataStream &stream, QGeoPositionInfo &info)

Reads a coordinate from the specified stream into the given info.

See also Serializing Qt Data Types.