嗨 stackoverflow 社区 - 我在这里问了几件事,所以我将首先尝试详细概述我的项目:
我正在为我的打浆机吉普车(TJ,如果你必须知道的话)制作一个触摸屏,它运行在树莓派 3 A+ 上。我正在通过 GPIO 和一堆杂项小工具(如 GPS)集成 AC 控件,现在我正在尝试解决项目中最困难的部分,即下载我所在地区的 openstreetmap 图块,并使用GPS 上所说的瓷砖全部离线。非常感谢 Kivy 的开发人员,我非常喜欢用它制作 GUI,而且学习 openstreetmap 社区也非常酷。
我正在寻求一些关于如何在我的 kivy 应用程序中显示地图的方向或想法,因为有很多事情我不知道/不完全理解它们是如何工作的。
- 我应该使用哪些 Kivy 模块来显示图块?
- 我可以在 kivy 模块中嵌入 Javascript API 吗?
- 我必须使用 javascript,还是可以用 python 以另一种方式攻击?(这看起来像一个竞争者)
- 我应该学习什么编码语言来补充我的 python/julia/arduino-ish 技能来帮助实现这一点?
- 我可以让我的树莓派假装它是我的 kivy 应用程序的 openstreetmap 服务器来 ping 平铺请求吗?
任何方向都值得赞赏,这是一个雄心勃勃的项目,但这就是让它变得有趣的原因。同样,如果你曾在 kivy 上工作过或为 openstreetmaps 做出过贡献,请给你点赞。
-费尔南多
编辑
在阅读了一些 CEFPython3 文档之后,我认为这可能是正确的方法。如果我了解它是如何工作的(请在此处纠正我),我可能会在 Kivy 的 CEF 浏览器小部件中运行 Leaflet.js,使用:
cef.ExecuteJavascript(jsCode="filepath/to/leaflet.js")
,
然后使用cef.executeFunction()
传递纬度和经度数据以及更新 javascript 地图对象的瓦片层?
*我引用的leaflet.js 代码在这里
*Cefpython 仓库在这里