QGeoPositionInfo 类
QGeoPositionInfo 类包含在特定时间内关于全球位置、方向和速度收集的信息。 更多...
头文件 | #include <QGeoPositionInfo> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Positioning) target_link_libraries(mytarget PRIVATE Qt6::Positioning) |
qmake | QT += positioning |
- 成员列表,包括继承成员
- QGeoPositionInfo 是 隐式共享类 的一部分。
公共类型
枚举 | 属性 { 方向, 地面速度, 竖直速度, 磁差, 水平精度, …, 方向精度 } |
公共函数
QGeoPositionInfo() | |
QGeoPositionInfo(const QGeoCoordinate &coordinate, const QDateTime ×tamp) | |
QGeoPositionInfo(const QGeoPositionInfo &other) | |
(自 6.2) | QGeoPositionInfo(QGeoPositionInfo &&other) |
~QGeoPositionInfo() | |
qreal | 属性(QGeoPositionInfo::Attribute attribute) const |
QGeoCoordinate | 坐标() const |
bool | 是否有属性(QGeoPositionInfo::Attribute attribute) const |
bool | 是否有效() const |
void | 移除属性(QGeoPositionInfo::Attribute attribute) |
void | 设置属性(QGeoPositionInfo::Attribute attribute, qreal value) |
void | 设置坐标(const QGeoCoordinate &coordinate) |
void | 设置时间戳(const QDateTime ×tamp) |
QDateTime | 时间戳() const |
QGeoPositionInfo & | 操作符=(const QGeoPositionInfo &other) |
(自 6.2) QGeoPositionInfo & | 操作符=(QGeoPositionInfo &&other) |
相关非成员
bool | 操作符!=(const QGeoPositionInfo &lhs, const QGeoPositionInfo &rhs) |
QDataStream & | 操作符<<(QDataStream &stream, const QGeoPositionInfo &info) |
QDataStream & | 操作符<<(QDataStream &stream, QGeoPositionInfo::Attribute attr) |
bool | 操作符==(const QGeoPositionInfo &lhs, const QGeoPositionInfo &rhs) |
QDataStream & | 操作符>>(QDataStream &stream, QGeoPositionInfo &info) |
QDataStream & | 操作符>>(QDataStream &stream, QGeoPositionInfo::Attribute &attr) |
成员类型文档
枚举 QGeoPositionInfo::Attribute
定义位置信息的属性。
常量 | 值 | 描述 |
---|---|---|
QGeoPositionInfo::Direction | 0 | 从真实正北顺时针测量的方位角。 |
QGeoPositionInfo::GroundSpeed | 1 | 地面速度,单位为米/秒。 |
QGeoPositionInfo::VerticalSpeed | 2 | 垂直速度,单位为米/秒。 |
QGeoPositionInfo::MagneticVariation | 3 | 磁场水平分量与真实正北之间的角度,单位为度。也称为磁偏角。正值表示从真实正北顺时针方向,负值表示逆时针方向。 |
QGeoPositionInfo::HorizontalAccuracy | 4 | 提供的经纬度值的精度,单位为米。 |
QGeoPositionInfo::VerticalAccuracy | 5 | 提供的海拔值的精度,单位为米。 |
QGeoPositionInfo::DirectionAccuracy | 6 | 提供的方位角的精度,单位为度。此属性仅在 Android(API 级别 26 或更高)和 macOS/iOS 上可用。有关更多详细信息,请参阅相应的Android 和 Apple 文档。 |
NMEA 协议还建议另一种精度类型 - PositionAccuracy,它是一个 3D 精度值。Qt 不提供单独的属性。如果您需要此值,可以基于以下公式计算:
PositionAccuracy
2 = HorizontalAccuracy
2 + VerticalAccuracy
2
成员函数文档
QGeoPositionInfo::QGeoPositionInfo()
创建一个无效的 QGeoPositionInfo 对象。
另见 isValid().
QGeoPositionInfo::QGeoPositionInfo(const QGeoCoordinate &coordinate, const QDateTime ×tamp)
为给定 coordinate 和 timestamp 创建一个 QGeoPositionInfo。
QGeoPositionInfo::QGeoPositionInfo(const QGeoPositionInfo &other)
使用 other 的值创建一个 QGeoPositionInfo。
[noexcept, since 6.2]
QGeoPositionInfo::QGeoPositionInfo(QGeoPositionInfo &&other)
从 other 移动以创建一个 QGeoPositionInfo 对象。
请注意,已移动的 QGeoPositionInfo 只能被销毁或赋值。调用除析构函数或赋值运算符之外的函数的效果是未定义的。
此函数从 Qt 6.2 开始引入。
[noexcept]
QGeoPositionInfo::~QGeoPositionInfo()
销毁一个 QGeoPositionInfo 对象。
qreal QGeoPositionInfo::attribute(QGeoPositionInfo::Attribute attribute) const
以qreal值返回指定的属性的值。
如果值未被设置,则返回NaN。
应使用函数hasAttribute()来判断是否为属性设置了值。
另请参阅hasAttribute()和setAttribute。
QGeoCoordinate QGeoPositionInfo::coordinate() const
返回位置坐标。
如果没有设置坐标,则返回无效的坐标。
另请参阅setCoordinate。
bool QGeoPositionInfo::hasAttribute(QGeoPositionInfo::Attribute attribute) const
如果指定的属性存在于此QGeoPositionInfo对象中,则返回true。
bool QGeoPositionInfo::isValid() const
如果timestamp()和coordinate()的值都是有效的,则返回true。
另请参阅QGeoCoordinate::isValid()和QDateTime::isValid。
void QGeoPositionInfo::removeAttribute(QGeoPositionInfo::Attribute attribute)
删除指定的属性及其值。
void QGeoPositionInfo::setAttribute(QGeoPositionInfo::Attribute attribute, qreal value)
将属性的值设置为value。
另请参阅attribute。
void QGeoPositionInfo::setCoordinate(const QGeoCoordinate &coordinate)
将此位置坐标设置为coordinate。
另请参阅coordinate。
void QGeoPositionInfo::setTimestamp(const QDateTime ×tamp)
将报告此位置的时间戳设置为timestamp。
timestamp必须是UTC时间。
另请参阅timestamp。
QDateTime QGeoPositionInfo::timestamp() const
返回报告此位置的时间戳,采用UTC时间。
如果没有设置日期/时间值,则返回无效的QDateTime。
另请参阅setTimestamp。
QGeoPositionInfo &QGeoPositionInfo::operator=(const QGeoPositionInfo &other)
将other的值分配给此QGeoPositionInfo。
[无异常,自6.2版本起]
QGeoPositionInfo &QGeoPositionInfo::operator=(QGeoPositionInfo &&other)
将其他对象中的值移动赋值到当前对象。
注意,移动后的 QGeoPositionInfo 只能被销毁或赋值。调用其他(除析构函数或赋值运算符之外的)函数的效果是未定义的。
此函数从 Qt 6.2 开始引入。
相关非成员
bool operator!=(const QGeoPositionInfo &lhs, const QGeoPositionInfo &rhs)
如果 lhs 对象的任何值与 rhs 不同,则返回 true
。否则返回 false
。
QDataStream &operator<<(QDataStream &stream, const QGeoPositionInfo &info)
将给定 info 写入指定的 stream。
另请参阅序列化 Qt 数据类型。
QDataStream &operator<<(QDataStream &stream, QGeoPositionInfo::Attribute attr)
将给定的 attr 枚举写入指定的 stream。
另请参阅序列化 Qt 数据类型。
bool operator==(const QGeoPositionInfo &lhs, const QGeoPositionInfo &rhs)
如果 lhs 对象的所有值都和 rhs 的值相同,则返回 true
。否则返回 false
。
QDataStream &operator>>(QDataStream &stream, QGeoPositionInfo &info)
从指定的 stream 读取坐标到给定的 info。
另请参阅序列化 Qt 数据类型。
QDataStream &operator>>(QDataStream &stream, QGeoPositionInfo::Attribute &attr)
从指定的 stream 读取属性枚举到给定的 attr。
另请参阅序列化 Qt 数据类型。
© 2024 Qt 公司版权所有。其中包括的文档贡献为各自所有者的版权。所提供的文档是根据由自由软件基金会发表的 GNU 自由文档许可协议版本 1.3 的条款授权的。Qt 以及相应的标志是芬兰以及/或全世界 Qt 公司的商标。所有其他商标均为各自所有者的财产。