草庐IT

openlayers-3

全部标签

javascript - 使用 OpenLayers 鼠标拖动 kml 要素

链接:http://www1.qhoach.com/当您拖动时,这张map会被平移...但是如果您拖动KML要素(带圆圈的图标),则什么也不会发生 最佳答案 首先,在您的应用程序中有四个级别的map,包括您在问题中用圆圈图标提到的矢量图层。0:"ĐườngSá"||--->OverlayTiles1:"VệTinh"||--->OverlayTiles2:"TMSOverlay"||--->Markers~Icons3:"KML"||--->Vector分析:从零开始到最后一个,只有矢量似乎是最后一个,其他的仍然是覆盖图block。

javascript - 如何在 OpenLayers 3 中删除监听器

我做了一个copy我在stackoverflow上的问题,因为在gis.stackexchange上,我所有的问题都没有引起任何注意——很多时候我无法在那里得到简单问题的答案。所以,我现在的问题是如何删除以这种方式定义的监听器:map.getViewport().addEventListener('click',function(e){console.log("clicked");}); 最佳答案 OL3会发出您可以使用的自己的事件类型,并且为了回答您最初的问题,提供了一种简单快捷的方法来注销它们。看这个例子:http://open

javascript - 在 Openlayers 中单击 map 外部时如何激活功能 + 弹出窗口?

我正在重新解析已经加载到map上的KML,类似于此处的示例:http://openlayers.org/dev/examples/sundials.html并将其变成一个可点击的列表,将map集中在点击的点上,并显示它的弹出窗口。这在Googlemap中确实很容易做到,但我找不到任何类似的Openlayers示例。有没有更简单的方法来做到这一点?我缺少什么内置的东西?HTML:JS:htmlRows="";for(varfeatinfeatures){//BuilddetailstablefeatId=features[feat].id;//determinethefeatureIDt

javascript - 无法第二次设置 WFS 过滤器

这是我的场景。页面加载并加载带有空矢量图层的map。所以它在那里,但没有任何功能。然后用户点击一个按钮,CQL过滤器根据CQL设置加载特征。我实现它的方法。我设置了一个空的矢量图层,没有loader或strategy。用户第一次单击的按钮调用“初始化”函数(=firstTimeOnly()),该函数:为向量层设置一个loader和一个strategy现在loader存在,调用另一个“过滤”函数(=changeFilter())重置加载程序的cql过滤器并加载功能现在“过滤”功能附加到按钮并被调用每次点击。“初始化”功能达到了目的并与按钮分离。这是我的代码Clickme//setglob

javascript - OpenLayers 和 GeoJSON,不在同一坐标上乘以标记

我的代码显示来自GeoJSON的标记,当我放大到缩放级别10时,它会加载GeoJSON文件,但我如何避免输出相同的标记?有没有办法检查特定位置是否已经存在标记?代码map.events.register("zoomend",null,function(){if(map.zoom==10){varbounds=map.getExtent();console.log(bounds);varne=newOpenLayers.LonLat(bounds.right,bounds.top).transform(map.getProjectionObject(),wgs84);varsw=newO

javascript - OpenLayers 3 获取列表中所有功能内容的范围

我想放大列表中包含的所有要素的范围。首先,我将我的功能放在一个列表中:selectedFeatures=[];vector2.getSource().forEachFeature(function(feature){varatt=feature.get("NOM");if(att==strUser){selectedFeatures.push(feature);}});其次,这是我的问题...我想放大列表“selectedFeatures”中所有特征的范围我试过这个,但总是返回一个无限的范围:varvectorSource=newol.source.Vector({projection

javascript - 将散列模式应用于 openlayers 中的多边形

我正在使用Openlayers创建一个由来自KML文件的多边形组成的矢量图层,我需要对多边形应用“散列”模式(对Angular线条纹)。我知道Openlayers本身不支持将背景图像添加到矢量图层中的多边形,但我想知道是否有人对如何实现这一点有任何想法?矢量多边形的样式似乎仅限于纯色和不透明度。如果需要,我将通过在多边形边界内手动绘制散列线来扩展OpenLayers以添加此功能,但我希望在我走这条路之前有人能提供更简单的建议。 最佳答案 现在可以使用SLD完成此操作。不确定它是在2.11版还是主干开发中,但我看到了additionw

javascript - 如何获取 GeoJSON 矢量源的范围?

我有这个GeoJSON文件(polygon.geojson)...{"type":"Feature","geometry":{"type":"Polygon","coordinates":[[[73,15],[83.0,15],[83,5],[73,5],[73,15]]]},"properties":{"name":"Foo"}}...并将其用作矢量源:varvectorSource=newol.source.Vector({url:'polygon.geojson',format:newol.format.GeoJSON(),projection:'EPSG:4326',});现在

javascript - 开放层 3 : how to set fill style of a vector feature

我正在尝试设置矢量图层的单独特征的填充颜色。使用下面的代码,我认为我可以遍历这些功能并单独设置它们的填充样式,但是发生了一个奇怪的问题。如果没有setStyle函数,功能的各种属性将记录在控制台中。ID、名称和几何图形。大约有5个左右的功能被记录下来。基本喜欢room1room2room3room4room5每个数据下面都有额外的数据(id、geometry)但是当我添加设置特征填充的行时,我遇到了一个奇怪的问题。它似乎在第一个功能上挂起循环,并且控制台填满了该功能属性的日志,例如:room1room1room1room1room1room1room1很长一段时间,到了firefox日

javascript - 在 OpenLayers 3 中选择功能时是否有事件?

http://ol3js.org/en/master/examples/select-features.html鉴于上述示例,选择功能时有哪些扩展点可以Hook? 最佳答案 这是一个可能比Danny的更直观的解决方案,而且似乎也是“官方”方式,请参见thisissueonol3'sGitHub.只需将监听器添加到所选功能的集合中即可:mySelectInteraction.getFeatures().on('change:length',function(e){if(e.target.getArray().length===0){a