问题标签 [marble]

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.

0 投票
2 回答
1280 浏览

rxjs - 如何测试使用 rxjs 弹珠发出分组事件的可观察对象?

根据rxjs marbles 文档,同步分组的当前行为如下:

从文档:

虽然一开始可能不直观,但在所有值同步发出后,时间将前进的帧数等于组中 ASCII 字符的数量,包括括号

好的,但是我如何测试这样的可观察对象(使用弹珠或任何其他技术):

有什么解决方法吗?

Stack Overflow 上有一个类似的问题,但没有关于“如何实际解决它并测试这种可观察的”的答案。

谢谢!

0 投票
0 回答
84 浏览

c++ - MarbleAbstractPresenter 在 Qt 中覆盖 Marble InputHandler

MarbleAbstractPresenter 类存在于 api ( https://api.kde.org/4.x-api/kdeedu-apidocs/marble/html/classMarble_1_1MarbleAbstractPresenter.html ) 以及当前源代码 ( https://github .com/KDE/marble/blob/master/src/lib/marble/MarbleAbstractPresenter.h),但不能添加到 Qt 项目中。

MarbleAbstractPresenter 文件不像大多数其他 .h 文件一样位于 /export/include/marble/ 目录中。有没有办法添加这个文件以便 Qt 可以读取它,或者有没有不同的方法来创建一个 MarbleAbstractPresenter 以便可以运行这样的命令?

0 投票
1 回答
1162 浏览

hyperledger-fabric - 从未调用过 node-pre-gyp 错误完成回调

我在安装 IBM 的区块链演示弹珠时遇到了这个错误。在此处输入图像描述

这似乎是grpc的一个错误,但我找不到解决它的d解决方案。

0 投票
1 回答
869 浏览

rxjs - 大理石图生成器 java/javascript 用于使用 rxjava/rxjs 或反应器的文档

我正在寻找为使用反应器库创建的项目创建文档。

我搜索但没有找到任何有用的工具在运行一段反应器(或一般的 rx)代码后生成照片图。我发现的唯一东西是这样的基于文本的语法。如果我没有找到其他任何东西,我想这是一个解决方案。

发现使用此语法的库

理想情况下,我想运行一段代码,例如。

并生成基于照片或文本的大理石图。作为上面提到的基于文本的语法的解决方案,我可以创建基于这种语法的文本生成器,但这需要大量的努力和时间。

有什么方法可以使用 rxjava、rxjs 或优选的反应器库从代码片段中生成带有大理石图的图像?(我包括 rx 是因为反应器更受欢迎)

有没有从代码片段生成上述基于文本的语法的库?

对于这些库的文档,我还有哪些其他选择?

也是一个类似的问题,但不完全是我要找的

0 投票
2 回答
312 浏览

c++ - GPS 将米转换为位移度

我需要在地图上绘制一个地理投影圆。例如,我希望根据纬度和经度来定义中心,并以米为单位定义其半径。我正在使用KDE Marble. 在 API 中有一个函数drawEllipse,它将中心作为(纬度,经度)以及椭圆的宽度和高度。

对于地理投影椭圆,宽度和高度被认为是度数。但是我需要它们以米为单位。度和米之间没有简单的转换,因为它取决于地球中心的位置。

我需要将圆的半径(以米为单位)转换为从地球中心指向中心的向量的一对位移度。

我也在使用 boost geometry 来做其他的几何计算。是否有任何功能boost-geometry可以执行此转换?

更新我

我首先尝试有两个 GeoDataCoordinates 一个是中心,另一个是外围。我预计他们的纬度和经度之间的差异将适用于该drawEllipse功能。

然而,它产生的椭圆比我预期的要小。应该在圆周上的边界点超出了椭圆。 在此处输入图像描述

更新二

然后我尝试使用维基百科上的中心角公式

在此处输入图像描述

结果与上一个没有太大区别。然而,这一次椭圆比前一个略大。

更新三

圆弧与球体大圆周长之间的距离比用于计算@ttemple 答案中的角位移

产生一个正确的椭圆。

在此处输入图像描述

2.0因此,我将角度与UPDATE II代码相乘,这也产生了类似的(如UPDATE III)结果。

更新四

但问题drawEllipse在于它实际上在缩小状态下绘制了一个点少得多的多边形。有时它看起来像一个正方形。

在此处输入图像描述

因此,在椭圆圆周上绘制更多点是一个更好的选择,这样围栏在缩小视图中也看起来像一个圆圈。评论中发布的KDE 论坛链接也是如此。

然而,它绘制了一个半径比输入大得多的圆。我认为那里发布的片段不完整。我在代码中忽略了一些未使用的条件块。代码还特别在注释中提到围栏的半径必须以公里为单位。我这样做了。我也不明白这背后的数学。它不会在片段中的任何地方使用地球半径。可能对这个代码稍加修正会产生一个更好的椭圆。数学看起来像一些产生一半椭圆的参数曲线。但是没有提到方程。

在此处输入图像描述

这也仅适用于 lat 和 lon 均为正的第一象限

0 投票
1 回答
161 浏览

c++ - 使用 Marble 自定义地图叠加层

在遵循教程的同时,我正在尝试在Marble中创建自定义叠加层。我的代码与示例中的代码相同。

一切似乎都很好,但是生成的图层是可编辑的,我可以单击它并更改其大小。

我希望它在背景上只是静态的,无法与之交互。

似乎没有任何明显的标志要设置或功能要覆盖(这样我就可以忽略所有用户事件)。

有任何想法吗?


要求的代码:

0 投票
1 回答
144 浏览

qt - 同时处理多个 Qtcp 连接以显示在大理石小部件上

我有一个带有 qt creator 的应用程序,它可以获取地理坐标数据并将其显示在地图上。它只需要一个连接就可以正常工作,但是当涉及到不止一次连接时,它就成了一个谜。我想从具有不同地址和端口的几个 qtcp 连接中循环获取数据,然后将数据放在单独的列表中,并在读取每个连接地理数据的列表后,在不同线程中的地图上添加单独的层,每 3 秒更新一次,而所有这些层从网络数据包中同时获取数据。假设我有许多不同的 gps 接收器来收集他们的位置数据,我想将其整合到地图上。这是我的代码示例:

1.定义qtcp客户端应该连接的服务器列表:

全局变量.cpp

2.主窗口启动地图:

主文件

3.declare 类,用于根据地图上接收到的数据添加或更新新图层:

油漆层.cpp

5.定义一个接收数据格式的类:

客户端.h

6.declare 建立新的 qtcp 连接和接收数据的类:

客户端.cpp

从发送方接收到的数据格式是移动物体的位置,如下所示:

什么是最佳实践解决方案?因为它在地图上什么也没有显示。当我使用硬代码时,它显示了相当于每个连接的层,但读取数据流是有挑战性的。任何线索将不胜感激。

0 投票
0 回答
191 浏览

qt - 支持 Qt5 的 MarbleWidget - 示例代码不再正确退出

我正在编写一个航海导航应用程序。我是 Qt5 和 Marble 的新手,但这运行得很好,直到我遇到了这个问题。

它使用 MarbleWidget 作为显示应用程序输出的一种方式,与 Marble 提供的示例应用程序非常相似。

当我在最近的版本(opensuse)5.14.0 中将此移植到 Qt5 时,它停止正常工作 - 通过单击标题栏右上角的 x 按钮将不再退出应用程序。

Marble 提供的示例代码也展示了这种行为。

这是示例应用程序:

我的 Makefile 是:

我尝试了一些变通方法,但似乎没有任何方法可以解决这个问题。

我已经在一个大理石论坛上发布了这个问题,但是已经有几个月没有看过了。

任何前进的想法都会有所帮助。

0 投票
2 回答
2257 浏览

angular - 测试失败动作 - 大理石 - ngrx 效果

我在测试对我的效果的失败操作时遇到问题。

在这里给出一些上下文 loadProducts 效果是在调用Load操作时执行的。在 effect 内部执行 HTTP 请求,如果此请求成功执行,则调用LoadSuccess操作,否则调用 LoadFail。代码如下

为了测试这种效果,我使用了与 jasmine-marbles 几乎相同的 jest-marbles,无论如何,我将 Load 操作创建为一个热的 observable,我的 http 响应作为一个冷的和默认的预期结果。

当我运行测试时会抛出一个错误,指出我的 loadProducts 可观察且预期结果不匹配。

我知道错误是什么,但我不知道如何解决它。我知道弹珠测试世界

0 投票
0 回答
43 浏览

c++ - Marble:已加载 kml 文件,但仅显示一些地图

我想在大理石地图上显示 .kml 文件。它加载了 kml,但它们仅与一些地图主题一起显示。

我的代码是:

例如,“behaim1492”地图显示,“普通”地图不显示。我哪里错了?有什么提示吗?