Use forEachLayerAtPx in example
This commit is contained in:
@@ -35,9 +35,11 @@
|
|||||||
<h4 id="title">GetFeatureInfo example (image layer)</h4>
|
<h4 id="title">GetFeatureInfo example (image layer)</h4>
|
||||||
<p id="shortdesc">This example shows how to trigger WMS GetFeatureInfo requests on click for a WMS image layer.</p>
|
<p id="shortdesc">This example shows how to trigger WMS GetFeatureInfo requests on click for a WMS image layer.</p>
|
||||||
<div id="docs">
|
<div id="docs">
|
||||||
|
<p>Additionally <code>map.forEachLayerAtPixel</code> is used to change the mouse
|
||||||
|
pointer when hovering a non-transparent pixel on the map.</p>
|
||||||
<p>See the <a href="getfeatureinfo-image.js" target="_blank">getfeatureinfo-image.js source</a> to see how this is done.</p>
|
<p>See the <a href="getfeatureinfo-image.js" target="_blank">getfeatureinfo-image.js source</a> to see how this is done.</p>
|
||||||
</div>
|
</div>
|
||||||
<div id="tags">getfeatureinfo</div>
|
<div id="tags">getfeatureinfo, forEachLayerAtPixel</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="span4 offset4">
|
<div class="span4 offset4">
|
||||||
<div id="info" class="alert alert-success">
|
<div id="info" class="alert alert-success">
|
||||||
|
|||||||
@@ -7,7 +7,8 @@ goog.require('ol.source.ImageWMS');
|
|||||||
var wmsSource = new ol.source.ImageWMS({
|
var wmsSource = new ol.source.ImageWMS({
|
||||||
url: 'http://demo.boundlessgeo.com/geoserver/wms',
|
url: 'http://demo.boundlessgeo.com/geoserver/wms',
|
||||||
params: {'LAYERS': 'ne:ne'},
|
params: {'LAYERS': 'ne:ne'},
|
||||||
serverType: 'geoserver'
|
serverType: 'geoserver',
|
||||||
|
crossOrigin: ''
|
||||||
});
|
});
|
||||||
|
|
||||||
var wmsLayer = new ol.layer.Image({
|
var wmsLayer = new ol.layer.Image({
|
||||||
@@ -20,6 +21,7 @@ var view = new ol.View({
|
|||||||
});
|
});
|
||||||
|
|
||||||
var map = new ol.Map({
|
var map = new ol.Map({
|
||||||
|
renderer: exampleNS.getRendererFromQueryString(),
|
||||||
layers: [wmsLayer],
|
layers: [wmsLayer],
|
||||||
target: 'map',
|
target: 'map',
|
||||||
view: view
|
view: view
|
||||||
@@ -36,3 +38,11 @@ map.on('singleclick', function(evt) {
|
|||||||
'<iframe seamless src="' + url + '"></iframe>';
|
'<iframe seamless src="' + url + '"></iframe>';
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$(map.getViewport()).on('mousemove', function(evt) {
|
||||||
|
var pixel = map.getEventPixel(evt.originalEvent);
|
||||||
|
var hit = map.forEachLayerAtPixel(pixel, function(layer) {
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
map.getTargetElement().style.cursor = hit ? 'pointer' : '';
|
||||||
|
});
|
||||||
|
|||||||
@@ -35,9 +35,11 @@
|
|||||||
<h4 id="title">WMS GetFeatureInfo example (tile layer)</h4>
|
<h4 id="title">WMS GetFeatureInfo example (tile layer)</h4>
|
||||||
<p id="shortdesc">This example shows how to trigger WMS GetFeatureInfo requests on click for a WMS tile layer.</p>
|
<p id="shortdesc">This example shows how to trigger WMS GetFeatureInfo requests on click for a WMS tile layer.</p>
|
||||||
<div id="docs">
|
<div id="docs">
|
||||||
|
<p>Additionally <code>map.forEachLayerAtPixel</code> is used to change the mouse
|
||||||
|
pointer when hovering a non-transparent pixel on the map.</p>
|
||||||
<p>See the <a href="getfeatureinfo-tile.js" target="_blank">getfeatureinfo-tile.js source</a> to see how this is done.</p>
|
<p>See the <a href="getfeatureinfo-tile.js" target="_blank">getfeatureinfo-tile.js source</a> to see how this is done.</p>
|
||||||
</div>
|
</div>
|
||||||
<div id="tags">getfeatureinfo</div>
|
<div id="tags">getfeatureinfo, forEachLayerAtPixel</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="span4 offset4">
|
<div class="span4 offset4">
|
||||||
<div id="info" class="alert alert-success">
|
<div id="info" class="alert alert-success">
|
||||||
|
|||||||
@@ -7,7 +7,8 @@ goog.require('ol.source.TileWMS');
|
|||||||
var wmsSource = new ol.source.TileWMS({
|
var wmsSource = new ol.source.TileWMS({
|
||||||
url: 'http://demo.boundlessgeo.com/geoserver/wms',
|
url: 'http://demo.boundlessgeo.com/geoserver/wms',
|
||||||
params: {'LAYERS': 'ne:ne'},
|
params: {'LAYERS': 'ne:ne'},
|
||||||
serverType: 'geoserver'
|
serverType: 'geoserver',
|
||||||
|
crossOrigin: ''
|
||||||
});
|
});
|
||||||
|
|
||||||
var wmsLayer = new ol.layer.Tile({
|
var wmsLayer = new ol.layer.Tile({
|
||||||
@@ -20,6 +21,7 @@ var view = new ol.View({
|
|||||||
});
|
});
|
||||||
|
|
||||||
var map = new ol.Map({
|
var map = new ol.Map({
|
||||||
|
renderer: exampleNS.getRendererFromQueryString(),
|
||||||
layers: [wmsLayer],
|
layers: [wmsLayer],
|
||||||
target: 'map',
|
target: 'map',
|
||||||
view: view
|
view: view
|
||||||
@@ -36,3 +38,11 @@ map.on('singleclick', function(evt) {
|
|||||||
'<iframe seamless src="' + url + '"></iframe>';
|
'<iframe seamless src="' + url + '"></iframe>';
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$(map.getViewport()).on('mousemove', function(evt) {
|
||||||
|
var pixel = map.getEventPixel(evt.originalEvent);
|
||||||
|
var hit = map.forEachLayerAtPixel(pixel, function(layer) {
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
map.getTargetElement().style.cursor = hit ? 'pointer' : '';
|
||||||
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user