Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
[BUGFIX][Server] GetFeaturInfo: do not identify raster data if point …
…not contains
Manual forwardporting with enhancement for raster data values displayed
- Loading branch information
Showing
with
15 additions
and
11 deletions.
-
+15
−11
src/server/services/wms/qgswmsrenderer.cpp
|
@@ -1319,23 +1319,27 @@ namespace QgsWms |
|
|
} |
|
|
else |
|
|
{ |
|
|
QgsRasterLayer *rasterLayer = qobject_cast<QgsRasterLayer *>( layer ); |
|
|
if ( !rasterLayer ) |
|
|
{ |
|
|
break; |
|
|
} |
|
|
if ( !infoPoint ) |
|
|
{ |
|
|
break; |
|
|
} |
|
|
QgsPointXY layerInfoPoint = mapSettings.mapToLayerCoordinates( layer, *( infoPoint.get() ) ); |
|
|
if ( !rasterLayer->extent().contains( layerInfoPoint ) ) |
|
|
{ |
|
|
break; |
|
|
} |
|
|
if ( infoFormat == QgsWmsParameters::Format::GML ) |
|
|
{ |
|
|
layerElement = result.createElement( QStringLiteral( "gml:featureMember" )/*wfs:FeatureMember*/ ); |
|
|
getFeatureInfoElement.appendChild( layerElement ); |
|
|
} |
|
|
|
|
|
QgsRasterLayer *rasterLayer = qobject_cast<QgsRasterLayer *>( layer ); |
|
|
if ( rasterLayer ) |
|
|
{ |
|
|
if ( !infoPoint ) |
|
|
{ |
|
|
break; |
|
|
} |
|
|
QgsPointXY layerInfoPoint = mapSettings.mapToLayerCoordinates( layer, *( infoPoint.get() ) ); |
|
|
( void )featureInfoFromRasterLayer( rasterLayer, mapSettings, &layerInfoPoint, result, layerElement, version ); |
|
|
break; |
|
|
} |
|
|
( void )featureInfoFromRasterLayer( rasterLayer, mapSettings, &layerInfoPoint, result, layerElement, version ); |
|
|
} |
|
|
break; |
|
|
} |
|
|