首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角- openLayers :放大几何学

角- openLayers :放大几何学
EN

Stack Overflow用户
提问于 2016-11-17 10:54:26
回答 1查看 387关注 0票数 1

我正在为我的项目使用Open层指令。我能在地图上画一个几何图形,现在我想放大它。

我看到了这个示例,这正是我想要做的(最合适的部分)。但我不知道如何用角指令来做。

以下是我在组件控制器中的一层:

代码语言:javascript
复制
            _this.perimeterLayer = {
            source: {
                type: 'GeoJSON',
                geojson: {
                    object: {
                        type: 'Feature',
                        geometry: {
                            type: 'Polygon',
                            coordinates: transformedCoords
                        }
                    }
                }

            },
            style: new ol.style.Style({
                stroke: new ol.style.Stroke({
                    color: 'blue',
                    width: 3
                }),
                fill: new ol.style.Fill({
                    color: 'rgba(0, 0, 255, 0.1)'
                })
            })
        };

以及在我看来我是如何使用它的:

代码语言:javascript
复制
  <ol-layer ol-layer-properties="$ctrl.perimeterLayer"></ol-layer>

你能帮帮我吗?

经常这样!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-17 14:44:08

好的,我找到了一个解决办法,我把它扔在这里,也许它能帮上忙!

其目的是从地图中获取您的层,然后解析数据,直到得到几何图形为止。

这是我做的函数(有点原始,但正在工作)

代码语言:javascript
复制
        function perimeterFocus() {
        var geometry;
        olData.getMap().then(function (map) {
            map.getLayers().forEach(function (lyr) {
                if (lyr.get('name') == 'perimterLayer') {
                    var features = lyr.getSource().getFeatures();
                    geometry = features[0].getGeometry();
                    map.getView().fit(geometry, map.getSize());
                }
            });
        });
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40653013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档