问题标签 [qtlocation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 如何让 QML 地图流量通过代理,并为程序的其余部分禁用此代理?
我有一个使用本地网络与某些设备通信的应用程序,以及一个用于获取外部任何内容的 http 代理。我想在其中使用地图插件。现在地图需要一个 http 代理来下载图块。如果我使用 http_proxy 变量设置全局 Qt 代理设置,或者手动使用,QNetworkProxy::setApplicationProxy
则地图加载正常,但程序的其余部分会中断。如果我禁用代理,那么我可以与我的设备交谈,但我看不到地图。我已经尝试使用,如此处QQmlNetworkAccessManagerFactory
示例中所述,它适用 于view.qml中定义的类型对象, 但如果我用包含我的地图的 an 替换它,它就不起作用 。Image
Image
Item
该MyNetworkAccessManagerFactory::create
方法永远不会被调用,并且我收到以下错误:
QGeoTileRequestManager: Failed to fetch tile (17366,9541,15) 5 times, giving up. Last error message was: 'Error transferring http://c.tile.openstreetmap.org/15/17366/9541.png - server replied: Service Unavailable'
. 这可能是什么原因?以及如何为地图插件设置 QNetworkProxy?
python - 无法在 MouseClick 上将 MapCircles 添加到 QML 地图
我正在尝试创建一些将在 QML 地图上动态移动的标记。然而,在此之前,我需要使用鼠标将它们全部绘制在地图上,以便稍后更新它们。我一直在使用 pyqtProperty 将我需要的坐标发送到 QML,但是当我尝试将它们添加到 MapItemView 时,它们是未定义的。下面的代码演示了我希望完成的事情。问题是我将 pyqtProperty 从另一个未添加setContextProperty()
like in 的python 对象传递给 QMLmain.py
吗?还是我错误地使用了 MapItemView 委托?
main.qml
atc.py
DC.py
主文件
qt - QML 地图仅垂直缩放
Qt 中的地图是否具有属性,因此如果我将鼠标光标移动到地图上的随机位置并尝试使用鼠标滚轮更改缩放级别,它不会移动中心?因为默认情况下,地图会缩放,但会将现有中心移向鼠标光标位置(下图中的示例;如果光标位于显示的位置并且我们尝试更改缩放,地理标记图片将沿箭头方向移动)。我只需要它从地图的指定中心直接放大,而不管鼠标光标的位置如何。
地图说明: https ://doc-snapshots.qt.io/qt5-5.9/qml-qtlocation-map.html
QML 代码
c++ - Mapbox 未在覆盆子上加载
我正在尝试在我的c++/qt
应用程序中加载一个地图框。在我的 PC 上,应用程序运行良好,并且地图已加载。但是,当应用程序部署在raspberry(v3)上时,应用程序正在运行但地图未加载(出现空白屏幕)。
我尝试了不同的地图插件,例如esri
它们在覆盆子上运行良好。但是mapbox插件不起作用
这是我正在处理的代码
和 C++ 代码
我期待加载一个 mapbox 类型的地图,但只出现一个空白屏幕。没有任何错误消息。我认为这是因为缺少插件或其他原因。但是为什么它在我的笔记本电脑上工作,因为我在两台机器上都有相同版本的 QT:(QT 5.10)
qt - 如何从数据库中的坐标向地图添加项目?
我有一个包含机场坐标的数据库,我需要在地图上用点显示它们(QtLocation)。使用 QSqlQueryModel 我可以轻松地填充和显示 TableView,但我不知道如何创建 MapQuickItems。
在 main.cpp 中:
qt - 使用 Qml Map 动画轴承属性变化
我正在尝试为 Qml 地图上的方位属性更改设置动画:
当直接使用设置方位时map.bearing
,动画将起作用。但是当使用辅助方法时map.setBearing
,动画不起作用。有没有办法将动画与map.setBearing
方法一起获取?
问候,
qt - 在 Qt 快速程序中从 gpsd 获取位置
我有一台 GPS 连接到串行端口的计算机,该串行端口运行 gpsd,配置非常基本。以下是 /etc/default/gpsd 的内容:
使用此配置,gpsd 运行良好,所有 gpsd 客户端实用程序,例如 cgps、gpspipe、gpsmon,都可以从 GPS 获取数据。
我正在尝试使用PositionSource
具有以下语法的元素从 Qt QML 程序访问 GPS 数据,但 lat 和 long 显示为 NaN,因此它不起作用:
gpspipe -r | nc -l 6000
我尝试使用和指定将 NMEA 数据从 GPS 传输到另一个端口nmeaSource: "socket://localhost:6000
,一切正常!
如何让 Qt 直接与 gpsd 对话?
qt - 覆盖 Qt 快速对象中一种方法的实现
我能够通过修改核心类中方法的实现来解决我在使用 Qt 时遇到的问题(参见这篇文章)。虽然我相信这个改变会是对 Qt 的一个有价值的补充,但是除非这个改变以某种方式进入未来的 Qt 版本,否则处理这个问题的方法是完全错误的。
我需要做的是创建一个新的 Qt 快速项目,它将完成该项目今天所做的所有事情,但使用属性处理程序方法 ( )PositionSource
的新实现。nmeaSource
void QDeclarativePositionSource::setNmeaSource(const QUrl &nmeaSource)
代码中的注释指定此代码可能会在将来的版本中更改,所以我想我不应该只是子类化它并覆盖该方法。我想直接将类的标题和源代码复制到我的项目中并在那里进行更改。
有什么建议么?
charts - QML:ChartView 系列的自定义可拖动点委托
Item
是否可以在 Qt 图表或其他 3rd 方库中为可拖动点(即s、图标、Rectangle
s 等)使用自定义委托,MapItemView
例如在 Qt Location forMapQuickItem
及其delegate
属性中很容易实现?或者可以使用 和 的一些组合来PathView
达到ChartView
这个目的?PathView
insideChartView
可能是一个解决方案,但可能需要将图表坐标转换为屏幕坐标:也不确定是否ChartView
有方法。需要制作一些模型来检查这一点。没有找到任何有关的文档或样本。应该是显而易见的和简单的,就像它在 Qt Location 中实现的一样,但是由于某些原因它没有为 Qt Charts 实现。
理想的方式可能是Map
使用来自 Qt Location 的元素,我有我需要的所有内容:MapItemView
,MapQuickItem
或者用于图形MapPolygon
,MapPolyline
因为我有制图信息要绘制。但又是两个问题:
- 如何绘制轴:X - 距离公里,Y - 高度
- 如何绘制图表网格
- 如何绘制自定义 2D BarSeries 模仿地形高程(
MapPolygon
但是可能)。
是否可以在这里动态绘制一些自定义地图?有任何想法吗?
c++ - QT 通过 C++ 添加 Map QML Items
我尝试将 QML 地图项(如 C++ 中的 MapQuickItem 或 MapCircle)添加到我的地图中。不幸的是,它们没有出现在地图上。只有一个 QML 矩形的相同代码可以工作。rect v1 是用于测试哪个有效的矩形。rect v2 是不起作用的 mapCircle。当我将我的圆形 QML 代码 1:1 添加到我的地图 QML 代码中时,它工作正常。
主.cpp:
rect.qml v1
rect.qml v2
地图.qml