- 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
返回以下字符串:如果没有设置海拔,则省略海拔字段。
如果坐标无效,则返回空字符串。
返回此坐标的类型。