Questions tagged «openlayers»

当您使用的OpenLayers JavaScript客户端工具版本为3或更高版本时使用


1
如何在OpenLayers v3中获取功能位置
使用绘图交互或修改交互后,我有一个侦听器,该侦听器返回已修改或添加的功能。 例 draw.on('drawend', function (event) { // get the feature var feature = event.element; // ...listen for changes on it logStatus(feature.getId()); }); 我知道如何获取ID,但是我需要功能的位置(经纬度),因为我需要将其保存到数据库中,该怎么办?我在API中找不到它。

1
OpenLayers通过外部复选框隐藏/显示图层
我正在将OpenLayers与mapserver一起使用,以显示很多栅格图像和可查询的wms图层。一切正常,可以在OpenLayers图层切换器中打开/关闭图层...但是现在我想通过外部复选框打开/关闭图层,我不知道该怎么做。 我对Java有点陌生-我唯一知道的是我必须将复选框层的值传递给OpenLayers函数。到现在为止,我尝试使用onClick事件调用函数 <input type="checkbox" name="ckeckbox_layer1" onClick="layervisibility(this.checked);"> 但是我不知道函数“ layervisibility”的外观如何,以便当我选中/取消选中复选框时,实际上放置在openlayers init()函数中的图层可以正确打开/关闭。
11 openlayers 

1
OpenLayers 3-基于坐标绘制多条线/路径
我试图根据给定坐标(起点和终点)绘制一条线。 Googled,发现了很少的示例,但似乎都不起作用,可能是因为它们适用于OL2,所以这是我的最后选择。 坐标位于标记数组中 <!doctype html> <html lang="en"> <head> <link rel="stylesheet" href="css/ol.css" type="text/css"> <style> .map { height: 100%; width: 100%; } </style> <script src="build/ol.js" type="text/javascript"></script> </head> <body> <div id="map" class="map"></div> <script type="text/javascript"> // inicijalizacija mape var map = new ol.Map({ target: 'map', layers: [ new ol.layer.Tile({ source: new ol.source.MapQuest({layer: 'osm'}) // …
10 openlayers 

2
在Openlayers中显示数千个多边形的最佳方法是什么?
我正在尝试创建一个Openlayers地图,该地图将显示数千个多边形。当用户单击每个元素时,我希望显示一些元数据。处理如此庞大的数据集似乎是一项挑战。但是我试图找出是否有标准的方法可以解决此问题。在这一点上,我认为我应该 使用WMS显示我的多边形并使用getfeatureinfo 使用WFS进行显示,使用Strategy.BBOX进行加载,并使用GetFeature来获取meatadata。 有没有一种我不希望将所有这些数据加载到地图中并具有良好速度的逻辑方法。我正在查看此页面并试图弄清楚他们做了什么:http : //protectedplanet.net/

2
如何在openlayers 3中创建圆形多边形?
所以我真的很想修改这个例子:http : //openlayers.org/en/v3.0.0/examples/tissot.html?q=circle 问题是,当我尝试将其应用于地图时,它不起作用,可能是因为我使用了非球形的OSM样式: var map = new ol.Map({ layers: [ new ol.layer.Tile({ source: new ol.source.OSM() }), new ol.layer.Vector({ source: vectorSource }) ], renderer: 'canvas', target: 'map', view: new ol.View({ center: ol.proj.transform([2.1833, 41.3833], 'EPSG:4326', 'EPSG:3857'), zoom: 2 }) }); 还有一个问题:如何创建圆形多边形?如我所见,有两种选择: 根据我的菜鸟级别,以某种方式转换geom.Circle到geom.Polygon中,这是我做不到的 创建我自己的函数来执行此操作,例如openlayers 2: OpenLayers.Geometry.Polygon.createRegularPolygon = function(原点,半径,边,旋转){ var angle = Math.PI …

1
OpenLayers与3.x的4个差异[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 2年前关闭。 在OpenLayers 4 changelogs中,它说明: 与从v2.x切换到v3.x(使用完全新的API标记完全重写该库)不同,主要版本增量现在仅意味着用户应注意升级说明的“重大更改”部分。 但是“ 语义版本控制 ”说: 进行不兼容的API更改时,主要版本会增加 所以,我不明白:如果未更改OL API,为什么将OL主版本增加到4?有人可以更好地解释吗?

3
将GeoJSON图层添加到OpenLayers 3
我有一个名为mygeojson.json的GeoJSON文件,我想将其添加为openstreetmap图层顶部的OpenLayers 3中的图层。到目前为止,我可以显示openstreetmap世界,包括缩放等。但是由于某种原因,我无法在其上获取mygeojson.json。 geojson包含许多多边形,如下所示: { "type": "FeatureCollection", "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } }, "features": [ { "type": "Feature", "properties": { "DN": 2 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 13.559093915055664, 52.545214330050563 ], [ 13.559633429050496, 52.545205649772548 ], [ 13.559633415380715, 52.545214636296755 ], [ 13.559093915055664, 52.545214330050563 ] ] …

3
设置OpenLayers 3层可见性
我正在尝试将我的Openlayers 2.12映射升级到Openlayers 3,以利用透明层上奇妙的过渡效果(有些OL2和Leaflet无法吸引人)。当OL3正式发布时,我也不想落后于升级我的网站。在当前站点(OL2.12)中,我使用简单HTML菜单中的复选框来切换图层可见性。我将每个图层推到一个数组(我希望我认为OL3现在会自动为称为“图层”的图层生成一个数组),并且每个复选框都调用此函数(为复选框提供了代表其图层数组编号的值): function layerswitch(evt){ layers[evt.value].setVisibility(evt.checked); } 在OL3中,这不再起作用,并且我找不到任何详细说明如何设置图层可见性的示例或文档。

3
如何使用OpenLayers获取GeoServer中商店中所有图层的名称
我严格要求使用OpenLayers检索GeoServer存储中所有图层的名称。我在这里浏览了这篇文章,但是没有回答我的问题。我还介绍了GeoServer的REST API,如果我使用的是另一种语言,例如C#,Java或PHP,这将是理想的选择。但是我想完全用JavaScript做到这一点。 更新: 从WFS GetCapabilities文档中可以看到,我可以通过使用过滤器发送WFS GetCapabilities请求来检索所有层的名称。但是我不确定是否可以在GetCapabilities请求中包含过滤器。我也不知道这样的过滤器会是什么样子。 对于如何实现此目标的任何建议将不胜感激。任何替代方法也将被理解。 更新: 我相信我在这里找到了解决方案;“可以将WFS GetCapabilities请求过滤为仅返回与特定名称空间相对应的图层。为此,请将以下代码添加到您的请求中:namespace = <namespace>”。我希望这对其他人有帮助。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.