- class QGeoCoordinate#
类
QGeoCoordinate定义了地球表面的一个地理位置。 更多…概述#
属性#
altitude钓鱼属性- 此属性保存海平面以上高度,单位为米isValid钓鱼属性- 此属性保存这些地理坐标的有效性latitude钓鱼属性- 此属性保存十进制度数纬度longitude(度) - 该属性持有十进制度数的经度
方法#
def __init__()
def altitude()
def azimuthTo()
def distanceTo()
def isValid()
def latitude()
def longitude()
def __ne__()
def __eq__()
def setAltitude()
def setLatitude()
def setLongitude()
def swap()
def toString()
def type()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译有问题,也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述#
QGeoCoordinate由纬度、经度和可选的飞行高度定义。使用
type()方法来确定一个坐标是否是二维坐标(仅具有经纬度)或三维坐标(具有经纬度和高度)。使用distanceTo()和azimuthTo()方法计算坐标之间的距离和方位角。应使用 WGS84 基准数据指定坐标值。有关地理术语的更多信息,请参阅坐标和另一篇关于包括 WGS84 的大地测量系统的文章。
在此上下文中,方位角与基于真北的罗盘方位相当。
自 Qt 5.5 起此类为 Q_GADGET。它可以直接从 C++ 和 QML 使用直接用于。
- class CoordinateType#
定义坐标类型。
常量
描述
QGeoCoordinate.InvalidCoordinate
一个无效坐标。如果一个坐标的纬度或经度值无效,则该坐标无效。
QGeoCoordinate.Coordinate2D
具有有效纬度和经度值的坐标。
QGeoCoordinate.Coordinate3D
具有有效纬度、经度值,并且还有一个高度值的坐标。
- class CoordinateFormat#
定义
toString()可能的格式化选项。常量
描述
QGeoCoordinate.Degrees
返回十进制度形式坐标的字符串表示。
QGeoCoordinate.DegreesWithHemisphere
返回十进制度形式坐标的字符串表示,使用“N”、“S”、“E”或“W”来表示坐标的半球。
QGeoCoordinate.DegreesMinutes
返回度分格式坐标的字符串表示。
QGeoCoordinate.DegreesMinutesWithHemisphere
返回度分格式坐标的字符串表示,使用“N”、“S”、“E”或“W”来表示坐标的半球。
QGeoCoordinate.DegreesMinutesSecond
返回度分秒格式坐标的字符串表示。
QGeoCoordinate.DegreesMinutesSecondsWithHemisphere
返回度分秒格式坐标的字符串表示,使用“N”、“S”、“E”或“W”来表示坐标的半球。
另请参阅
注意
当使用
from __feature__ import true_property时可以直接使用属性,否则通过访问器函数使用。- property altitudeᅟ: float#
此属性持有此属性持有海平面以上米的高度。
如果没有设置海拔,则属性未定义(qQNaN())。
虽然此属性是在 Qt 5.5 中引入的,但相关的访问器函数自此类第一版起就存在。
- 访问函数
- 属性 isValid: bool#
此属性包含这个地理坐标的有效性。
只有当 经度 和 纬度 属性都设置为有效值时,地理坐标才是有效的。
虽然此属性是在 Qt 5.5 中引入的,但相关的访问器函数自此类第一版起就存在。
- 访问函数
- 属性 latitude: float#
此属性包含此属性的纬度(十进制度)。
如果纬度未设置,该属性未定义(qQNaN())。正纬度表示北半球,负纬度表示南半球。设置纬度时,新值应采用 WGS84 数据格式。
为了有效,纬度必须在 -90 到 90(包含)之间。
虽然此属性是在 Qt 5.5 中引入的,但相关的访问器函数自此类第一版起就存在。
- 访问函数
- 属性 longitude: float#
此属性包含此属性的经度(十进制度)。
如果经度未设置,该属性未定义(qQNaN())。正经度表示东半球,负经度表示西半球。设置经度时,新值应采用 WGS84 数据格式。
为了有效,经度必须在 -180 到 180(包含)之间。
虽然此属性是在 Qt 5.5 中引入的,但相关的访问器函数自此类第一版起就存在。
- __init__(other)#
- 参数:
other –
QGeoCoordinate
根据
other的内容构建一个坐标。- __init__(latitude, longitude)
- 参数:
latitude – float
longitude – float
使用给定的
latitude和longitude构建一个坐标。如果纬度不在 -90 到 90(包含)之间,或者经度不在 -180 到 180(包含)之间,则不设置任何值,并且 type() 将是 InvalidCoordinate。
另请参阅
- __init__(latitude, longitude, altitude)
- 参数:
latitude – float
longitude – float
altitude – float
根据给定的纬度
latitude、经度longitude和高度altitude构建一个坐标。如果纬度不在 -90 到 90(包含)之间,或者经度不在 -180 到 180(包含)之间,则不设置任何值,并且 type() 将是 InvalidCoordinate。
注意,
altitude排定了海平面以上的米数。另请参阅
- __init__()
构建一个坐标。坐标在调用
setLatitude()和setLongitude()之前是无效的。- altitude()#
- 返回类型:
float
返回高于海平面的高度(米)。
如果未设置高度,返回值是未定义的。
另请参阅
属性
altitude的获取器。- atDistanceAndAzimuth(distance, azimuth[, distanceUp=0.0])#
- 参数:
distance – float
azimuth – float
distanceUp – float
- 返回类型:
返回从当前坐标沿大圆路径,以
azimuth(或航向) 方向行走distance米后到达的坐标。此计算假设地球是球形的。将
distanceUp添加到高度中。如果此坐标无效,则返回无效坐标。
- azimuthTo(other)#
- 参数:
other –
QGeoCoordinate- 返回类型:
float
返回从当前坐标到由
other指定的坐标的方位角(或航向角),在此计算中不使用高度。返回的航向是从起点到
other沿两个坐标之间大圆的航向。此计算假设地球是球形的。如果当前坐标或
other的类型是InvalidCoordinate,则返回0。- distanceTo(other)#
- 参数:
other –
QGeoCoordinate- 返回类型:
float
返回从该坐标到由
other指定坐标的距离(以米为单位)。计算时不使用海拔。此计算返回两个坐标之间的大圆距离,假设地球在此计算中是球形的。
如果当前坐标或
other的类型是InvalidCoordinate,则返回0。- isValid()#
- 返回类型:
bool
如果
longitude和latitude有效,则返回true。属性
isValidᅟ的获取器。- latitude()#
- 返回类型:
float
返回纬度,以十进制度为单位。如果未设置纬度,返回值未定义。
正纬度表示北半球,负纬度表示南半球。
另请参阅
属性
latitudeᅟ的获取器。- longitude()#
- 返回类型:
float
返回经度,以十进制度为单位。如果未设置经度,返回值未定义。
正经度表示东半球,负经度表示西半球。
另请参阅
属性
longitudeᅟ的获取器。- __ne__(rhs)#
- 参数:
rhs –
QGeoCoordinate- 返回类型:
bool
如果
lhs坐标的纬度、经度或海拔与rhs坐标不匹配,则返回true。否则返回false。- __eq__(rhs)#
- 参数:
rhs –
QGeoCoordinate- 返回类型:
bool
如果
lhs坐标的纬度、经度和海拔与rhs坐标相同,则返回true。否则返回false。如果纬度为 +/- 90 度,将忽略经度。
- setAltitude(altitude)#
- 参数:
altitude – float
将海拔(海平面以上米数)设置为
altitude。另请参阅
属性
altitude的设置器。- setLatitude(latitude)#
- 参数:
latitude – float
将纬度(十进制度)设置为
latitude。该值应在 WGS84 基准下。为了有效,纬度必须在 -90 到 90(包含)之间。
另请参阅
属性
latitude的设置器。- setLongitude(longitude)#
- 参数:
longitude – float
将经度(十进制度)设置为
longitude。该值应在 WGS84 基准下。为了有效,经度必须在 -180 到 180(包含)之间。
另请参阅
属性
longitude的设置器。- swap(other)#
- 参数:
other –
QGeoCoordinate
- toString([format=QGeoCoordinate.CoordinateFormat.DegreesMinutesSecondsWithHemisphere])#
- 参数:
格式 –
CoordinateFormat- 返回类型:
字符串
返回指定
format格式的此坐标的字符串表示。例如,如果此坐标的纬度为 -27.46758,经度为 153.027892,海拔为 28.1,则根据
format返回以下字符串:如果没有设置海拔,则省略海拔字段。
如果坐标无效,则返回空字符串。
返回此坐标的类型。