问题标签 [getfeatureinfo]

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 投票
0 回答
254 浏览

popup - 加载 map.addPopups 后 html 布局更改

我正在使用该WMSGetFeatureInfo控件从地理服务器检索要素属性并在弹出窗口中显示。

我已经在本地主机上设置了代理主机,并且弹出窗口现在工作正常。我正在使用eventListeners.

在它执行最后一行之后,map.addPopup(popup)html 文件的布局会发生变化,如附图所示。

代码如下:

添加弹出窗口之前:
https://flic.kr/p/nACiDZ

添加弹窗后:
https://flic.kr/p/nACqxC

0 投票
0 回答
487 浏览

popup - 如何更改光标以通过 wms getfeatureinfo 获取弹出窗口?

我正在使用 Openlayers 构建一个在线地图应用程序,它通过单击功能启用弹出信息。该信息由 wms getfeatureinfo 带来。

我想知道是否有一种简单的方法可以在鼠标悬停在可选功能上时将鼠标光标更改为手。这是为了帮助用户识别这些功能是可点击的并且可以检索信息。

附件是我当前的代码。谢谢!

0 投票
1 回答
393 浏览

raster - GeoServer: extract raster data of a time period

is there a way to use WMS->GetFeatureInfo specifying a TIME period (eg: 2014-01-01/2014-03-01) to extract a series of values from a raster layer loaded from a GeoServer instance?

Thanks in advance

0 投票
1 回答
100 浏览

javascript - 通过按钮取消/激活 getfeature-request

我有一个带有多个 WMS 层的 Openlayers3 地图。我想添加一个按钮(对于每个可查询层),以便用户可以决定是否查询 wms 层。

到目前为止,这部分工作正常。

现在将 getfeature-request 与“用户界面”结合起来(这里只是一个复选框)

id="cursor10" 的复选框

并通过添加功能

目前 getfeature-function 一旦被激活就会继续工作。

我需要做什么,所以当复选框未选中时,getfeature 函数将停止工作?或者对另一种方法有什么想法?

0 投票
1 回答
1486 浏览

android - 手动生成 WMS GetFeatureInfo URL

我将用于wms getfeatureinfo获取没有任何库的图层的信息。事实上,我正在使用 Android 并且找不到任何可以为我做的事情,所以我必须从manually generated URL. 我已经看到 WMS 参考,并且可以找到从地理服务器请求的所需参数。这里是参考。

7547018.12374 -3645681.16486我尝试为位于ESPG 3857My layer name is中的位置的功能构建示例 url,Hazard:point_4326并将 bbox 和 height 和 width 设置为bbox=-2.002637639E7,-2.00489661E7,2.002637639E7,2.00489661E7&width=767&height=768,但它让no features were found我认为问题在于设置 bbox。这是我使用的网址

是工作的openlayer url

你能帮我找出我做错了什么吗?太感谢了。

0 投票
1 回答
108 浏览

javascript - 在 JavaScript 中读取对象的值

我想从我的图层中获取功能。因此,在我的图层上成功请求 GetFeatureInfo 后,我正在请求 WMSGetFeatureInfo 方法。返回的对象结构如下:

特征对象

我可以读取诸如 BEVDICHTE 之类的值var bevdichte = features.BEVDICHTE等等。但是当我想用它获取 the_geom 的值时,var the_geom = features.the_geom它会返回一个对象。是的,它是嵌套的,所以这是有意的,但我的问题是如何从中获取ol.geom.MultiPointthe_geom

编辑:

不幸的是var target = features.the_geom['actualEventTarget_'];只会返回另一个'actualEventTarget_'对象。这是因为 the_geom 对象嵌套在无穷大中。我附上了另一个截图来描述我的问题。下面还有更多嵌套的 eventTargets。但是我无法获得属性 ol.geom.MultiPolygon。

实际事件目标

0 投票
1 回答
557 浏览

android - 用于 WMS getFeatureInfo 的 Android 计算权限 bbox

我正在尝试向我的地理服务器发出请求,以检索地图上用户点击附近的功能。

图片

地图占据了所有空间。因此我以这种方式计算了 BBOX:

宽度和高度取如下:

而 X 和 Y 参数按以下方式计算:

其中 latLng 是来自 onMapClick(LatLng) 事件的点(此处参考:https ://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnMapClickListener )。

我获得的结果 URL 是:

问题是服务器总是返回一个空响应,即使我知道那里有特征,因为我可以看到地图上的点。会是什么呢?

提前致谢。

0 投票
1 回答
1727 浏览

android - Google Map Tile Provider(GeoServer 和 WMS)

WMS Webservice GeoServer WMS

我尝试在谷歌地图中使用缩放级别获取所选纬度和经度的平铺信息(I、J、BBOX)。

我用这个公式得到 I, J , BBOX Formula Source

基于缩放级别的问题我无法找到确切的值..基于正确的值我有调用 WMS webservices

提前致谢...

http://192.168.1.102:1005/geoserver/estater/wms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetFeatureInfo&FORMAT=image%2Fpng&TRANSPARENT=true&QUERY_LAYERS=buildings&LAYERS=kwt_buildings&INFO_FORMAT=application%2Fjson&propertyName=grid_id%2Cbuild_id&I=925&JHEIG=116 256&CRS=EPSG%3A3857&STYLES=&BBOX=5342031.032794397%2C3420709.8898182083%2C5343254.02524696%2C3421932.882270771

0 投票
2 回答
5213 浏览

javascript - 在 Openlayers 3 中查询多个图层中的多个特征

我一直在使用此处显示的示例(https://astuntechnology.github.io/osgis-ol3-leaflet/ol3/05-WMS-INFO.html)尝试从我设置的多个 TileWMS 图层的坐标处检索要素在我的应用程序中。

这个例子已经过调整,所以它现在使用 reqwest 库以 JSONP 格式返回数据,但现在我试图找出最好的方法来调整它以包含多个层和多个特性。

我正在考虑使用 map.forEachLayerAtPixel 函数来检索地图单击位置处存在的所有图层,然后在 if 语句中调用该功能并将其添加到变量中以构建动态 html 结果表。

我不知道这是否是最好的方法,但这是我能想到的唯一方法,因此我能够以一种我可以具体列出的方式检索信息。

下面是我的地图点击功能的 javascript,但它没有返回弹出窗口,也没有显示任何错误。

我不确定我是否使用了正确的方法,下面有什么看起来不正确的吗?

谢谢

0 投票
1 回答
6154 浏览

javascript - openlayers 3 wms getfeatureinfo 弹出窗口

我想将带有 WMS 图层的 OSM 地图添加到我的网页中,其中包含有关图层的一些信息。对我来说最好的方法是使用 getFeatureInfoUrl 请求创建弹出窗口,但不幸的是我没有这样做的经验。我已经尝试了很多代码和教程,但它不起作用。

我写了这样的东西:

您能帮我修改代码以使其正常工作吗?我正在使用 OpenLayers3。

问候,卡罗琳娜