PySide6.QtPositioning.QGeoCoordinate¶
- 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()来确定一个坐标是2D坐标(仅包含纬度和经度)还是3D坐标(包含纬度、经度和高度)。使用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.DegreesMinutesSeconds
返回以度-分-秒格式表示的坐标字符串。
QGeoCoordinate.DegreesMinutesSecondsWithHemisphere
返回坐标的字符串表示,使用‘N’、‘S’、‘E’或‘W’来表示坐标的半球。
另请参阅
注意
当使用
from __feature__ import true_property时,属性可以直接使用,否则通过访问器函数使用。- property altitudeᅟ: float¶
此属性保存海拔高度,单位为米。
如果尚未设置高度,则该属性未定义(qQNaN())。
虽然此属性在Qt 5.5中引入,但相关的访问器函数自该类的第一个版本以来就已存在。
- Access functions:
- property isValidᅟ: bool¶
此属性保存此地理坐标的有效性。
如果
longitude和latitude属性已设置为有效值,则地理坐标有效。虽然这个属性是在 Qt 5.5 中引入的,但相关的访问器函数自该类的第一个版本以来就存在。
- Access functions:
- property latitudeᅟ: float¶
此属性保存此属性保存以十进制度表示的纬度。
如果纬度未设置,则该属性未定义(qQNaN())。正纬度表示北半球,负纬度表示南半球。设置纬度时,新值应为WGS84基准格式。
为了有效,纬度必须在-90到90之间,包括-90和90。
虽然这个属性是在 Qt 5.5 中引入的,但相关的访问器函数自该类的第一个版本以来就存在。
- Access functions:
- property longitudeᅟ: float¶
此属性保存以十进制度表示的经度。
如果经度未设置,则该属性未定义(qQNaN())。正经度表示东半球,负经度表示西半球。设置经度时,新值应采用WGS84基准格式。
为了有效,经度必须在-180到180之间,包括-180和180。
虽然这个属性是在 Qt 5.5 中引入的,但相关的访问器函数自该类的第一个版本以来就存在。
- Access functions:
- __init__()¶
构建一个坐标。在调用
setLatitude()和setLongitude()之前,该坐标将无效。- __init__(other)
- Parameters:
其他 –
QGeoCoordinate
从
other的内容构造一个坐标。- __init__(latitude, longitude)
- Parameters:
latitude – 浮点数
longitude – 浮点数
使用给定的
latitude和longitude构建一个坐标。如果纬度不在-90到90之间,或者经度不在-180到180之间,则不会设置任何值,并且
type()将为InvalidCoordinate。另请参阅
- __init__(latitude, longitude, altitude)
- Parameters:
latitude – 浮点数
longitude – 浮点数
altitude – 浮点数
使用给定的
latitude、longitude和altitude构建一个坐标。如果纬度不在-90到90之间,或者经度不在-180到180之间,则不会设置任何值,并且
type()将为InvalidCoordinate。请注意,
altitude指定的是海拔高度(以米为单位)。另请参阅
- altitude()¶
- Return type:
浮点数
返回海拔高度(米)。
如果高度未设置,则返回值为未定义。
另请参阅
属性
altitudeᅟ的获取器。- atDistanceAndAzimuth(distance, azimuth[, distanceUp=0.0])¶
- Parameters:
distance – 浮点数
方位角 – 浮点数
distanceUp – 浮点数
- Return type:
返回从当前坐标沿大圆以
azimuth(或方位角)方向行进distance米后到达的坐标。此计算假设地球是球形的。高度将增加
distanceUp。如果此坐标无效,则返回一个无效坐标。
- azimuthTo(other)¶
- Parameters:
其他 –
QGeoCoordinate- Return type:
浮点数
返回从此坐标到由
other指定的坐标的方位角(或方位),单位为度。计算中不使用高度。返回的方位是从原点沿着两个坐标之间的大圆到
other的方位。为了这个计算,假设地球是球形的。如果此坐标的类型或
other的类型是InvalidCoordinate,则返回0。- distanceTo(other)¶
- Parameters:
其他 –
QGeoCoordinate- Return type:
浮点数
返回从此坐标到由
other指定的坐标的距离(以米为单位)。计算中不使用海拔高度。此计算返回两个坐标之间的大圆距离,假设地球是球形的以用于此计算。
如果此坐标的类型或
other的类型是InvalidCoordinate,则返回0。- isValid()¶
- Return type:
布尔
如果
longitude和latitude有效,则返回true。属性
isValidᅟ的获取器。- latitude()¶
- Return type:
浮点数
返回纬度,以十进制度表示。如果未设置纬度,则返回值为未定义。
正纬度表示北半球,负纬度表示南半球。
另请参阅
属性
latitudeᅟ的获取器。- longitude()¶
- Return type:
浮点数
返回经度,以十进制度表示。如果未设置经度,则返回值为未定义。
正经度表示东半球,负经度表示西半球。
另请参阅
属性
longitudeᅟ的获取器。- __ne__(rhs)¶
- Parameters:
rhs –
QGeoCoordinate- Return type:
布尔
如果
lhs坐标的纬度、经度或高度与rhs坐标的纬度、经度或高度不相同,则返回true。否则返回false。- __eq__(rhs)¶
- Parameters:
rhs –
QGeoCoordinate- Return type:
布尔
如果
lhs坐标的纬度、经度和高度与rhs坐标的相同,则返回true。否则返回false。如果纬度为 +/- 90 度,则经度将被忽略。
- setAltitude(altitude)¶
- Parameters:
高度 – 浮点数
将海拔高度(米)设置为
altitude。另请参阅
属性
altitudeᅟ的设置器。- setLatitude(latitude)¶
- Parameters:
纬度 – 浮点数
设置纬度(以十进制度为单位)为
latitude。该值应基于WGS84基准。为了有效,纬度必须在-90到90之间,包括-90和90。
另请参阅
属性
latitudeᅟ的设置器。- setLongitude(longitude)¶
- Parameters:
经度 – 浮点数
设置经度(以十进制度为单位)为
longitude。该值应基于WGS84基准。为了有效,经度必须在-180到180之间,包括-180和180。
另请参阅
属性
longitudeᅟ的设置器。- swap(other)¶
- Parameters:
其他 –
QGeoCoordinate
- toString([format=QGeoCoordinate.CoordinateFormat.DegreesMinutesSecondsWithHemisphere])¶
- Parameters:
format –
CoordinateFormat- Return type:
字符串
将此坐标作为字符串返回,使用指定的
format格式。例如,如果这个坐标的纬度为-27.46758,经度为153.027892,高度为28.1,这些是根据
format返回的字符串:format值返回的字符串
-27.46758°, 153.02789°, 28.1米
27.46758° 南, 153.02789° 东, 28.1米
-27° 28.054’, 153° 1.673’, 28.1米
27° 28.054 南, 153° 1.673 东, 28.1米
-27° 28’ 3.2”, 153° 1’ 40.4”, 28.1米
27° 28’ 3.2” 南, 153° 1’ 40.4” 东, 28.1米
如果没有设置高度,则省略高度字段。
如果坐标无效,则返回空字符串。
- type()¶
- Return type:
返回此坐标的类型。