【问题标题】:OpenLayers 3 draw path with coordinatesOpenLayers 3用坐标绘制路径
【发布时间】:2018-03-20 17:52:48
【问题描述】:

我正在尝试使用 Openlayers 3 的地理定位服务来映射用户的移动并根据距离收集坐标,然后提供将显示在地图上的测量值或多边形形状。

我进行了大量研究,但没有发现任何可以真正让我开始实现最终目标的东西。这对 OpenLayers 3 可行吗?是否有一些已经内置的东西我可以使用,或者我必须使用 OpenLayers 3 组件从头开始构建它。

我目前的代码只是通过浏览器打开 OpenLayers 定位服务并跟踪位置。

   new ol.Geolocation({
                projection: mapObj.getView().getProjection(),
                tracking: true,
                trackingOptions: {
                    enableHighAccuracy: true
                }
            })
                .on('change', function () {
                    geoLocationPosition = this.getPosition();
                    geoLocationHeading = this.getHeading() || 0;


             mapObj.getView().setCenter(geoLocationPosition);
                    var trackerStyle = new ol.style.Style({
                        stroke: new ol.style.Stroke({
                            color: '#383838',
                            width: 1
                        }),
                        fill: new ol.style.Fill({
                            color: '#319FD3'
                        })
                    });
                    geoLocationCircle.setStyle(trackerStyle);
                    geoLocationCircle.setGeometry(
                        new ol.geom.Circle(geoLocationPosition, 5)
                    );


                })



            };

感谢任何帮助引导我朝着正确方向前进!

【问题讨论】:

    标签: openlayers openlayers-3 angular-openlayers


    【解决方案1】:

    您可以查看ol-ext 交互 GeolocationDraw,它结合了地理定位和绘图交互来跟踪位置。 https://viglino.github.io/ol-ext/examples/mobile/map.interaction.geolocationdraw.html

    这里是文档:http://viglino.github.io/ol-ext/doc/doc-pages/ol.interaction.GeolocationDraw.html

    【讨论】:

    • 谢谢!!超级酷的库……它似乎是“全有或全无”……所以我可能会得到 5 个我将使用的工具和 20 个我不会使用的工具。您是否注意到加载它是否会产生开销以减慢应用程序的速度?
    • 您可以将该库用作 ES2015 模块,但如果您想将其用作网页中的库,则必须编辑 gulpfile.js 以包含您想要的内容(修改 src在 js 或 extrajs 任务中)。无论如何,.min.js 只是 252ko。
    • lib 不再是“全有或全无”:我已将新版本的 openlayers-ext 包发布到 npm,以便在浏览器中使用 ol-ext (npmjs.com/package/openlayers-ext)。它包括一个 ./lib 目录,其中包含单个 js 文件,因此您可以选择一个包含在您的项目中的巫婆。您也可以使用gulp lib 命令创建库。
    • 太棒了!非常感谢!!
    • 我已将 lib 作为 zip 文件添加到 github 版本 github.com/Viglino/ol-ext/releases/tag/v2.0.1 中:)
    猜你喜欢
    • 1970-01-01
    • 2021-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-01
    相关资源
    最近更新 更多